Определить принадлежность точки многоугольнику
Существует ли готовая функция, определяющая, лежит ли точка внутри многоугольника, или же она находится снаружи. Или такой функции нет, и нужно написать свою, или может кто-то писал когда-то
Пускаешь из точки луч, считаешь количество пересечений со сторонами прямоугольника. Главное луч пустить аккуратно.
Цитата: Green
Ну алгоритм простой ;)
Пускаешь из точки луч, считаешь количество пересечений со сторонами прямоугольника. Главное луч пустить аккуратно.
Пускаешь из точки луч, считаешь количество пересечений со сторонами прямоугольника. Главное луч пустить аккуратно.
Лично мне больше нравится другой алгоритм;)
Проводим из точки во все вершины полигона векторы, и найдем сумму всех углов между последовательными парами векторов, считая от некоторого первого вектора (на последнем шаге, между n-ым и первым), с учетом направления угла поворота. Дальше смотрим сумму - если она 2P - то точка внутри, если 0 - то снаружи.