Построение поверхностей на основе триангуляционной сети

Рассмотрим алгоритм построения ЦМР на основе аппроксимации триангуляци­онной сети высотных точек набором плоскостей, проходящих через узлы три­ангуляции. Данный метод использует естественное разбиение триангуляцион­ной сети на множество непересекающихся треугольников и тот факт, что три пространственные точки единственным образом определяют плоскость в про­странстве.

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

Раскрывая определитель, получим коэффициенты уравнения плоскости.

Высота в некоторой точке (х, у) плоскости вычисляется:

Используя это уравнение, можно построить ЦМР в пределах заданного треугольника, определяемого точками . На ребрах двух смежных треугольников в триангуляции значения высот вдоль всего ребра будут совпадать, однако данный способ не обеспечивает гладкого перехода ЦМР на ребре между смежными треугольниками, кроме того, ЦМР даже визуально не выглядит гладкой, что во многих случаях неприемлемо.

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

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

В результате составления и решения системы уравнений по шести точкам-вершинам текущего треугольника и смежных с ним треугольников определяются коэффициенты уравнения. АХ=В.

Эта система решается относительно коэффициентов полинома X = В. Дан­ный подход позволяет провести гладкую поверхность через заданный треугольник триангуляционной сети, однако обладает двумя существенными недостатками.

1. Для определения коэффициентов полинома необходимо решить систему линейных уравнений, что ведет к значительным вычислительным затратам;

2. Построение гладкой поверхности для заданного треугольника не ведет авто­матически к построению гладкой поверхности на сети треугольников, так как отдельные функции совпадают на вершинах треугольников, но плохо сшива­ются на границах треугольников. Для обеспечения общей гладкой поверхности необходимо дополнительно уравнивать границы треугольников, в результате генерация ЦМР не может быть осуществлена только локальными функциями и необходимо использовать глобальные для всей ЦМР методы, что не всегда возможно с точки зрения используемых вычислительных ресурсов.



r.php"; ?>