CS-460, Assignment # 7
Due Date: 4/26/02

In this assignment you are do write a Visual C++ MFC program that allows
the user to draw and modify a uniform cubic B-Spline curve. The user should 
be allowed to input any number of control points with the mouse. Each click 
of the left-hand mouse button provides a new control point, which should be
drawn as a small rectangle on the screen. A click of the right mouse
button should then cause the program to draw the uniform cubic B-spline
polynomial curve determined by the control points that were entered. After
the B-Spline is drawn, the program should enter a mode in which it permits
the user to use the left-hand mouse button to adjust the curve by moving
any of its control points. Pressing the left-hand mouse button over a
control point selects that point. While the button is down, the user moves
the mouse to the new position of the control point. Releasing the left-
hand button should cause the control point's rectangle to be repositioned
at the new cursor location and the B-Spline curve to be redrawn. (The old
control point and curve should, of course, disappear.) The user should be
able to perform this readjustment of the curve as many times as desired
with any of the control points.

If you wish (preferably), you may implement the adjustment of the curve
using a "rubberband" technique in which the curve stretches and contracts
while the user is moving a control point with the left-hand mouse button
down. The curve should be made "permanent" when the user releases the left
mouse button.

Regardless of which way you do the adjustment of the curve, for enhanced
performance, the forward difference method discussed in class must be
used any time the curve is plotted.