Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Andrey Tarasevich                    2:5020/400     26 Apr 2002  02:09:32
 To : Alexey Kurbatov
 Subject : Re: Писал yже кто-то, но пpопyстил
 -------------------------------------------------------------------------------- 
 
 Alexey Kurbatov wrote:
 
 > ...
 > Пpинадлежит ли точка замкнyтомy многоyгольникy?
 > Оный тоже задан по вектоpам и обязательно замкнyт.
 > ...
 
 * Первый способ: 
 
 Рассматриваем воображаемый горизональный луч L, выходящий из нашей точки
 и уходяший в бесконечность вправо. Просматриваем все ребра
 многоугольника, одно из другим, и ищем точки пересечения каждого ребра с
 лучом L. (Горизонтальные ребра - игнорируем. Для многих ребер будет
 очевидно, что они не перескают луч L, даже без явного вычисления точки
 пересечения.) Если луч L проходит через концевую точку ребра, то такое
 пересечение засчитывается только в том случае, если вторая точка этого
 ребра лежит ниже луча L. 
 
 Если финальное количество пересечений нечетно - точка внутри. В
 противном случае - снаружи. 
 
 В таком виде это алгорим будет несколько нестабильно обрабатывать точки,
 лежащие на границе многоугольника. Его несложно усовершенствовать, чтобы
 устранить эту проблему. Тебе как нужно, чтобы точки на границе
 классифицировались как внутренние, или как внешние?
 
 * Второй способ:
 
 Мысленно проводим лучи из нашей точки во все вершины многоугольника.
 Вычисляем ориентированный угол между соседними лучами (соседние лучи -
 это лучи, соответствуюшими соседним вершинам; относительный порядок
 лучей соответствует порядку перечисления вершин). Суммируем все такие
 углы. Если сумма равна 0, то точка снаружи. В противном случае (сумма
 будет кратна 360 град.) - точка внутри.
 
 Best regards,
 Андрей.
 --- ifmail v.2.15dev5
  * Origin: good enough (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Писал yже кто-то, но пpопyстил   Alexey Kurbatov   24 Apr 2002 07:35:04 
 Писал yже кто-то, но пpопyстил   Karim Rafikov   25 Apr 2002 00:39:06 
 Re: Писал yже кто-то, но пpопyстил   Andrey Tarasevich   26 Apr 2002 02:09:32 
 Hа: Писал yже кто-то, но пpопyстил   Ђ«ҐЄбҐ© „.   26 Apr 2002 10:54:50 
 Re: Hа: Писал yже кто-то, но пpопyстил   Andrey Tarasevich   26 Apr 2002 11:03:04 
 Re: Hа: Писал yже кто-то, но пpопyстил   Andrey Tarasevich   27 Apr 2002 06:09:31 
 Re: Hа: Писал yже кто-то, но пpопyстил   Sergiy Kanilo   27 Apr 2002 07:00:35 
 Re: Hа: Писал yже кто-то, но пpопyстил   Andrey Tarasevich   27 Apr 2002 11:46:51 
 Hа: Писал yже кто-то, но пpопyстил   Nickita A Startcev   27 Apr 2002 16:38:50 
Архивное /ru.algorithms/668261e9b01b.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional