Shape Modification - Moving Control Points

To modify the shape of a surface, one can change the position of control points, and remove a row or a column of control points. If the surface is a rational Bézier or a NURBS surface, one can change the weight of a control point. If the surface is a B-spline or a NURBS, one can also change the positions of knots. Note that one cannot add control points; but, one can add knots by knot insertion without changing the shape of the surface. This page focuses on moving and deleting control points.

Modifying the Positions of Control Points

As mentioned on the Quick Tour page, using the right mouse button to click on a control point will bring up the Control Point Update Window. Then, one can drag the small disk in one of the three small windows to change the position of the selected control point in the xy-, xz- and yz-direction. The following left figure shows a Bézier surface defined by four rows and four columns. If we carefully adjust the positions of the four corner control points so that they are collinear with their neighboring control points, we shall have a planar surface as shown in the right figure below. Note that scene rotation is used to bring the control points parallel to the screen so that we can accurately adjusting the positions of corner control points. The resulting surface looks circular; but it is not because Bézier surface is not rational and thus cannot represent a disk accurately.

Now rotate the scene or the surface (i.e., the "disk") so that it is approximately horizontal as shown in the left figure below. Then, moving the center four control points up, we shall get a surface like the right figure below.

There is another way to initiate the modification of control points. Select Edit, followed by Edit Control Point, followed Move Control Point. This will bring up the Control Point Update Window. Then, use the right mouse button to select a control point and use the left button to drag the small disk to move the selected control point.

Delete Control Points

Control points cannot be deleted arbitrarily. This system only allows the user to remove a row or a column of control points. As a result, the degree and knot vector in that direction will be adjusted to reflect the change. The figures below show a B-spline surface defined by six rows and five columns of control points with degree three in both directions. The left one uses wireframe while the right one is rendered.

Now let us delete the second row (i.e., row 1). All control points are marked with white rectangles. Select Edit, followed by Edit Control Point, followed by Delete Control Point by Row. Then, the cursor changes to a skull. Move this "delete" cursor on top of any control point on the second row and click the right mouse button. The result is a new B-spline surface (see below) defined by five rows and five columns of control points. The degree in each direction is unchanged; however, a knot vector will be modified to reflect this change. Note that the front side of the new surface becomes flatter than the original.

Let us delete the third column (i.e., column 2) of the above B-spline surface. The five control points on the third column are marked with white rectangles. Select Edit, followed by Edit Control Point, followed by Delete Control Point by Column. The result is the following B-spline surface, which is defined by five rows and four columns. Please compare the difference between the surface below and the surface above.