CS 590, Fall 2017, Computer-Aided Geometric Design

Prof. Christoph M. Hoffmann

Venue and meeting time TBD

Course Information

Computer-Aided Geometric Design (CAGD) is a technology that is underlying virtually all shapes designed and manufactured. Design of cars, planes and ships are commonly-known exaples. Less widely known fields where CAGD plays a role are architecture, consumer goods such as bottles, movies and games.

We will study the basic techniques including shape design and manipulation of Bézier and B-spline curves and surfaces, as well as subdivision curves and surfaces.

The course will be run as a project course. Applications and examples are paramount. Links to resources will be posted later.


There will be three parts, each on the order of 5 weeks.

  1. Basics everyone should know:

    Projective geometry and linear algebra; implicit algebraic and parametric curves and surfaces; Bezout's theorem; Liming's construction; conversion betwen implicit and parametric curves; differential properties; geodesics; medial axis and transforms; scalar fields and level sets; orientation and quaternions; Chasles' theorem and compliant motion; linear and nonlinear shape models; direct manipulation interfaces; geometric constraints.

  2. Bezier and B-spline curves and surfaces:

    Splines in general; partition of unity; integral Bezier curves, basic properties; DeCasteljau and domain extension and reduction; degree raising; Hermite problem for cubic Bezier and B-splines; rational curves; Haar basis, knots and deBoor points; Cox-deBoor algorithm; NURBS; surface continuity; triangle patches.

  3. Subdivision curves and surfaces (to be expanded):

    Concepts, examples and applications; open vs. closed meshes; limit theorems; and more.