Обнаружение столкновений с многоугольниками странной формы - PullRequest
0 голосов
/ 08 марта 2011

Я планирую создать программу, которая будет иметь несколько круглых форм, движущихся внутри многоугольника странной формы.

Кажется, я не могу понять, как выполнить обнаружение столкновения с краями, чтобы формы возвращались правильно.

Я уверен, что эта проблема была решена раньше, но я не могу найти хороший пример.

Мои главные проблемы: выяснить, достиг ли круг края окружающего его многоугольника.Как только попадание происходит, вычислите нормаль точки попадания, чтобы выяснить вектор отражения.

Кто-нибудь может указать мне правильное направление?

Спасибо, Джейсон

1 Ответ

1 голос
/ 08 марта 2011

Вам необходимо выполнить тест пересечения окружности .

Чтобы сделать это быстрее, вы можете сначала установить флажки. Например, если начальная и конечная точки линии находятся слева от крайней левой координаты круга, пересечение не может быть.

...