П +1
r(r)=X/V;(r)q,.
j=о
В-сплайны новой кривой обозначим подчеркнутыми буквами. В силу значений узлов будут выполняться равенства
= 7V/40, 7 = 0, 1 /- т- 1,
Nj”(f) = Nj.rU), j = i + 1, /’ + 2,
Nf(t)= VJ+m+1~V I¥”,(/)+ V~°J N"J(t),j=i~m, i-m+l, ..., /.
Vj+m+2-Vj+\ Uj+m+i-Vj J
Для ненормированных 5-сплайнов последнее равенство имеет вид
Mf(t)= Ui+m+2~v д/;„(о+----^- му),
Vj+m+2-Vj VJ+m+2-Vj J
j = i - m, i - m + 1, /. (1-70)
Равенство (1.70) докажем методом индукции. Непосредственной подстановкой убеждаемся, что равенство (1.70) для ненормированных 5-сплайнов нулевого порядка выполняется:
vul -и 1
'м-Щ Vi+2~VM
Предположим, что равенство (1.70) справедливо для ненормированных 5-сплайнов (т - 1)-го порядка и убедимся, что из этого предположения следует его верность для ненормированных 5-сплайнов т-то порядка. Для этого подставим в (1.48) равенства (1.70) для A//"f'(/) и и получим
tj+m+l
t j+m+1 tj
Mj+2 (0 + М. /+1 (0
Jj+i J vJ+m+2-uJ+l
J
V
/
t-tJ
j+m+i-v v Vj
\VJ+m+i ~V
j= W' * VJ+m+2 V..M%|(/) + 1 tj Vj+m+l V (0 +
0+m+l ~tj vj+m+2 ~Vj+l tj+m+\ ~tj vj+m+1 _t;y
+ fJ+m+l-t V-VJ+11 (/) + _^fy £z4l_m7"'(0.
tj+m+l ~tj Vj+m+2 ~vj+l tj+m+1 ~*j vj+m+1 — yy
Во втором и третьем слагаемых выполним замену, используя равенство
(t-tjHvJ+m+j-v) | (ry4m+i-r)(t;-t;y>|)
Vj+m+\ ~ Vj Uj-nn+2 ~ Vj+1
_ (Vj+m+2-v)(t-UJ+,) (V-Vj)(Pj+m+\ ~t)
' J
vj+m+2 ~ vj+1 ^y+ffi+l —
которое можно проверить непосредственными вычислениями. После замены получим
Mf(t) = .vJ+-m!2~-.-и/+-т^г1. Mn';\{t)+
VJ+m+2-VjVJ+m+2-Vj+l J
+ Vj+m+г-v t-vj+l ^J-1(?) +
uj+m+2 - VJ vj+m+2 _ vj+1
+ v~”j £zf^_M-«We
Vj+m+2-VjVj+m+l-Vj J VJ+m+2-VjVj+m+l-Vj J
= vj+m+2-v M"(t)+ V~Vj
Vj+m+2-Vj VJ+m+2-Vj J
что и требовалось доказать.
Для новой кривой должно выполняться равенство
ГЕОМЕТРИЧЕСКОЕ МОДЕЛИРОВАНИЕ 2
fHib 13
«)-£■ ^ р„ 15
... -h 18
+ q,+i(-^2 + w3)(thi - h) = a0(^)p, + «i(^)p,+i + Po(^)(^+i - Oq, + 18
г, = 27
<{ 29
через 5-сплайны новой кривой
-
vi+2-v
Р/-Ш + P i-m+
Nt m+l(t)+ V N”jt)
Vj+г-У V~Vi-rn+\
-NS-m+2«) + , (t)
Ui+3 - Vi-m+ 2 Ui+2 ~ Vi-m+
1
K^i+m+2 ^/+1 Vi+m+l
/
/
(0 4/-m+i -
V
Введем обозначение a, = — для j = / - m + 1, i - m + 2
J * *
и
+
получим равенства, выражающие контрольные точки новой кривой через контрольные точки р,:
q,= PjJ = о,
О/ = О/Р/ + (1 - a,)Py_i, Q/+I = Р/5
..., i-m,
j = i - т + 1, i - т + 2, .. j = i, i + 2, ..., n
.
Для вставки узла v, t, < и < tM, в кривую (1.60) в полученных равенствах контрольные точки должны быть умножены на свои веса. Веса контрольных точек новой кривой выражаются через веса контрольных точек исходной кривой аналогичными формулами:
wj = wp j - 0, 1, / - m,
Wj = QLjWj + (1 - CLj)Wj_ 1, j = i-m + 1, /- m + 2,..., /, Wj+\ = Wj, j = /, / + 2, ..., n.
Вставляемый новый узел в последовательность узлов В-кривой может совпадать с имеющимся узлом, например, v = tr Таким образом, новый узел может быть вставлен несколько раз при условии, что его кратность не превысит порядок 5-кривой.
Примеры ^-кривых
В качестве примеров построим 5-кривые по п + 1 контрольным точкам с целочисленными значениями узлов. Параметризацию с равноотстоящими значениями узлов называют равномерной.
Пусть первые т + 1 узлов незамкнутой 5-кривой имеют значения, равные нулю: t0 = /, = ... - tm = 0; следующие п - т узлов принимаю
т
Рис. 1.32
целочисленные значения от 1 до п - т: tm+i = /, / = 1, 2, п - т; оставшиеся т + 1 узлов принимают значение п - т + 1: /л+1 = tn+2 = ... = = {п+т+1 = п - т + 1. Параметр незамкнутой 5-кривой изменяется в пределах от tm = 0 до tmt = п - т + 1. На рис. 1.32 приведен набор 5-сплайнов 3-го порядка, построенных на расширенном множестве узлов О, О, О, О, 1, 2, 3, 4, 5, 6, 6, 6, 6 для 9 контрольных точек.
Р2
Рис. 1.34
Построенная по этим точкам 5-кривая и ее контрольная ломаная приведены на рис. 1.33. Как и кривая Безье, 5-кривая не проходит через свои контрольные точки за исключением крайних точек. Параметр t кривой, приведенной на рис. 1.33, принимает значения на отрезке О < 1 < 6.
Пусть узлы циклически замкнутой 5-кривой принимают значения: tj = i - т, i = 0, 1, 2, п + 2т + 1. Параметр замкнутой 5-кривой изменяется в пределах от 1т = 0 до tn+m+i = п + 1. На рис. 1.34 приведен набор 5-сплайнов 3-го порядка, построенных на расширенном множестве узлов -3, -2, -1, О, 1, 2, 3, 4, 5, 6, 7, 8, 9 для 6 контрольных точек. Все 5-сплайны для замкнутой кривой похожи друг на друга.
Построенная по этим точкам циклическаи замкнутая 5-кривая и ее контрольная ломаная приведены на рис. 1.35. Параметр кривой, приведенной на рис. 1.35, принимает значения на отрезке 0 < / < 6.
На рис. 1.36 по одним и тем же восьми контрольным точкам построены 5-кривые первого, третьего, пятого и седьмого порядка. На рис. 1.36 наблюдаем, что чем выше порядок кривой, тем она более гладкая. 5-кривая первого порядка совпадает с контрольной ломаной.
На рис. 1.37 показано влияние веса контрольной точки р4 на форму кривой четвертого порядка. Чем больше вес вершины, тем ближе к ней проходит S-кривая.
В общем случае вес вершины может быть нулевым и отрицательным.
т= 1
Рис. 1.36
/?-кривые и кривые Безье
Покажем, что кривые Безье являются частными случаями if-кривых. Для этого изменим индексацию 5-сплайнов. Ранее 5-сплайну приписывался индекс, равный индексу первого узла. С равным правом 5- сплайну можно приписать индекс, равный индексу последнего узла.
Введем определение 5-сплайна, в котором он имеет индекс последнего узла последовательности, на которой он построен. Построим 5- кривые с помощью таких 5-сплайнов и выведем для них алгоритм Де Бура.
Наряду с (1.44) определим В-сплайн m-то порядка, построенный на неубывающей последовательности узлов thm_b равенством
Nmi{t) = (t, - ti_m_,) Om\tj_m_b ti_m, ..., /,]. ( 1 .71 )
Кроме того, наряду с (1.45) определим ненормированный В-сплайн m-то порядка, построенный на неубывающей последовательности узлов ti-m-Ъ ti-m> th равенством
Mm,(t) = ст„, t,_m, /,]. (1.72)
Ранее было отмечено, что 5-сплайн нижним индексом может быть связан с любым узлом последовательности, на которой он построен. В формулах (1.71) и (1.72) индекс /' 5-сплайнов указывает на последний узел последовательности и расположен после индекса т, характеризующего порядок 5-сплайна. Из определений следует, что N'JLm_i(t) = Nf"(Г) и МГт-М = MrU) (отличие в положении нижнего индекса).
Большинство свойств 5-сплайнов при определении (1.71) сохраняется, так как разделенная разность не зависит от порядка следования узлов, на которой она построена. Некоторые изменения появятся в рекуррентных соотношениях, привязанных к неубывающей последовательности узлов tj_m_[, tj_m, t, которая используется в 5-кривых.
Уменьшим в равенстве (1.47) все индексы на т + 1 и получим
111 т 1 ■ А'-т> •••> ^/1 =
“ ~ ~ ®m-\\ti-mi ti-m+Is "ч ~ ^/-т> ^i-11 *
/ — /-W-1 / ~ */-т-1
Запишем последнее равенство с использованием определения (1.72) и получим формулу Кокса—Де Бура для ненормированных 5-сплайнов, связанных с последним узлом последовательностей, на которых они построены:
Мт i(t) = t,~t М(t). (1.73)
^i ~ ti-m-\ ^i ti-m-1
Рекуррентное соотношение (1.73) начинается с ненормированных 5-сплайнов нулевого порядка
tj-tj-x ' ' (1.74)
О, в остальных случаях.
Используя равенство Nm,{t) = (/, - из соотношения (1.73)
получим формулу Кокса—Де Бура для 5-сплайнов, связанных с последним узлом неубывающих последовательностей, на которых они построены:
Nmi(t) = + t~t‘-w~‘ (1). (1.75)
h ~ h-m
Рекуррентное соотношение (1.75) начинается с 5-сплайнов нулевого порядка
„ Г1, если
№j(t) = {’ J ' у’ (1.76)
[0, в противном случае.
Используя определение разделенной разности (1.37), получим Nmi(t) = - Ь)ат[Ь_т_ь Ь_т, t,] =
= [^i-m» h-m+\i •••» ^/1 — b h-mi •••» 0*77)
С помощью (1.77) вычислим производную 5-сплайна Nmj(t)\ dNmt(t) = ^ат[Г,_т, tt] ?,_m,...,
dt dt dt
Подставив в последнее выражение производные по t усеченной степенной функции
d<3„
dt
получим
dNm\t)
~Т — m-\\fi-mi ^i-m+\ > •••> m-\\fi-m-1 > ^/-m> ^/-ll —
dt
-mMm~'i(t) + mMm~\_!(/) =
= — Nm~\{t) + ■Nm-l,.l(t). (1.78)
h - h-m (i-1 ~ tj-m-l
Аналогично получим формулу для производной ненормированного 5-сплайна A/m,(f)
dMm,(t) тмт-'лп-мт-\{1) dt ti~t,-m-1 '
7+1
-r(l) • +
Do'stlaringiz bilan baham: |