г (и,и) =
(2.37)
|=о j=о
'{u)N ]к{и)и>и$
и
Поверхность (2.37) называют NURBS-поверхностью (Non-Uniform Rational В-Spline surface), или В-поверхностью.
Каждый из 5-сплайнов к-то порядка Njk(u) построен на неубывающей последовательности из к + 2 узлов Uj, uJ+h uJ+k+l, всего для построения совокупности m+ 1 5-сплайнов к-го порядка требуется т + к + + 2 узлов Uj в случае незамкнутой поверхности и т + 2к + 2 узлов для циклически замкнутой поверхности. Каждый из 5-сплайнов 1-го порядка N/(u) построен на неубывающей последовательности из I + 2 узлов vh vM, vM+1, всего для построения совокупности п + 1 5-сплайнов /-го порядка требуется п +1 + 2 узлов и, в случае незамкнутой поверхности и п + 21 + 2 узлов в случае циклически замкнутой поверхности. Как следует из (2.37), 5-поверхность имеет две неубывающие последовательности узлов, одну — для первого параметра, а другую — для второго параметра.
Сечения поверхности (2.37) по линиям и = const или v = const представляют собой 5-кривые степени кш I соответственно. Будем говорить, что по первому параметру поверхность (2.37) имеет порядок к, а по второму — порядок I. Область изменения параметров 5-поверхности представляет собой прямоугольник: ик<и<. um+k+l, v,n+M. Таким образом, Wmjn — Uk, Мтах = ^т+к+1» ^min — ^'7: Цлах — ^п+1+1 ■
Пусть нумерация узлов начинается с нуля. Для незамкнутой по первому параметру 5-поверхности, как правило, используются 5-сплайны Njk(u), построенные на неубывающей последовательности узлов, в которой первые и последние к + 1 узлов совпадают: и0 = U\ = ... = ик и ит+1 ит+2 = ••• = игп+к+1. Для незамкнутой по второму параметру 5-поверхности, как правило, используются 5-сплайны N/(v), построенные на неубывающей последовательности узлов, в которой первые и последние / + 1 узлов совпадают: v0 = = ... = vt и vn+x = vn+2 = — = v„+M. Для циклически замкнутой 5-поверхности по первому (второму) параметру соответствующая последовательность узлов должна отражать замкнутость: первые 2к (21) узлов должны идти через интервалы, повторяющие интервалы, через которые идут последние 2к (2/) узлов.
Когда все контрольные точки 5-поверхности имеют равные веса, то в силу равенства (1.54) формула (2.37) для вычисления радиуса-вектора поверхности на основе 5-сплайнов примет вид
п т
г (и,и) = ££ . (2.38)
1=01=о
В терминах однородных координат (1.35) формула (2.37) имеет вид
п т
R(M,y) = ££^/(y)7V/(«)P,y>
/=о >о
совпадающий по форме с (2.38).
Если на каждых четырех соседних контрольных точках построить билинейные поверхности, то получим некоторый контрольный многогранник поверхности. Если построить 5-поверхность на базе 5-сплайнов первого порядка, то она совпадает со своим контрольным многогранником.
Для вычисления радиуса-вектора поверхности используем формулы (1.62) и (1.63). По значению параметра и из условия Uj< и < uJ+[ определим номер j отличного от нуля ненормированного /?-сплайна нулевого порядка
М(и) = .
Далее, используя рекуррентное соотношение Кокса—Де Бура Мк(м) = мД:,1 (и) + “~“г Мк“'(и),
Un k+l ~ 11 г Ur+k+\ ~ иг
последовательно вычислим все отличные от нуля при данном параметре и 5-сплайны до &-го порядка включительно: Mj кк(и), Mj_k+ik(u), ..., М/(и). Далее 5-сплайны /с-го порядка нормируем
Nr\u) = (иг+к+1 - ur) Мк(и), r=j - k,j -к + 1,
Аналогично, по значению параметра и из условия у, < v < vM определим номер / отличного от нуля ненормированного 5-сплайна нулевого порядка
М?(и) = ! .
им-v,
Используя рекуррентное соотношение Кокса—Де Бура
Щ{v) = U«+M~U м#(и) + V~Vq М,А(и), vq+M-vq vg+M-vq
последовательно вычислим все отличные от нуля при данном параметре v 5-сплайны до /-го порядка включительно: Мr,_/(t>)> и затем нормируем их
Nq(v) = (vq+M - vq) Mq'(v), q = i - I, i - I + 1, z.
Так как в общем случае только часть 5-сплайнов отлична от нуля, радиус-вектор точки 5-поверхности (2.37) для параметров Uj< и < uJ+l и v, < v < vM вычислим по формуле
Ё X N,q(u)Nk(u)wqгр?г
г (и, v) = .
t I N‘{v)Nk{u)wqr
q=i-l r=j-k
Одновременно с вычислением 5-сплайнов может проводиться вычисление их производных с помощью соотношений (1.58).
Частные производные поверхности вычислим дифференцированием числителя и знаменателя правой части равенства (2.37) с учетом (1.58) и (1.48):
Do'stlaringiz bilan baham: |