Определить точку столкновения двух объектов

1

У меня есть программа с Ellipse2D (это круг) и объект Polygon. Я решил использовать решение обнаружения столкновений по этому вопросу для обработки обнаружения столкновений.

Я хочу, чтобы объект круга оставался на вершине многоугольника.

Теперь я знаю, когда объект Ellipse2D пересекает многоугольник, но я хотел бы знать, где они пересекаются. В настоящее время я не знаю, как определить, насколько высокий объект круга должен двигаться, чтобы оставаться на вершине многоугольника.

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

Изображение 174551

Есть ли там инструмент или метод, о которых я не знаю, что возвращает точку столкновения, или это то, что мне придется разрабатывать самостоятельно?

Теги:
awt
collision-detection
applet
java-2d

1 ответ

0
Лучший ответ

Вычтите одну Area из другой. Bounds результирующей области будут представлять собой перекрытие между двумя объектами. Центр перекрывающихся Bounds будет, скорее всего, либо точкой столкновения, либо настолько близок, чтобы обмануть зрителя, если он так думает.

  • 0
    Я извиняюсь, я не осознавал, что не смог принять это.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню