Исходное сообщение:
Я пытаюсь найти крайние вершины выпуклого многоугольника (относительно точки P вне многоугольника).Пока меня интересуют только прямоугольники (однако мне бы хотелось, чтобы алгоритм работал с любым выпуклым многоугольником).
Мой план состоит в том, чтобы построить линию извнешняя точка P до центральной точки C .Из этой справочной линии я построю линии от точки P до точек 1 , 2 , 3 и 4 .Поскольку точки 2 и 4 будут иметь самые большие (самые положительные) и самые маленькие (самые отрицательные) углы от базовой линии , они будут обозначены как крайние вершины .
Это лучший алгоритм для работы?Как один вычислить углы от опорного угла (желательно в Java)
Обновление для уточнения:
1040 *
1043 * Я нарисовал линии (
справочная линия в красном).Как видите, линия от
P до
2 создает наибольший угол с одной стороны от
линии отсчета , тогда как линия от
P до
4 создает наибольший угол другой стороны.Следовательно, это
крайние вершины .