BSplines
BSplines
• Polynomial curves
• Ck-1 continuity
• Cubic B-spline: C2 continuity
• Knots: t1,t2,t3,t4
• Control points
v0 = f(t1,t2) = a0 + a1 (t1+t2)/2+ a2 t1t2
v1 = f(t2,t3) = a0 + a1 (t2+t3)/2+ a2 t2t3
v2 = f(t3,t4) = a0 + a1 (t3+t4)/2+ a2 t3t4
(23/24, 1/2)
f(3.5,3.5,3.5)
November 2002 – Céline Loscos
Definition
ti+1 - ti ti – ti-1
f (ti , ti ) = vi-2 + vi-1
ti+1 – ti-1 ti+1 – ti-1
ti+2 – ti+1 ti+1 – ti
f (ti+1 , ti+1 ) = vi-1 + vi
ti+2 – ti ti+2 – ti
November 2002 – Céline Loscos
B-splines or Bézier curves?
P1 P2
f(tj-1, tj, tj) f(tj, tj, tj+1) f(tj, tj+1, tj+1) f(tj+1, tj+1, tj+2)
P0 P3
f(tj, tj, tj) f(tj+1, tj+1, tj+1)
P3i-3 (t)
f(t, t, t)
November 2002 – Céline Loscos
De Boor algorithm
• Recursion formula:
Pj0 (t ) v j , j i k , i k 1,..., i
t k 1 j t r 1 t tr j r 1
Pjr (t ) Pj (t ) Pj 1 (t ), r 1,2,..., k , j i k , i k 1,..., i r
t t
k 1 j t r j k 1 j t r j
• Then
t ti ti 2 ti
N1,i (t ) N 0,i (t ) N 0,i 1 (t ) , t [t i , t i 2 ]
ti 1 ti ti 2 ti 1