Polynomial and rational Bezier curves. De Casteljau, degree elevation and subdivision algorithms. Classical and geometric continuity. Splines and the B-spline basis. De Boor and knot insertion algorithm. Parametric interpolation with splines. Tensor product. Patches di Bezier tenor product. Generalized bernstein polynomials and triangular Bezier patches.
J. Hoschek and D. Lasser, "Fundamentals of Computer Aided Geometric Design", translated from the original German edition by L.L. Schumaker, A.K. Peters, Wellesley, MA, 1993.
Farin G., "Curves and Surfaces for Computer Aided Geometric Design". A practical guide, Academic Press, Boston, MA, 1993.
Slides available for the first part of the course.
Learning Objectives
Spline functions and their B-spline representation. Matlab splines toolbox. Parametric representation of curves and surfaces. Numerical methods for computer design.
Prerequisites
Recommended courses: Calcolo Numerico, Analisi I: calcolo differenziale e integrale.
Teaching Methods
Frontal lectures and computer laboratory exercises (Matlab implementation and testing of studied algorithms)
Type of Assessment
Oral exam with open-ended questions and applicative exercises; discussion of a report containing Matlab implementations and experiments results.
Course program
Some notes of differential geometry. Polynomial and rational Bezier curves. De Casteljau, degree elevation and subdivision algorithms. Conics in Bezier form. Bezier splines. Classical and geometric continuity. The B-spline basis. De Boor and knot insertion algorithm. Paramatric interpolation with cubic splines. Difference formulas for derivtive approximations. Tensor product. Tensor product Bezier patches. Baricentric coordinates. Generalized Bernstein polynomials. Triangular Bezier patches. Delaunay triangulation. Parametric interpolation with splines on triangulations.