Главная > Математика > Геометрическое моделирование
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

3.12. Треугольные поверхности Безье

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

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

Рис. 3.12.1. Нумерация точек

Чем ближе ряд, в котором лежат точки, к вершине, тем большее значение имеет индекс этой вершины.

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

(3.12.1)

Треугольную поверхность Безье опишем с помощью барицентрических координат а, b, с. Будем считать, что поверхность Безье имеет ту же область определения параметров, что и поверхность (3.11.10). Радиус-вектор треугольной поверхности Безье, построенной по характеристическим точкам , описывается формулой

(3.12.3)

Суммирование в (3.12.2) выполняется по всем характеристическим точкам, а трехиндексные функции Бернштейна имеют вид

(3.12.4)

где должно выполняться равенство (3.12.1).

Треугольная поверхность Безье, построенная по 7 точкам вдоль каждой стороны, показана на рис. 3.12.2. Характеристический многогранник треугольной поверхности Безье приведен на рис. 3.12.3.

Рис. 3.12.2. Треугольная поверхность Безье

Рис. 3.12.3. Характеристический многогранник треугольной поверхности Безье

Крайние линии поверхности (3.12.2) описываются векторами и представляют собой кривые Безье (2.5.3). Покажем это на примере крайней кривой . Для нее и функции (3.12.4) примут вид

(3.12.5)

что совпадает с (2.5.4).

Покажем, что трехиндексные функции Бернштейна удовлетворяют равенству

(3.12.6)

Суммирование (3.12.6) выполним по строчкам третьего индекса строке третьего индекса содержится характеристических точек.

что и требовалось доказать.

Алгоритм Де Кастелье.

Трехиндексные функции Бернштейна удовлетворяют рекуррентному соотношению

(3.12.7)

Это соотношение доказывается непосредственной подстановкой:

что и требовалось доказать.

Начнем вычисление с функции

Далее получим Функция Бернштейна, один из индексов которой равен отрицательному числу, считается равной нулю. Подставим рекуррентное соотношение (3.12.7) в выражение (3.12.2), выделив крайние точки и учитывая, что получим аналогично выводу (2.5.6)

где введены обозначения:

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

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

(3.12.8)

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

Увеличение числа характеристических точек.

От треугольной поверхности Безье степени можно перейти к треугольной поверхности степени аналогично тому, как это было сделано для кривых Безье. Для этого умножим правую часть равенства (3.12.2) на сумму , равную 1, и получим

(3-12-9)

где — новые характеристические точки.

Новых характеристических точек на один ряд вдоль каждой из трех сторон треугольника стало больше. Точки в вершинах треугольника остались прежние: Выражение (3.12.9) описывает ту же поверхность, что и выражение (3.12.2), только через другие характеристические точки.

Треугольная рациональная поверхность Безье.

Пусть треугольная поверхность Безье построена на совокупности характеристических точек , образующих треугольную сетку, показанную на рис. 3.12.1. Припишем каждой точке вес Построим треугольную рациональную поверхность Безье. Ее радиус-вектор описывается формулой

(3.12.10)

где суммирование выполняется по всем характеристическим точкам. В силу свойства (3.12.6), поверхность Безье (3.12.2) является частным случаем рациональной поверхности (3.12.10) при одинаковых весах точек. Чем больше вес точки, тем ближе к ней проходит поверхность. Напомним, что роль играет не абсолютное значение веса каждой точки, а отношения весов точек друг к другу. Если веса всех характерных точек одинаковы, то мы придем к обычной поверхности Безье (3.12.2).

Рис. 3.12.4. Треугольная рациональная поверхность Безье.

В терминах однородных координат расширенный радиус-вектор (1.4.6) треугольной поверхности Безье определяется формулой

(3.12.11)

где расширенные радиус-векторы вершин поверхности. На рис. 3.12.4 показана треугольная поверхность Безье, аналогичная приведенной на рис. 3.12.2 поверхности, с весом средней точки, равным 5.

<< Предыдущий параграф Следующий параграф >>
Оглавление