29
1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

  • View
    237

  • Download
    2

Embed Size (px)

Citation preview

Page 1: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

1

Dr. Scott Schaefer

Catmull-Rom Splines: Combining B-splines and Interpolation

Page 2: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

2/29

Disadvantages of B-splines

B-splines don’t interpolate vertices

Page 3: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

3/29

Disadvantages of Lagrange Interpolation Lagrange interpolation lacks local control

Page 4: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

4/29

Catmull-Rom Splines

Given a set of points pk at parameter values tk, construct a curve C(t) such that C(tk)=pk, C(t) is smooth and C(t) has local control

Combining B-splines and Lagrange interpolation satisfies all of these properties!!

Page 5: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

5/29

Neville’s Algorithm

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(0123 tP

0tt tt 2 tt 3 1tt

tt 3 0tt

Page 6: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

6/29

B-Spline Curves

m

i

nii tNptp

1

)()(

Page 7: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

7/29

Catmull-Rom Splines

m

inii

nin tPtNtC

1,...,

1 )()()(

Page 8: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

8/29

Catmull-Rom Splines

m

inii

nin tPtNtC

1,...,

1 )()()(

1degree n ndegree12degree n

Page 9: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

9/29

Catmull-Rom Splines

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(12 tC

0tt tt 2 tt 3 1tt

tt 2 1tt

tt 4 3tt

)(34 tP

)(234 tP

)(23 tC

tt 4 2tt

tt 3 2tt

4p

Page 10: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

10/29

Catmull-Rom Splines

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(12 tC

0tt tt 2 tt 3 1tt

tt 4 3tt

)(34 tP

)(234 tP

)(23 tC

tt 4 2tt

4p

Lag

rang

ede

Boo

r

tt 2 1tt tt 3 2tt

Page 11: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

11/29

Catmull-Rom Splines

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(0123 tP

0tt tt 2 tt 3 1tt

tt 3 0tt

tt 4 3tt

)(34 tP

)(234 tP

)(1234 tP

tt 4 2tt

tt 4 1tt

4p

tt 5 4tt

)(45 tP

)(345 tP

)(2345 tP

tt 5 3tt

tt 5 2tt

5p

tt 6 5tt

)(56 tP

)(456 tP

)(3456 tP

tt 6 4tt

tt 6 3tt

6p

)(123 tC )(234 tC

)(23 tC

)(345 tC

)(34 tC

Lag

rang

ede

Boo

r

tt 3 1tt tt 4 2tt

tt 3 2tt

tt 5 3tt

tt 4 3tt

Page 12: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

12/29

Catmull-Rom Spline Properties

Piecewise polynomial of degree 2n-1 Local control Interpolate pk at knots tk Cn-1 continuity at knots

Page 13: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

13/29

Catmull-Rom Spline Properties

Piecewise polynomial of degree 2n-1 Local control Interpolate pk at knots tk Cn-1 continuity at knots

m

inii

nin tPtNtC

1,...,

1 )()()(

Page 14: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

14/29

Catmull-Rom Spline Properties

Piecewise polynomial of degree 2n-1 Local control Interpolate pk at knots tk Cn-1 continuity at knots

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(12 tC

0tt tt 2 tt 3 1tt

tt 2 1tt

tt 4 3tt

)(34 tP

)(234 tP

)(23 tC

tt 4 2tt

tt 3 2tt

4p

Page 15: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

15/29

Catmull-Rom Spline Properties

Piecewise polynomial of degree 2n-1 Local control Interpolate pk at knots tk Cn-1 continuity at knots

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(12 tC

0tt tt 2 tt 3 1tt

tt 2 1tt

tt 4 3tt

)(34 tP

)(234 tP

)(23 tC

tt 4 2tt

tt 3 2tt

4p

Page 16: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

16/29

Catmull-Rom Spline Properties

Piecewise polynomial of degree 2n-1 Local control Interpolate pk at knots tk Cn-1 continuity at knots

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

? 2p 2p

2p 2p

2212 )( ptC

0tt tt 2 tt 3 1tt

tt 2 1tt

tt 4 3tt

?

2p

2223 )( ptC

tt 4 2tt

tt 3 2tt

4p

Page 17: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

17/29

Catmull-Rom Spline Properties

Piecewise polynomial of degree 2n-1 Local control Interpolate pk at knots tk Cn-1 continuity at knots

Page 18: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

18/29

Smoothness of Catmull-Rom Splines

Cn-1 continuity at knots

m

inii

nin tPtNtC

1,...,

1 )()()(

Page 19: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

19/29

Smoothness of Catmull-Rom Splines

Cn-1 continuity at knots

m

inii

nin tPtNtC

1,...,

1 )()()(

C2nC

Page 20: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

20/29

Smoothness of Catmull-Rom Splines

Cn-1 continuity at knots

m

inii

nin tPtNtC

1,...,

1 )()()(

C2nC

Page 21: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

21/29

Smoothness of Catmull-Rom Splines

Cn-1 continuity at knots

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(0123 tP

0tt tt 2 tt 3 1tt

tt 3 0tt

tt 4 3tt

)(34 tP

)(234 tP

)(1234 tP

tt 4 2tt

tt 4 1tt

4p

tt 5 4tt

)(45 tP

)(345 tP

)(2345 tP

tt 5 3tt

tt 5 2tt

5p

tt 6 5tt

)(56 tP

)(456 tP

)(3456 tP

tt 6 4tt

tt 6 3tt

6p

)(123 tC )(234 tC

)(23 tC

)(345 tC

)(34 tC

Lag

rang

ede

Boo

r

tt 3 1tt tt 4 2tt

tt 3 2tt

tt 5 3tt

tt 4 3tt

Page 22: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

22/29

Smoothness of Catmull-Rom Splines

Cn-1 continuity at knots

0p 1p 2p 3p

tt 1 0tt tt 2 tt 31tt 2tt

)(01 tP )(12 tP )(23 tP

)(012 tP )(123 tP

)(0123 tC

0tt tt 2 tt 3 1tt

tt 3 0tt

tt 4 3tt

)(34 tP

)(234 tP

)(1234 tC

tt 4 2tt

tt 4 1tt

4p

tt 5 4tt

)(45 tP

)(345 tP

)(2345 tC

tt 5 3tt

tt 5 2tt

5p

tt 6 5tt

)(56 tP

)(456 tP

)(3456 tC

tt 6 4tt

tt 6 3tt

6p

)(123 tCtt 3 1tt

)(234 tC

)(23 tC

tt 4 2tt

tt 3 2tt

)(345 tC

)(34 tC

tt 5 3tt

tt 4 3tt

Lag

rang

ede

Boo

r

Page 23: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

23/29

Smoothness of Catmull-Rom Splines

Cn-1 continuity at knots

m

inii

nin tPtNtC

1,...,

1 )()()(

C2nC

Page 24: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

24/29

Smoothness of Catmull-Rom Splines

Cn-1 continuity at knots

m

inii

nin tPtNtC

11,..., )()()(

C1nC

Page 25: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

25/29

Example

Page 26: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

26/29

Example

Page 27: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

27/29

Example

Uniform Parameterization

Page 28: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

28/29

Example

Centripetal Parameterization

Page 29: 1 Dr. Scott Schaefer Catmull-Rom Splines: Combining B-splines and Interpolation

29/29

Example

Chordal Parameterization