1 dr. scott schaefer blossoming and b-splines. 2/105 blossoms/polar forms a blossom b(t 1,t 2,…,t...
TRANSCRIPT
![Page 1: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/1.jpg)
1
Dr. Scott Schaefer
Blossoming and B-splines
![Page 2: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/2.jpg)
2/105
Blossoms/Polar Forms
A blossom b(t1,t2,…,tn) of a polynomial p(t) is a multivariate function with the properties: Symmetry:
b(t1,t2,…,tn) = b(tm(1),tm(2),…,tm(n)) for any permutation m of (1,2,…,n)
Multi-affine:
b(t1,t2,…,(1-u)tk+u wk,,…tn) =
(1-u)b(t1,t2,…,tk,,…tn) + u b(t1,t2,…,wk,,…tn) Diagonal:
b(t,t,…,t) = p(t)
![Page 3: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/3.jpg)
3/105
Blossoms/Polar Forms
A blossom b(t1,t2,…,tn) of a polynomial p(t) is a multivariate function with the properties: Symmetry:
b(t1,t2,…,tn) = b(tm(1),tm(2),…,tm(n)) for any permutation m of (1,2,…,n)
Multi-affine:
b(t1,t2,…,(1-u)tk+u wk,,…tn) =
(1-u)b(t1,t2,…,tk,,…tn) + u b(t1,t2,…,wk,,…tn) Diagonal:
b(t,t,…,t) = p(t)
The blossom always exists and is unique!!!
![Page 4: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/4.jpg)
4/105
Examples of Blossoms
?),(1)( 21 ttbtp
![Page 5: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/5.jpg)
5/105
Examples of Blossoms
1),(1)( 21 ttbtp
![Page 6: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/6.jpg)
6/105
Examples of Blossoms
?),()( 21 ttbttp
1),(1)( 21 ttbtp
![Page 7: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/7.jpg)
7/105
Examples of Blossoms
1),(1)( 21 ttbtp
22121),()( ttttbttp
![Page 8: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/8.jpg)
8/105
Examples of Blossoms
?),()( 21
2 ttbttp
1),(1)( 21 ttbtp
22121),()( ttttbttp
![Page 9: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/9.jpg)
9/105
Examples of Blossoms
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
![Page 10: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/10.jpg)
10/105
Examples of Blossoms
?),,(1)( 321 tttbtp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
![Page 11: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/11.jpg)
11/105
Examples of Blossoms
1),,(1)( 321 tttbtp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
![Page 12: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/12.jpg)
12/105
Examples of Blossoms
?),,()( 321 tttbttp
1),,(1)( 321 tttbtp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
![Page 13: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/13.jpg)
13/105
Examples of Blossoms
1),,(1)( 321 tttbtp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
3321321),,()( ttttttbttp
![Page 14: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/14.jpg)
14/105
Examples of Blossoms
?),,()( 321
2 tttbttp
1),,(1)( 321 tttbtp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
3321321),,()( ttttttbttp
![Page 15: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/15.jpg)
15/105
Examples of Blossoms
1),,(1)( 321 tttbtp
3321321),,()( ttttttbttp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
33212 313221),,()( tttttttttbttp
![Page 16: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/16.jpg)
16/105
Examples of Blossoms
?),,()( 321
3 tttbttp
1),,(1)( 321 tttbtp
3321321),,()( ttttttbttp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
33212 313221),,()( tttttttttbttp
![Page 17: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/17.jpg)
17/105
Examples of Blossoms
1),,(1)( 321 tttbtp
3321321),,()( ttttttbttp
33212 313221),,()( tttttttttbttp
3213213 ),,()( ttttttbttp
1),(1)( 21 ttbtp
22121),()( ttttbttp
21212 ),()( ttttbttp
![Page 18: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/18.jpg)
18/105
Blossoms/Polar Forms
Symmetry: b(t1,…,tn) = b(tm(1),…,tm(n))
Multi-affine: b(t1,…,(1-u)tk+u wk,,…tn) =
(1-u)b(t1,…,tk,,…tn) + u b(t1,…,wk,,…tn)
Diagonal: b(t,…,t) = p(t)
)1,0,0(b )1,1,0(b
t1 t
)1,1)1(0,0( ttb
![Page 19: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/19.jpg)
19/105
Pyramid Algorithms forBezier Curves
33
22
12
03 )1(3)1(3)1( ptpttpttpt
0p 1p 2p 3p
t1 t1 t1t tt
t1 t t1 t
t1 t
![Page 20: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/20.jpg)
20/105
Pyramid Algorithms forBezier Curves
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
t1 t1 t1t tt
t1 t t1 t
),,( tttb
t1 t
),0,0( tb )1,,0( tb )1,1,(tb
),,0( ttb )1,,( ttb
![Page 21: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/21.jpg)
21/105
Pyramid Algorithms forBezier Curves
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
t1 t1 t1t tt
t1 t t1 t
),,( tttb
t1 t
),0,0( tb )1,,0( tb )1,1,(tb
),,0( ttb )1,,( ttb
Bezier curve
Bezier control points
![Page 22: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/22.jpg)
22/105
Subdivision Using Blossoming
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
t1 t1 t1t tt
t1 t t1 t
),,( tttb
t1 t
),0,0( tb )1,,0( tb )1,1,(tb
),,0( ttb )1,,( ttb
Control points of left Bezier curve!
![Page 23: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/23.jpg)
23/105
Subdivision Using Blossoming
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
t1 t1 t1t tt
t1 t t1 t
),,( tttb
t1 t
),0,0( tb )1,,0( tb )1,1,(tb
),,0( ttb )1,,( ttb
Control points of right Bezier curve!
![Page 24: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/24.jpg)
24/105
Change of Basis Using Blossoming
Given a polynomial p(t) of degree n, find the coefficients of the same Bezier curve
![Page 25: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/25.jpg)
25/105
Change of Basis Using Blossoming
Given a polynomial p(t) of degree n, find the coefficients of the same Bezier curve
),...,()( 1 nttbtp
)1,...1,0,...,0(:tscoefficien bkn 1 k
![Page 26: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/26.jpg)
26/105
Change of Basis Using Blossoming
Example: Find Bezier coefficients of p(t)=1+2t+3t2-t3
51
1000
3300
3630
1331
1321 310
35
1
Old Method
![Page 27: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/27.jpg)
27/105
Change of Basis Using Blossoming
Example: Find Bezier coefficients of p(t)=1+2t+3t2-t3
21033210202110210 321),,( ttttttb ttttttttt
1)0,0,0( b35)1,0,0( b 3
10)1,1,0( b 5)1,1,1( b
New Method
![Page 28: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/28.jpg)
28/105
Degree Elevation
1
0
1
0
)(ˆ)(n
j
njj
n
i
nii tBptBp
n
i
niii
n
i
nii tBptpttBp
00
)())1(()(
n
i
nin
ii
n
i
nin
ini tBptBp
0
111
1
0
11
1 )()(
1
0
111
1
0
11
1 )()(n
i
nin
ii
n
i
nin
ini tBptBp
1
0
1111 )(1
n
i
nin
iin
ii tBpp
![Page 29: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/29.jpg)
29/105
Degree Elevation Using Blossoming
1
),...,,,...,(),...,(
1
11111
111
n
ttttbttb
n
iniin
nn
![Page 30: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/30.jpg)
30/105
Degree Elevation Using Blossoming
Symmetry: is symmetric Multi-affine: is multi-affine
Diagonal:
),...,( 1 nn ttb
),...,( 1 nn ttb
)(1
)(
1
),...,(1
1
1
1 tpn
tp
n
ttbn
i
n
in
1
),...,,,...,(),...,(
1
11111
111
n
ttttbttb
n
iniin
nn
![Page 31: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/31.jpg)
31/105
Degree Elevation Using Blossoming
)1,...,1,0,...,0()1()1,...,1,0,...,0(1
1)1,...,1,0,...,0(1 nnn binbi
nb
in 1 i in iin 1 1i
1
),...,,,...,(),...,(
1
11111
111
n
ttttbttb
n
iniin
nn
![Page 32: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/32.jpg)
32/105
Homogeneous Polynomials and Blossoming Polynomial:
Homogeneous Polynomial:
n
k
kktatP
0
)(
n
k
knkk wtawtP
0
),(
)()1,( tPtP
![Page 33: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/33.jpg)
33/105
The Homogeneous Blossom
Homogenize each parameter of the blossom independently
)),(),...,,(),,(( 2211 nn wtwtwtb223)( tttp
2121
21 22
3),( tttt
ttb
![Page 34: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/34.jpg)
34/105
The Homogeneous Blossom
Homogenize each parameter of the blossom independently
)),(),...,,(),,(( 2211 nn wtwtwtb223)( tttp
2121
21 22
3),( tttt
ttb
211221
212211 22
3)),(),,(( ttwtwt
wwwtwtb
22 23),( ttwwwtp
![Page 35: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/35.jpg)
35/105
The Homogeneous Blossom
Homogenize each parameter of the blossom independently
)),(),...,,(),,(( 2211 nn wtwtwtb
)),(),...,,(()),(),...,,(()),(),...,,(( 111111 vswtburwtbwtwtb vruswrut
vrustvws
homogenized combinations
![Page 36: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/36.jpg)
36/105
The Homogeneous Blossom
Homogenize each parameter of the blossom independently
)),(),...,,(),,(( 2211 nn wtwtwtb
)),(),...,,(()),(),...,,(()),(),...,,(( 111111 vswtburwtbwtwtb vruswrut
vrustvws
))1,1(),...,,(())1,0(),...,,(()),(),...,,(( 111111 wtbwtbwtwtb vruswrut
vrustvws
![Page 37: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/37.jpg)
37/105
The Homogeneous Blossom
Homogenize each parameter of the blossom independently
)),(),...,,(),,(( 2211 nn wtwtwtb
)),(),...,,(()),(),...,,(()),(),...,,(( 111111 vswtburwtbwtwtb vruswrut
vrustvws
))1,1(),...,,(())1,0(),...,,(()),(),...,,(( 11111111 wtbwtbwtwtb ttw
![Page 38: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/38.jpg)
38/105
Homogeneous deCasteljau Algorithm
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
tw tw tw t tt
tw t tw t
)~,~,~( tttb
tw t
)~,0,0( tb )1,~,0( tb )1,1,~(tb
)~,~,0( ttb )1,~,~( ttb
),(~ wtt
Really b((0,1),(0,1),(1,1))
![Page 39: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/39.jpg)
39/105
Homogeneous deCasteljau Algorithm
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
tw tw tw t tt
tw t tw t
),~,~( ttb
1 1
)~,0,0( tb )1,~,0( tb )1,1,~(tb
)~,~,0( ttb )1,~,~( ttb
),(~ wtt )0,1(
![Page 40: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/40.jpg)
40/105
Homogeneous deCasteljau Algorithm
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
t1 t1 t1t tt
t1 t t1 t
),,( ttb
1 1
),0,0( tb )1,,0( tb )1,1,(tb
),,0( ttb )1,,( ttb
)1,(~ tt )0,1(
![Page 41: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/41.jpg)
41/105
Homogeneous deCasteljau Algorithm
)0,0,0(b )1,0,0(b )1,1,0(b )1,1,1(b
t1 t1 t1t tt
t1 t t1 t
),,( ttb
1 1
),0,0( tb )1,,0( tb )1,1,(tb
),,0( ttb )1,,( ttb
)1,(~ tt )0,1(
Homogeneous blossom evaluated at (t,1) and (1,0) yields derivatives!!!
![Page 42: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/42.jpg)
42/105
Homogeneous Blossoms and Derivatives
),...,()( ttbtp
),,...,()(' ttnbtp
),...,,,...,()!(
!)()( ttb
kn
ntp k
n
1n
kn k
![Page 43: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/43.jpg)
43/105
Problems with Bezier Curves
More control points means higher degree Moving one control point affects the entire
curve
![Page 44: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/44.jpg)
44/105
Problems with Bezier Curves
More control points means higher degree Moving one control point affects the entire
curve
![Page 45: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/45.jpg)
45/105
Problems with Bezier Curves
More control points means higher degree Moving one control point affects the entire
curve
Solution: Use lots of Bezier curves and maintain Ck continuity!!!
![Page 46: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/46.jpg)
46/105
Problems with Bezier Curves
More control points means higher degree Moving one control point affects the entire
curve
Solution: Use lots of Bezier curves and maintain Ck continuity!!!
Difficult to keep track of all the constraints.
![Page 47: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/47.jpg)
47/105
B-spline Curves
Not a single polynomial, but lots of polynomials that meet together smoothly
Local control
![Page 48: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/48.jpg)
48/105
B-spline Curves
Not a single polynomial, but lots of polynomials that meet together smoothly
Local control
![Page 49: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/49.jpg)
49/105
History of B-splines
Designed to create smooth curves Similar to physical process of bending wood Early Work
de Casteljau at CitroenBezier at Renaultde Boor at General Motors
![Page 50: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/50.jpg)
50/105
B-spline Curves
Curve defined over a set of parameters t0,…,tk (ti ti+1) with a polynomial of degree n in each interval [ti, ti+1] that meet with Cn-1 continuity
ti do not have to be evenly spaced
Commonly called NURBSNon-Uniform Rational B-Splines
![Page 51: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/51.jpg)
51/105
B-Spline Basis Functions
..01
)( 10
wottt
tN iii
)()()( 11
1
11
1 tNtt
tttN
tt
tttN n
iini
inni
ini
ini
)(03 tN
![Page 52: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/52.jpg)
52/105
B-Spline Basis Functions
..01
)( 10
wottt
tN iii
)()()( 11
1
11
1 tNtt
tttN
tt
tttN n
iini
inni
ini
ini
)(04 tN
![Page 53: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/53.jpg)
53/105
B-Spline Basis Functions
..01
)( 10
wottt
tN iii
)()()( 11
1
11
1 tNtt
tttN
tt
tttN n
iini
inni
ini
ini
)(13 tN
![Page 54: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/54.jpg)
54/105
B-Spline Basis Functions
..01
)( 10
wottt
tN iii
)()()( 11
1
11
1 tNtt
tttN
tt
tttN n
iini
inni
ini
ini
)(14 tN
![Page 55: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/55.jpg)
55/105
B-Spline Basis Functions
..01
)( 10
wottt
tN iii
)()()( 11
1
11
1 tNtt
tttN
tt
tttN n
iini
inni
ini
ini
)(23 tN
![Page 56: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/56.jpg)
56/105
B-Spline Basis Functions
..01
)( 10
wottt
tN iii
)()()( 11
1
11
1 tNtt
tttN
tt
tttN n
iini
inni
ini
ini
)(24 tN
![Page 57: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/57.jpg)
57/105
B-Spline Basis Functions
..01
)( 10
wottt
tN iii
)()()( 11
1
11
1 tNtt
tttN
tt
tttN n
iini
inni
ini
ini
)(33 tN
![Page 58: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/58.jpg)
58/105
B-Spline Curves
m
i
nii tNptp
1
)()(
![Page 59: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/59.jpg)
59/105
B-Splines Via Blossoming
),,( 321 tttb
14
4
tt
tt
14
1
tt
tt
),,( 32 tttb
),,( 432 tttb
![Page 60: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/60.jpg)
60/105
B-Splines Via Blossoming
),,( 321 tttb
tt 4 1tt
),,( 32 tttb
),,( 432 tttb
![Page 61: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/61.jpg)
61/105
B-Splines Via Blossoming
),,( 321 tttb
tt 4tt 5
tt 61tt 3tt 2tt
tt 4 2tt tt 5 3tt
),,( tttbtt 4 3tt
),,( 32 tttb ),,( 43 tttb ),,( 54 tttb
),,( 3 tttb ),,( 4 tttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
Single polynomial
![Page 62: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/62.jpg)
62/105
B-Splines Via Blossoming
),,( 321 tttb
tt 4tt 5
tt 61tt 3tt 2tt
tt 4 2tt tt 5 3tt
),,( tttbtt 4 3tt
),,( 32 tttb ),,( 43 tttb ),,( 54 tttb
),,( 3 tttb ),,( 4 tttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
43 ttt
![Page 63: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/63.jpg)
63/105
B-Splines Via Blossoming
),,( 321 tttb
tt 4tt 51tt 2tt
tt 4 2tt
),,( 32 tttb ),,( 43 tttb
),,( 3 tttb
),,( 432 tttb ),,( 543 tttb),,( 210 tttb
tt 3 0tt
tt 3 1tt
),,( tttbtt 3 2tt
),,( 21 tttb
),,( 2 tttb
32 ttt
![Page 64: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/64.jpg)
64/105
B-Splines Via Blossoming
),,( 321 tttb
tt 4tt 5
tt 61tt 3tt 2tt
tt 4 2tt tt 5 3tt
),,( tttbtt 4 3tt
),,( 32 tttb ),,( 43 tttb ),,( 54 tttb
),,( 3 tttb ),,( 4 tttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb),,( 210 tttb
tt 3 0tt
tt 3 1tt
),,( tttbtt 3 2tt
),,( 21 tttb
),,( 2 tttb
![Page 65: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/65.jpg)
65/105
B-Splines Via Blossoming
),,( 321 tttb
1 1 11 11
tt 4 2tt tt 5 3tt
),,( ttbtt 4 3tt
),,( 32 ttb ),,( 43 ttb ),,( 54 ttb
),,( 3 ttb ),,( 4 ttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb),,( 210 tttb
1 1
tt 3 1tt
),,( ttbtt 3 2tt
),,( 21 ttb
),,( 2 ttb
![Page 66: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/66.jpg)
66/105
B-Splines Via Blossoming
),,( 321 tttb
1 1 11 11
1 1 1 1
),,( tbtt 4 3tt
),,( 32 ttb ),,( 43 ttb ),,( 54 ttb
),,( 3 tb ),,( 4 tb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb),,( 210 tttb
1 1
1 1
),,( tbtt 3 2tt
),,( 21 ttb
),,( 2 tb
![Page 67: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/67.jpg)
67/105
B-Splines Via Blossoming
),,( 321 tttb
1 11 1
1 1
),,( 32 ttb ),,( 43 ttb
),,( 3 tb
),,( 432 tttb ),,( 543 tttb
n-1 derivatives are equal yielding Cn-1 continuity!!!
![Page 68: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/68.jpg)
68/105
B-Splines Via Blossoming
),,( 221 tttb
tt 3 tt 4tt 51tt 2tt 2tt
tt 3 2tt tt 4 2tt
),,( tttbtt 4 3tt
),,( 22 tttb ),,( 32 tttb ),,( 43 tttb
),,( 2 tttb ),,( 3 tttb
),,( 322 tttb ),,( 432 tttb ),,( 543 tttb),,( 210 tttb
tt 2 0tt
tt 2 1tt
),,( 21 tttb
),,( 2 tttb
),,( 101 tttb
tt 2
tt 2
),,( tttbtt 2 1tt
),,( 10 tttb
),,( 1 tttb
0tt
1 tt
![Page 69: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/69.jpg)
69/105
B-Splines Via Blossoming
),,( 221 tttb
1 1
),,( 22 ttb
),,( 322 tttb
n-2 derivatives are equal yielding
Cn-2 continuity at doubled knot!!!
![Page 70: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/70.jpg)
70/105
B-Splines Via Blossoming
),,( 221 tttb
1 1
),,( 22 ttb
),,( 322 tttb
In general, curves have Cn-u
continuity at knot of multiplicity u
![Page 71: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/71.jpg)
71/105
Conversion to Bezier Form
),,( 321 tttb
tt 4tt 5
tt 61tt 3tt 2tt
tt 4 2tt tt 5 3tt
),,( tttbtt 4 3tt
),,( 32 tttb ),,( 43 tttb ),,( 54 tttb
),,( 3 tttb ),,( 4 tttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
![Page 72: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/72.jpg)
72/105
Conversion to Bezier Form
),,( 321 tttb
34 tt 35 tt 13 tt 23 tt
tt 4 23 tt
),,( 332 tttb ),,( 343 tttb
),,( 333 tttb
),,( 432 tttb ),,( 543 tttb
![Page 73: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/73.jpg)
73/105
Conversion to Bezier Form
45 tt 46 tt 34 tt 24 tt
45 tt 34 tt
),,( 443 tttb ),,( 454 tttb
),,( 444 tttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
![Page 74: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/74.jpg)
74/105
Polynomial Reproduction
Given a polynomial p(t) and a set of knots t1, t2, t3, …, find control points for the b-spline curve that produces p(t)
![Page 75: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/75.jpg)
75/105
Polynomial Reproduction
Given a polynomial p(t) and a set of knots t1, t2, t3, …, find control points for the b-spline curve that produces p(t)
32 4321)( ttttp
![Page 76: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/76.jpg)
76/105
Polynomial Reproduction
Given a polynomial p(t) and a set of knots t1, t2, t3, …, find control points for the b-spline curve that produces p(t)
32 4321)( ttttp
32133321 4321),,( 313221321 uuuuuub uuuuuuuuu
![Page 77: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/77.jpg)
77/105
Polynomial Reproduction
Given a polynomial p(t) and a set of knots t1, t2, t3, …, find control points for the b-spline curve that produces p(t)
32 4321)( ttttp
32133321 4321),,( 313221321 uuuuuub uuuuuuuuu
),...,,(),,,(),,,(),,,( 654543432321 tttbtttbtttbtttb
Control points!!!
![Page 78: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/78.jpg)
78/105
Knot Insertion
Given a B-spline curve with knot sequence …, tk-2, tk-1, tk, tk+1, tk+2, tk+3, … generate the control points for an identical B-spline curve over the knot sequence …, tk-2, tk-1, tk, u, tk+1, tk+2, tk+3, …
![Page 79: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/79.jpg)
79/105
Boehm’s Knot Insertion Algorithm
Given curve with knots t1, t2, t3, t4, t5, t6, find curve with knots t1, t2, t3, u, t4, t5, t6
![Page 80: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/80.jpg)
80/105
Boehm’s Knot Insertion Algorithm
Given curve with knots t1, t2, t3, t4, t5, t6, find curve with knots t1, t2, t3, u, t4, t5, t6
),,( 321 tttb
ut 4ut 5
ut 61tu 3tu 2tu
),,( 32 uttb ),,( 43 uttb ),,( 54 uttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
![Page 81: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/81.jpg)
81/105
Boehm’s Knot Insertion Algorithm
Given curve with knots t1, t2, t3, t4, t5, t6, find curve with knots t1, t2, t3, u, u, t4, t5, t6
),,( 321 tttb
ut 4ut 5
ut 61tu 3tu 2tu
),,( 32 uttb ),,( 43 uttb ),,( 54 uttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
ut 4 2tu ut 5 3tu ),,( 3 uutb ),,( 4 uutb
![Page 82: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/82.jpg)
82/105
The Oslo Algorithm
Given curve with knots t1, t2, t3, t4, t5, t6, find curve with knots t1, t2, t3, u1, u2, u3, u4, t4, t5, t6
![Page 83: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/83.jpg)
83/105
The Oslo Algorithm
Given curve with knots t1, t2, t3, t4, t5, t6, find curve with knots t1, t2, t3, u1, u2, u3, u4, t4, t5, t6
),,( 321 tttb
14 ut 15 ut 16 ut 11 tu 31 tu
21 tu ),,( 143 uttb ),,( 154 uttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
24 ut 22 tu 25 ut 32 tu ),,( 213 uutb ),,( 214 uutb
),,( 132 uttb
),,( 321 uuub
34 ut 33 tu
![Page 84: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/84.jpg)
84/105
The Oslo Algorithm
Given curve with knots t1, t2, t3, t4, t5, t6, find curve with knots t1, t2, t3, u1, u2, u3, u4, t4, t5, t6
),,( 321 tttb
44 ut 45 ut 46 ut 14 tu 34 tu
24 tu ),,( 443 uttb ),,( 454 uttb
),,( 432 tttb ),,( 543 tttb ),,( 654 tttb
34 ut 23 tu 35 ut 33 tu ),,( 433 uutb ),,( 434 uutb
),,( 432 uttb
),,( 432 uuub
24 ut 32 tu
![Page 85: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/85.jpg)
85/105
Degree Elevation for B-splines
Degree n B-splines meet with Cn-1 continuity Degree n+1 B-splines meet with Cn continuity Must double knots to maintain same degree
of continuity!!!
1
),...,,,...,(),...,(
1
11111
111
n
ttttbttb
n
iniin
nn
![Page 86: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/86.jpg)
86/105
Subdivision for Non-Uniform B-splines Given a knot sequence t1, t2, t3, t4, …, insert
knots u1, u2, u3, u4, … such that ti ui ti+1
![Page 87: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/87.jpg)
87/105
Subdivision for Non-Uniform B-splines Given a knot sequence t1, t2, t3, t4, …, insert
knots u1, u2, u3, u4, … such that ti ui ti+1
Double control points At level 0<k<n+1, insert knots uk-1, uk, uk,
uk+1, uk+1, … into pyramid
![Page 88: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/88.jpg)
88/105
Schaefer’s Algorithm
)( 1tb )( 1tb )( 2tb )( 2tb )( 3tb )( 3tb )( 4tb )( 4tb
)( 1ub )( 2ub )( 3ub
3u
)( 4tb)( 3tb)( 2tb)( 1tb
0u1u 1u 2u 2u 3u
![Page 89: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/89.jpg)
89/105
Schaefer’s Algorithm
),( 2ub
),( 1tb 2t ),( 2tb 3t ),( 3tb4t ),( 4tb 5t
),( 1ub 2t 3t ),( 3ub 4t
0u1u 1u 2u 2u 3u 3u
),( 1tb 2t
),( 1tb 2t
),( 2tb 3t
),( 2tb 3t
),( 3tb4t
),( 3tb4t
),( 4tb 5t
),( 4tb 5t
![Page 90: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/90.jpg)
90/105
Schaefer’s Algorithm
),( 2ub
),( 1tb 2t ),( 2tb 3t ),( 3tb4t ),( 4tb 5t
),( 1ub 2t 3t ),( 3ub 4t
),( 21 tub ),( 22 utb ),( 32 tub ),( 33 utb ),( 43 tub ),( 44 utb
0u1u 1u 2u 2u 3u 3u
1u 2u 2u 3u 3u 4u
),( 1tb 2t
),( 1tb 2t
),( 2tb 3t
),( 2tb 3t
),( 3tb4t
),( 3tb4t
),( 4tb 5t
),( 4tb 5t
![Page 91: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/91.jpg)
91/105
Schaefer’s Algorithm
),,( 21 tub ),,( 22 utb ),,( 32 tub ),,( 33 utb ),,( 43 tub ),,( 44 utb
),,( 1tb 2t 3t ),,( 2tb 3t 4t ),,( 3tb4t 5t ),,( 4tb 5t 6t
),,( 1ub 2t 3t ),,( 2ub 3t 4t ),,( 3ub 4t 5t
3t 3t 4t 4t 5t 5t
0u1u 1u 2u 2u 3u 3u
1u 2u 2u 3u 3u 4u
),,( 4tb 5t 6t
),,( 4tb 5t 6t
),,( 1tb 2t 3t
),,( 1tb 2t 3t
),,( 2tb 3t 4t
),,( 2tb 3t 4t
),,( 3tb4t 5t
),,( 3tb4t 5t
![Page 92: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/92.jpg)
92/105
Schaefer’s Algorithm
),,( 21 tub ),,( 22 utb ),,( 32 tub ),,( 33 utb ),,( 43 tub ),,( 44 utb
),,( 1tb 2t 3t ),,( 2tb 3t 4t ),,( 3tb4t 5t ),,( 4tb 5t 6t
),,( 1ub 2t 3t ),,( 2ub 3t 4t ),,( 3ub 4t 5t
3t 3t 4t 4t 5t 5t
),,( 322 tutb ),,( 332 utub ),,( 433 tutb ),,( 443 utub ),,( 544 tutb
0u1u 1u 2u 2u 3u 3u
1u 2u 2u 3u 3u 4u
2u 3u 3u 4u 4u
),,( 4tb 5t 6t
),,( 4tb 5t 6t
),,( 1tb 2t 3t
),,( 1tb 2t 3t
),,( 2tb 3t 4t
),,( 2tb 3t 4t
),,( 3tb4t 5t
),,( 3tb4t 5t
![Page 93: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/93.jpg)
93/105
Schaefer’s Algorithm
),,( 21 tub ),,( 22 utb ),,( 32 tub ),,( 33 utb ),,( 43 tub ),,( 44 utb
),,( 1tb 2t 3t ),,( 2tb 3t 4t ),,( 3tb4t 5t ),,( 4tb 5t 6t
),,( 1ub 2t 3t ),,( 2ub 3t 4t ),,( 3ub 4t 5t
3t 3t 4t 4t 5t 5t
),,( 322 tutb ),,( 332 utub ),,( 433 tutb ),,( 443 utub ),,( 544 tutb
0u1u 1u 2u 2u 3u 3u
1u 2u 2u 3u 3u 4u
2u 3u 3u 4u 4u
),,( 4tb 5t 6t
),,( 4tb 5t 6t
),,( 1tb 2t 3t
),,( 1tb 2t 3t
),,( 2tb 3t 4t
),,( 2tb 3t 4t
),,( 3tb4t 5t
),,( 3tb4t 5t
![Page 94: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/94.jpg)
94/105
B-spline Properties
Piecewise polynomial Cn-u continuity at knots of multiplicity u Compact support Non-negativity implies local convex hull
property Variation Diminishing
![Page 95: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/95.jpg)
95/105
B-spline Curve Example
![Page 96: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/96.jpg)
96/105
B-spline Curve Example
![Page 97: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/97.jpg)
97/105
B-spline Curve Example
![Page 98: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/98.jpg)
98/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
![Page 99: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/99.jpg)
99/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
kikii ppt 1
![Page 100: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/100.jpg)
100/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
kikii ppt 1
0Uniform parameterization
![Page 101: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/101.jpg)
101/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
kikii ppt 1
21
Centripetal parameterization
![Page 102: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/102.jpg)
102/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
kikii ppt 1
1
Chord length parameterization
![Page 103: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/103.jpg)
103/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
kikii ppt 1
0Uniform parameterization
![Page 104: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/104.jpg)
104/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
kikii ppt 1
21
Centripetal parameterization
![Page 105: 1 Dr. Scott Schaefer Blossoming and B-splines. 2/105 Blossoms/Polar Forms A blossom b(t 1,t 2,…,t n ) of a polynomial p(t) is a multivariate function](https://reader035.vdocument.in/reader035/viewer/2022062422/56649eb75503460f94bc098e/html5/thumbnails/105.jpg)
105/105
Choosing Knot Values
B-splines dependent on choice of knots ti
Can we choose ti automatically?
kikii ppt 1
1
Chord length parameterization