Случай, когда вставляемый структурный отрезок пересекает уже ра-
нее вставленное фиксированное ребро, обрабатывается так же, как и в пре-
дыдущем алгоритме вставки «Удаляй и строй».
Трудоемкости всех трех рассмотренных алгоритмов вставки состав-
ляют в худшем случае 0(Л/
2
), где М - количество узлов в триангуляции
после завершения работы алгоритма триангуляции с ограничениями. Заме-
тим, что при большом количестве взаимных пересечений структурных ли-
ний эта оценка составляет
0(N
4
),
где N - количество исходных точек и
вершин исходных структурных линий.
Оценка трудоемкости в среднем очень сильно зависит от распреде-
ления структурных линий. Если их количество невелико и они мало пере-
секаются между собой, то общая оценка трудоемкости может составить
O(N).
6.4. Классификация треугольников
Теперь рассмотрим третий этап построения триангуляции с ограни-
чениями - задачу классификации полученных треугольников триангуля-
ции по признаку их попадания внутрь заданных регионов.
В простейшем случае можно для каждого отдельно взятого тре-
угольника выбрать любую точку внутри него и проверить её на попадание
во все заданные регионы. Трудоёмкость такой операции составляет 0(М
),
где М - число точек в границе региона. Тогда общая трудоёмкость алго-
ритма классификации составит
T(N,M) = O(NM).
Можно поступить по-другому [14]. Пусть для каждого треугольника
необходимо выставить признак С, = 1, если он попадает внутрь какого-
либо региона, и С, =0, если нет. Предположим, что при вставке структур-
ных линий, принадлежащих границам регионов, для каждого фиксирован-
ного ребра отмечалось, к какому региону он относится. При этом возмож-
но,
что одно и то же фиксированное ребро может относиться к нескольким
регионам одновременно. Кроме того, если граница некоторого региона
проходит через какое-то ребро многократно, то это количество прохожде-
ний также должно быть отмечено. В будущем при рассмотрении попада-
ния треугольников в регион мы будем игнорировать рёбра с четным коли-
чеством прохождений в соответствии с определением региона.
Алгоритм определения попадания треугольников в заданный регион.
Пусть дана триангуляция и для каждого фиксированного ребра отмечено,
сколько раз граница данного региона проходит через ребро.
Шаг 1. Для каждого треугольника обнулить признак попадания
внутрь региона С, := 0.