Я думаю, что это правильно для прямоугольников, но не для всех четырехугольников. Один из них вернет отрицание в четырехугольнике с непрямыми углами, если точка находится выше / ниже диагонали.
Я хочу определить, находится ли контрольная точка в определенном четырехугольнике. Я, вероятно, собираюсь реализовать решение в Matlab, поэтому мне нужен только псевдокод.
входные
Углы четырехугольника: (x1, y1) (x2, y2) (x3, y3) (x4, y4)
Контрольная точка: (xt, yt)
Выход
1 - если в четырехугольнике
0 - В противном случае
Обновить
Было отмечено, что идентификации вершин четырехугольника недостаточно для однозначной идентификации. Можно предположить, что порядок точек определяет стороны четырехугольника (точка 1 соединяет 2, 2 соединяется с 3, 3 соединяется с 4, 4 соединяется с 1)
Точки сами по себе не могут однозначно идентифицировать четырехугольник, если только нет дополнительного ограничения, что оно выпуклое или точки определены в заданном порядке. Существуют ли те или иные ограничения (если да, то какие)?