CS157: Computer Animation
Curves modeler
In this programming assignment you'll create a modeling system for Bezier curves. You may
start with your robot code or with the camera tutorial from
CS155.
-
The user should be able to start a new curve. Initialize the curve with 4 control points in a line. The control points should be connected by a dashed
line. The curve should be drawn in a different color as a solid line.
-
The user should be able to create a new control point. It is difficult to specify
a position in 3D space so you should create the point at a "good" position; i.e. not too
close to any existing points, somewhere near the last control point, and within the current view volume.
-
The user should be able to (recursively) delete the last control point in the chain.
-
The user should be able to select and deselect an existing control point. At any point at
most one control point should be "active." Read the section of the red book on "picking"
for help with this feature.
-
The user should be able to move the "active" control point in the x, y, and z directions
in world coordinate. Provide some sort of "handle" for the active control point to
cue the user as to the available directions of movement. Design the interface so that
moving points is simple and intuitive.
-
Allow the user to specify the drawing resolution.
- Allow the user the option to have the program select control points to
ensure C1 continuity when a new curve is created. Note: the user should be able to toggle this off at any time.