对于3阶2次B样条曲线,取n为3:
计算B样条上的点需要知道的B样条基函数为:N0,3(t),N1,3(t),N2,3(t),N3,3(t)。
以N0,3(t)为例给出求解过程:
取n=3,k=3,则n+k=6,不妨设节点矢量为:T=(0,1,2,3,4,5,6): 根据B样条公式:
1titti1Ni,1(t)约定:
0000tti 或 tti1,
NttitittNkti,k(t)i,k1(t)Ni1,k1(t), ik1itikti1有:
Nttt0,3(t)03ttN0,2(t)tN1,2(t)2t03t1 由上式可知,需要知道N0,2(t),N1,2(t):
而:
N(t)ttt2t0,20ttN00,1(t)tN2t11,1(t)1 由上式可知,需要知道N0,1(t),N1,1(t):
10t1 N0,1(t)
0 其它
11t N1,1(t) 2
0其它可知:
k2
t2ttt0N0,2(t)N0,1(t)N1,1(t)t1t0t2t1t2tN0,1(t)N1,1(t)1021tN0,1(t)(2t)N1,1(t)t0t12t1t2t0或t20
而:
t3ttt1N1,2(t)N1,1(t)N2,1(t) t2t1t3t2由上式可知,需要知道N1,1(t),N2,1(t):
11t2
N1,1(t) 其它0
12t3
N(t) 2,10其它
可知:
t3ttt1N1,2(t)N1,1(t)N2,1(t)
最后可得:t2t1t3t2t121N)3t1,1(t32N2,1(t)(t1)N1,1(t)(3t)N2,1(t)t11t23t2t30t1或t3
t3ttt0N0,3(t)N0,2(t)N1,2(t)t2t0t3t1t3tN0,2(t)N1,2(t)2031t(3t)N0,2(t)N1,2(t)22t0t12t(2t)(3t)(t1)1t22(3t)22t32
2