1 / 24

Lecture on Splines, Cubic Curves, and Interpolation

This lecture covers various topics related to splines, cubic curves, and interpolation, including linear and Hermite interpolation, spline basis functions, Catmull-Rom splines, Bezier curves, and more. It also explores the applications of these techniques in areas like visualization, robotics, and realistic rendering and animation.

madelinea
Download Presentation

Lecture on Splines, Cubic Curves, and Interpolation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 15 Splines, Cubic Curves, and Interpolation Friday, 27 February 2004 William H. Hsu Department of Computing and Information Sciences, KSU http://www.kddresearch.org http://www.cis.ksu.edu/~bhsu Readings: Chapters 7, 11, Foley et al. Reference: Chapter 9, 10.1, 10.6-10.13, 10.16-10.17, Hearn and Baker 2e Next Class: 12.1-12.5, Foley et al.

  2. Splines

  3. Linear Interpolation

  4. Hermite Interpolation

  5. Hermite Interpolation

  6. Hermite Basis Matrix

  7. Hermite Basis Functions

  8. Catmull-Rom Spline

  9. Bezier Curve

  10. Chaiken’s Algorithm

  11. Bezier Curves

  12. Properties

  13. Subdivision and Extrapolation

  14. Piecewise Curves

  15. Bernstein Polynomials

  16. Bernstein Polynomials

  17. Turn To A Partner Exercise [1] • In-Class Exercise: Turn to A Partner • CG projects • Applications to visualization • Robotics • Realistic rendering and animation • List one • Methodology (if any) your projects share in common • Obstacle (if any) your projects share in common • After-class exercise: think about common obstacles (send e-mail or post)

  18. Turn To A Partner Exercise [2] • Team 1: • Team 2:

  19. Turn To A Partner Exercise [3] • Team 3: • Team 4:

  20. Turn To A Partner Exercise [3] • Team 5: • Team 6: • Team 7:

  21. Bicubic Surfaces • Readings • Sections 11.3, 12.1-12.5, Foley et al • Optional reference: Chapter 9, 10.1, 10.6-10.13, 10.16-10.17, Hearn and Baker 2e • Quick Review: Properties of Cubic Curves and Splines • Splines: B- (UN, NUN, NURNURBS), Beta- (-), Catmull-Rom, Kochanek-Bartels • Uniformity, rationality, continuity, control point and polygon properties • Interpolating Cubic Curves and Surfaces • deCasteljau’s algorithm for curves • Bicubic surface interpolation (concluded) • 3D Graphics Data Structures • This time: boundary representations (akaB-reps) • Next time: spatial partitioning representations • Visible Surface Determination (VSD): Introduction • Role of graphics data structures in VSD (more later) • Graphics data structures in computational geometry • Next Lecture: Basics of Constructive Solid Geometry (Survey)

  22. Comparison of Cubic Curves • Hermite • Blend 4 functions; no CP; full interpolation; C1 and G1 with constraints; fast • Bézier • Convex CP; interpolate 2 of 4 control points; C1 and G1 with constraints; fastest • B-splines • Uniform, nonrational • Convex CP, 4 points each, no interpolation; C2 and G2; medium • Nonuniform, nonrational • Convex CP, 5 points each, "no interpolation”; “up to” C2 and G2; slow • Nonuniform, rational • Convex CP, 5 points each, "no interpolation”; rational; “up to” C2 and G2; slow • Beta Splines (-Splines) • Convex CP; 6 points to control curve (4 local points, 2 global); C1 and G2; medium • Catmull-Rom Splines • General CP; interpolate or approximate 4 points per CP; C1 and G1; medium • Kochanek-Bartels Splines • General CP; interpolate 7 points per CP; C1 and G1; medium

  23. P1 P2 P0 P3 Interpolating Curves [1]:Recursive Subdivision • Intuitive Idea • Given • Curve (Bézier or uniform B-spline) defined using control polygons (CPs) • 4 control points P0, P1, P2, P3 • Problem: can’t get quite the right curve shape (not enough control points) • Solutions: increase degree of polynomial segments OR add CPs • Technique: recursive subdivision algorithm • Add control points by splitting existing CP up recursively • Compute CPs for left curveL0, L1, L2, L3, right curveR0, R1, R2, R3 • Stop when variation (curve-to-control point distance) is low enough • Purpose: display curve OR allow new control points to be manipulated

  24. P1 P2 P0 P3 Interpolating Curves [2]:deCasteljau’s Algorithm • Recursive Subdivision Algorithm for Interpolation [deCasteljau, 1959] • Purpose: display curve OR allow new control points to be manipulated • Display: fast and cheap (see below) • Properties • Cheap: can implement using subdivision matrices (Equations 11.52, 11.53, FVD) • Fast: rapid convergence due to… • Variation-diminishing property • Monotonic convergence to curve • Holds for all splines with convex-hull CPs • When Does It Work? • Uniform splines (uniformly-spaced knots) • Q: Can we subdivide NURBS? • A: Yes, by adding knots (expensive) [Böhm, 1980; Cohen et al, 1980] • Alternative approach: hierarchical B-splines [Forsey and Bartels, 1988]

More Related