Изменения

Перейти к: навигация, поиск

Straight skeleton

544 байта добавлено, 00:42, 4 декабря 2014
Нет описания правки
* <tex> Split\ event </tex> {{---}} происходит, когда ребро разбивается на два новых ребра, исходящих из точки преломления старого. Такое событие происходит на биссектрисе вогнутой вершины многоугольника. И тогда стягиваемая многоугольником область разбивается на две непересекающиеся многоугольные области.
На рисунке <tex> edge\ event' </tex>ы изображен изображены зелёным кругом, а <tex> split\ event' </tex>ы {{---}} красным прямоугольником.
[[Файл:skeleton_event_example.jpg|400px]]
}}
'''Замечание:''' если мы рассмотрим <tex> \mathrm{straight}\ \mathrm{skeleton} </tex> в какой-то момент времени, то он вполне может содержать циклы (это видно на одном из рисунков вышерисунке ниже). Однако его конечная структура будет деревом. [[Файл:Skeleton_example1.png|500px]]
== Алгоритм с изпользованием SLAV ==
==== Работа с LAV в момент возникновения split event'a ====
==== Частный случай множественных split event'ов на одном ребре ====
[[Файл:skeleton_lav_managing.png|400px600px]]
==== Алгоритм для невыпуклых полигонов ====
=== Ещё примеры = Случай полигонов с дырами ====[[Файл:Skeleton_example1Данный алгоритм может работать и с многоугольниками, содержащими дыры, если они ориентированы по часовой стрелки, чтобы внутренняя область многоугольника лежала слева от рёбер. И в самом начале алгоритма каждый замкнутый контур помещается в свой <tex> \mathrm{LAV} </tex> в множестве <tex> \mathrm{SLAV} </tex>.png|500px]] 
[[Файл:skeleton_hole_example.png|500px]]

Навигация