WikiDer > Hit-тестирование
В программировании компьютерной графики, хит-тестирование (обнаружение попаданий, сбор, или выбрать корреляцию [1]) - это процесс определения того, пересекает ли управляемый пользователем курсор (например, курсор мыши или точка касания на интерфейсе сенсорного экрана) данный графический объект (например, фигура, линия или кривая), нарисованный на экране. Проверка попадания может выполняться при движении или активации мыши или другого указывающего устройства.
Hit-testing используется GUI среды для реагирования на действия пользователя, такие как выбор пункта меню или цели в игре на основе ее визуального местоположения. В языках веб-программирования, таких как HTML, SVG, и CSS, это связано с концепцией событий указателя (например, инициируемое пользователем перемещение курсора или выбор объекта).
Обнаружение столкновений - это связанная концепция для обнаружения пересечений двух или более различных графических объектов, а не пересечения курсора с одним или несколькими графическими объектами.
Алгоритм
Существует множество различных алгоритмов, которые могут использоваться для выполнения проверки попадания с разными результатами по производительности или точности. Один общий алгоритм проверки попадания представлен в псевдокоде ниже:
функция HitTest(Прямоугольник r1, Прямоугольник r2) возвращается логический{ вернуть ((r1.Икс + r1.Ширина >= r2.Икс) и (r1.Икс <= r2.Икс + r2.Ширина) и (r1.Y + r1.Рост >= r2.Y) и (r1.Y <= r2.Y + r2.Рост));}
Смотрите также
использованная литература
- ^ Компьютерная графика: принципы и практика 2-е издание на C, Фоли и др., Эддисон-Уэсли, 1997.