(2.32)
г(м, и) =
Руы s v(Uj,Vi) s v(Uj,uM) Py+u+l su(uj+\>vi) S u(Uj+bUM) S u(Uj,Vi) S u(Uj,VM) S m(Uj’Vi) sw(«y,u/+,)
,^( + | ) Sut;(Wy+],t?y) SwtJ(My-+| ,^/+l )
где использованы обозначения:
U : -U ,
SU(M,-, У,) = Ру-I/
(У/-1 -у/)(у,-1 ->/+!)
2
- и,
му-м
,
■
2у,
+ р./
P у/+
1
Геометрическое моделирование
suv{Uj, v,) =
i-1
(Uj_I -Uj)(Uj_x-Uj+x)
2uj-uj_t-uj+i (uj-ur ])(uj -uJ+l)
(Uj+l -Uj_\ )(Uj+\ -Uj)
Р У-1/-1
|
Pi-1,'
|
Р 7-11+1
|
Р/М
|
р и
|
Р // * 1
|
Р /+1,-1
|
Р j+li
|
Р /+»+1
|
(y,_ 1 -v,)(v, , -y,.+1)
2^,--^--1-^41
v,-v
.
Поверхность (2.32) полностью определяется точками р7.
Поверхности Безье
Пусть имеется совокупность точек ру, i = 0, 1, n,j = 0, 1, т, условно расположенных в узлах прямоугольной сетки, т.е. в виде п + 1 рядов по /77+1 точек в каждом ряду. Индексы точки означают, что точка ру расположена J-й по счету в г'-м ряду. Нумеровать ряды будем от О до п, а точки в них — от 0 до т.
Поверхность Безье, построенная на совокупности точек ру, описывается векторной функцией
п т
r(u, v) = Yi'£B?(v)BJ,(u)Py-ие[0, 1], уе[0, 1], (2.33)
/=о у=о
где В"{р) = ———и‘(\-и)п~' и BJ'(u) = — uJ(l-u)m~J — функции
(п-i)lil J (m-j)\j\
базиса Бернштейна. В соответствии с (1.18) выполняется равенство
п т
$£в?(р)вт{и) = 1. (2.34)
(=0 j=о
Точки ру называются контрольными точками. Сечения поверхности
по линиям и = const или v = const представляют собой кривые Безье степени тип соответственно. Будем говорить, что по первому параметру поверхность (2.33) имеет степень т, а по второму параметру — степень п. Область изменения параметров поверхности представляет собой квадрат со стороной, равной единице.
Если представить, что на каждых четырех соседних точках р,-,, р(/.,, Р/+1/, Р/+1/+1 построена билинейная поверхность, то мы получим многогранник, который будем называть контрольным, или характеристическим, многогранником. Контрольный многогранник дает общее представление о поверхности Безье. Поверхность Безье вместе со своим контрольным многогранником приведена на рис. 2.18. Так как из коэффициентов Бернштейна только нулевой и последний принимают максимально возможные значения, а остальные при этом равны нулю, т
о
Рис. 2.18
поверхность Безье проходит только через угловые контрольные точки сетки: р00, р0т, р„о, рпт-
Припишем каждой контрольной точке р,-, вес Wy соответственно. Рациональная поверхность Безье, построенная на совокупности точек рj, описывается векторной функцией
п т
IIW^Hp,
r(u,v)=^r- ■ (2.35)
ZZ В;-(и)В’"(и)и>у
/=о >=о
В терминах однородных координат радиус-вектор рациональной поверхности Безье описывается равенством, по форме совпадающим с
(2.33),
п т ;=0 J=о
где Ру = \WjjPij Wy]т — расширенные векторы (1.35) контрольных точек поверхности.
У рациональной поверхности играют роль не абсолютные значения весов точек, а их относительные значения. Чем больше вес контрольной точки по отношению к весам других контрольных точек, тем ближе к этой точке подходит поверхность. Если веса всех контрольных точек равны, то рациональная поверхность Безье примет вид (2.33).
Радиус-вектор рациональной поверхности вычисляется как частное от деления двух функций параметров и и v, поэтому при вычислении производных рациональной поверхности правую часть (2.35) следует рассматривать как сложную функцию. Если условно обозначить радиус-
„ шг
вектор рациональной поверхности как г = —, то частные производные
w
радиуса-вектора рациональной поверхности определятся формулам
и
dr _ 1 д(шг) wr dw. dr _ 1 d{wr) wr dw du w du w2 du ’ dv w dv w2 dv
Производные более высокого порядка вычисляются аналогично. Рациональной поверхностью Безье можно описать некоторую часть поверхности второго порядка, а также часть поверхности тора. Для этого проще всего использовать рациональную поверхность Безье второй степени, построенную по 9 контрольным точкам:
г (и, v) =
Poo wi№a\ Р02 м)2
[(l-i>)2 2u(l-v) у2]- изиpl0 wuwuРц из„р,2 • 2и(\-и) Р->п Dr, и2
Веса угловых точек равны единице, а для остальных точек введены веса wu и ши, имеющие индексы параметрических направлений поверхности. Тип поверхности, получаемой по формуле (2.36), зависит от положения контрольных точек и весов wu и wv. Если сечения поверхности
по линиям и = const или v = const представляют собой дуги окружности с углами раствора аи и а„ соответственно, то wu = cos(a„/2) и wv = со5(аУ2).
Составная поверхность Безье позволяет преодолеть жесткую связь степени гладкости поверхности с количеством контрольных точек, по которым она построена. Составную поверхность Безье получим в результате стыковки отдельных поверхностей Безье, имеющих вдоль стыкуемых краев общие контрольные точки и одинаковые степени. Для того чтобы отдельные поверхности Безье гладко стыковались друг с другом, нужно чтобы отрезки контрольных многогранников, прилегающие к общим точкам стыкуемых поверхностей, лежали в одной плоскости.
^-поверхности
Построим неоднородную рациональную поверхность на основе В- сплайнов так же, как была построена поверхность Безье на основе функций Бернштейна. Пусть имеется совокупность точек ри, i = 0,1, ..., п, у'=0, 1,..., т, условно расположенных в узлах прямоугольной сетки в виде п + 1 рядов по т + 1 точек в каждом ряду. Неоднородную рациональную поверхность на основе 5-сплайнов к-го порядка по первому параметру и /-го порядка по второму параметру опишем векторной функцией
п т
i
/=0 J=о
где N'(v) и Nfiu) — 5-сплайны (1.44).
Do'stlaringiz bilan baham: |