Object-Oriented Splines Library
Supervisor
Suitable for
Abstract
Many objects are described to computer design and animation systems as a number of curved surface pieces, called splines patches.
There are many different families of such splines (with different mathematical -- and thus aesthetic -- properties), including
Bezier, B-spline, and NURBS. One way of describing these patches is to use (normally cubic) polynomial equations, and many
implementations make this view foremost to the user. However an alternative viewpoint is to treat the patches as objects that
are combined using a small number of operations to make arbitrarily complex objects. The aim of this project would be to design
and construct an object-oriented software library for constructing and using splines in this form. The system would include
a demonstration testbed (probably written in C++ or Java) that would allow splines curved to be traced out, combined to form
one or more surface patches, and displayed in a graphics window. Experience of graphics or splines would be an advantage,
and with object-oriented design techniques a necessity.