"An Investigation of the Modeling of Curves and Curved Surfaces Using the OpenGL API"
Nevin Steindam 2000
Abstract
The hardware and software innovations of the 1990's allow curves to be calculated and manipulated in real time as part of a larger scene. The focus of this study is the mathematic derivation of many of the common curves and curved surfaces used in computer graphics for object modeling. The final goal is to design an encompassing curve library and a series of applications that illustrate different methods for defining curves and curved surfaces, preferably so that the methods are understandable even to those who are unfamiliar with the mathematical foundations for curve generation. Lagrange, Hermite, Bezier, B-Splines, Nonuniform B-Splines, Catmull Rom Splines, and subdividable Bezier generation is addressed for both curves and curved surfaces.
QuickTime Movie 216 KB
Catmull Rom Spline tutorial with movement over time

B-Spline tutorial

NonUniform B-Spline tutorial