Введение

Симплициальный комплекс в евклидовой геометрии

Триангуляция множества точек в евклидовом пространстве — это симплициальный комплекс, покрывающий выпуклую оболочку, и вершины которого принадлежат . В плоскости (когда является множеством точек в ), триангуляции состоят из треугольников вместе с их ребрами и вершинами. Некоторые авторы требуют, чтобы все точки были вершинами своей триангуляции. В этом случае триангуляция множества точек в плоскости может быть определена как максимальное множество непересекающихся ребер между точками . В плоскости триангуляции являются частными случаями планарных прямолинейных графов. Особенно интересны триангуляции Делоне, являющиеся геометрическими дуалами диаграмм Вороного. Триангуляция Делоне множества точек в плоскости содержит граф Габриэля, граф ближайших соседей и минимальное остовное дерево.

Триангуляции имеют множество применений, и существует интерес к поиску "хороших" триангуляций заданного набора точек по определенным критериям, например, триангуляций с минимальным весом. Иногда желательно, чтобы триангуляция обладала специальными свойствами, например, чтобы все треугольники имели большие углы (избегались вытянутые и узкие ("щелевидные") треугольники). Для заданного множества ребер, соединяющих точки плоскости, задача определения, образуют ли они триангуляцию, является NP-полной.

Регулярные триангуляции

Некоторые триангуляции набора точек могут быть получены путем поднятия точек в (что эквивалентно добавлению координаты к каждой точке ), вычислению выпуклой оболочки поднятого набора точек и проецированию нижних граней этой выпуклой оболочки обратно на . Триангуляции, построенные таким образом, называются регулярными триангуляциями . Когда точки поднимаются на параболоид уравнения , эта конструкция приводит к триангуляции Делонея. Следует отметить, что для того, чтобы эта конструкция давала триангуляцию, нижняя выпуклая оболочка поднятого набора точек должна быть симплициальной. В случае триангуляций Делоне это означает, что никакие четыре точки из не должны лежать на одной сфере.

Комбинаторика в плоскости

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

Алгоритмы для построения триангуляций в плоскости

Алгоритм разбиения на треугольники: Найдите выпуклую оболочку множества точек и триангулируйте эту оболочку как многоугольник. Выберите внутреннюю точку и проведите ребра к трем вершинам треугольника, содержащего её. Продолжайте этот процесс, пока не будут исчерпаны все внутренние точки. Приращивающий алгоритм: Отсортируйте точки по x-координатам. Первые три точки определяют треугольник. Рассмотрите следующую точку в упорядоченном множестве и соедините её со всеми ранее рассмотренными точками, которые видны из этой точки. Продолжайте этот процесс добавления одной точки за раз, пока все точки не будут обработаны.