
CS148: Introduction to Computer Graphics and Imaging Splines and Curves Topics Splines Cubic Hermite interpolation Matrix representation of cubic polynomials Catmull-Rom interpolation Curves Bezier curve Chaiken’s subdivision algorithm Properties of Bezier curves CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 1 Cubic Hermite Interpolation Cubic Hermite Interpolation Given: values and derivatives at 2 points CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 2 Cubic Hermite Interpolation Assume cubic polynomial Solve for coefficients: CS148 Lecture 8 Pat Hanrahan, Fall 2009 Matrix Representation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 3 Matrix Representation of Polynomials CS148 Lecture 8 Pat Hanrahan, Fall 2009 Hermite Basis Matrix CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 4 Catmull-Rom Interpolation Catmull-Rom Interpolation Interpolate points smoothly Slopes not given though CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 5 Catmull-Rom Interpolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Catmull-Rom Interpolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 6 Catmull-Rom Interpolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Catmull-Rom Interpolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 7 Catmull-Rom Interpolation Tangent vectors CS148 Lecture 8 Pat Hanrahan, Fall 2009 Catmull-Rom To Hermite Interpolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 8 Bezier Curves Paths Capabilities 1. Smooth curves 2. Line and curve segments 3. Sharp corners CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 9 Cubic Bezier Curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Bezier To Hermite Interpolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 10 Subdivision Quadratic Bezier Curve (3 Pts) CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 11 Chaiken’s Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Chaiken’s Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 12 Chaiken’s Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Chaiken’s Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 13 Cubic Bezier Curve (4 Pts) CS148 Lecture 8 Pat Hanrahan, Fall 2009 Bezier Curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 14 Bezier Curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Bezier Curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 15 Bezier Curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Properties Property 1: Interpolate end points Property 2: Tangents Property 3: Convex hull property CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 16 Extrapolation and Subdivision Bezier Curve - Extrapolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 17 Bezier Curve - Extrapolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Bezier Curve - Extrapolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 18 Bezier Curve - Extrapolation CS148 Lecture 8 Pat Hanrahan, Fall 2009 Bezier Curve Original Bezier Curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 19 Bezier Curve New Bezier Curve Can run the algorithm in reverse to get the original control points. Can prove that the original curve is a piece of the new curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Bezier Curve Evaluate the algorithm at t=1/2 This subdivides the curve into two pieces Left Bezier Curve Right Bezier Curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 20 Applications of Subdivision Drawing Bezier curve ?? Intersect two Bezier curves ?? CS148 Lecture 8 Pat Hanrahan, Fall 2009 Continuity between 2 Bezier Curves 3rd point of the 1st curve is the same as the 1st point of the 2nd curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 21 Continuity between 2 Bezier Curves Tangent of the 1st curve is equal to the tangent of the 2nd curve CS148 Lecture 8 Pat Hanrahan, Fall 2009 Demo of Bezier Curves Page 22 TrueType Quadratic Bezier Splines Successive control points are marked as either on or off the curve http://freetype.sourceforge.net/freetype2/docs/glyphs/glyphs-6.html CS148 Lecture 8 Pat Hanrahan, Fall 2009 Pyramid Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 23 Pyramid Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Pyramid Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 24 Pyramid Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Pyramid Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 25 Bernstein Polynomials CS148 Lecture 8 Pat Hanrahan, Fall 2009 Pyramid Algorithm CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 26 Things to Remember Splines Cubic Hermite interpolation Matrix representation of cubic polynomials Catmull-Rom (CR) splines How to think of CR in terms of Hermite spline Curves Bezier curve (BC) How to think of BC in terms of Hermite spline Chaiken’s algorithm Subdivision algorithm including applications Properties of Bezier curves CS148 Lecture 8 Pat Hanrahan, Fall 2009 Page 27 .
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages27 Page
-
File Size-