Возьмем луч, выходящий из произвольной точки А, и рассмотрим, к чему может привести прохождение луча через вершину многоугольника. Основные возможные случаи изображены на рис. 8.5.

В случае а, когда ребра, выходящие из соответствующей вершины, лежат по одну сторону от луча, четность количества пересечений не меняется.

в

б V

Основные алгоритмы вычислительной геометрии

Рис. 8.5

8. Основные алгоритмы вычислительной геометрии Случай в, когда выходящие из вершины ребра лежат по разные стороны от луча, четность количества пересечений изменяется.

К случаям б и г такой подход непосредственно неприменим. Несколько изменим его, заметив, что в случаях а и б вершины, лежащие на луче, являются экстремальными значениями в тройке вершин соответствующих отрезков. В других же случаях экстремума нет.

Исходя из этого, можно построить следующий алгоритм"opengl3_138.html">⇐ Предыдущая| |Следующая ⇒