Next: 2. Differential Geometry of Up: 1. Representation of Curves Previous: 1.4.4 B-spline surface   Contents   Index

1.5 Generalization of B-spline to NURBS

Non-Uniform Rational B-Spline (NURBS) curves and surface patches [433,314] are the most popular representation method in CAD/CAM due to their generality, excellent properties and incorporation in international standards such as IGES (Initial Graphics Exchange Specification) [182] and STEP (Standard for the Exchange of Product Model Data) [429]. The NURBS functions have the same properties as integral B-splines, and are capable of representing a wider class of geometries. The NURBS curve is represented in a rational form
    (1.87)

where is a weighting factor and is the B-spline basis function. If all the weights are equal to one, the integral B-spline is recovered. If the number of control points equals the order of the NURBS curve, then the curve reduces to a rational Bézier curve
    (1.88)

The NURBS formulation permits exact representation of conics, such as circle, ellipse and hyperbola.

Example 1.5.1. Let us express the first quadrant of an ellipse as a rational Bézier curve as shown in Fig. 1.15. A parametric representation of such ellipse segment is given by

     

where is an angle parameter. If we set
     

then
     

Therefore the first quadrant of the ellipse can be described by
    (1.89)

On the other hand a third order rational Bézier curve is given by
    (1.90)

By equating the denominators of (1.89) and (1.90), we find the weights to be , and . The three control points , , can then be easily obtained by the end points geometric property of the Bézier curve as , , and .

Figure 1.15: The first quadrant of an ellipse described by a rational Bézier curve

A NURBS surface patch can be represented as

    (1.91)

where is a weighting factor. This formulation allows for exact representation of quadrics, tori, surfaces of revolution and very general free-form surfaces. If all , the integral B-spline surface is recovered. If the number of control points are equal to the order of the B-spline basis function in both parameters and , then the NURBS surface reduces to a rational Bézier surface patch:
    (1.92)

Figure 1.16: 1/16 of a torus represented by a rational Bézier surface patch

Example 1.5.2. Let us express 1/16th of a torus (in the first octant of a coordinate frame) as a rational Bézier surface as shown in Fig. 1.16. A parametric representation of such a toroidal surface patch is given by

     

where and are angle parameters, , and , , are unit vectors having the directions of the positive , and axes, respectively. If we set
     

then
     

Thus the toroidal surface patch under consideration can be described by
     
    (1.93)

Now we will convert this rational polynomial surface patch into a rational Bézier surface patch. A biquadratic Bézier surface is given by
    (1.94)

By equating the denominators of (1.93) and (1.94), we find the weights to be
 
 
 

The nine control points , can then be easily obtained by the end points geometric property of the Bézier surface as:

, ,




Next: 2. Differential Geometry of Up: 1. Representation of Curves Previous: 1.4.4 B-spline surface   Contents   Index
December 2009