КАК ПРОВЕРИТЬ ПРИНАДЛЕЖНОСТЬ ТОЧКИ ПОЛИГОНУ
Есть 2D пространство с обычной системой координат. В нем есть произвольный многоугольник с рандомным числом вершин расположение которых тоже рандомно , но известно.
Есть точка, положение которой тоже рандомно , но координаты тоже известны. КАК определить принадлежит она полигону или нет? Гуглил, нашел кучу способов, фракталы графики и.т.п. Есть ли в вашем арсенале способ попроще?:) ![]() ____________________________________________ А ТЕПЕРЬ ПРАВИЛЬНЫЙ ОТВЕТ!!!! НУЖНО ПРОВЕСТИ ИЗ ЭТОЙ ТОЧКИ ЛУЧ В ЛЮБОМ НАПРАВЛЕНИИ И ПОСЧИТАТЬ СКОЛЬКО ГРАНЕЙ ПЕРЕСЕЧЕТ ЭТОТ ЛУЧ, ЕСЛИ ЧЕТНОЕ ЧИСЛО, ЗНАЧИТ ТОЧКА ВНЕ ПОЛИГОНА, ЕСЛИ НЕЧЕТНОЕ, ЗНАЧИТ ТОЧКА ВНУТРИ ПОЛИГОНА. ЕСЛИ ПОПАДАЕТ НА ВЕРШИНУ, ТО СДЕЛАТЬ ОПЕРАЦИЮ ЗВАНОГО СМЕНИВ НАПРАВЛЕНИЕ ВЕКТОРА) |
Цитата:
(с) |
Цитата:
нет ну а если нам нужно все абстрактно сделать)? просто интересно)) |
Я давно с графикой не работал... Т.ч. в этом не советчик. Просто этот "способ" запомнил, вот собственно и всё.... :)
|
Цитата:
Цитата:
|
если есть возможность то для каждой составляющей полигона можно хранить нормаль ориентированную вовнутрь, затем искать ближайший к искомой точке отрезок и проверять с какой стороны от него находится точка
|
Часовой пояс GMT +3, время: 07:40. |