Characteristics of NURBS

 

NURBS are generally characterized by four features: Control Points, Weights, Degree, and Knot Vector.
 

Control Points are a set of model space points which approximate the actual shape (typically, the curve only interpolates these control points at the endpoints).
 

Weights are a set of scalars (one per control point) that provide an indication of the attraction that a particular control point has. The larger the weight, the more the curve will be pulled toward the associated control point. Weights are NOT used for non-rational B-splines.
 

Degree represents the number of control points which define a single segment and thus the number of adjacent segments that are blended to define each region. NURBS can give a very good approximation while maintaining a low degree.
 

Knot Vector is another set of decimals (individually they are referred to as knots) which primarily determine the parameter space of the curve. The knots form a non-decreasing sequence such that the first knot is the minimum parameter value and the last knot is the maximum parameter value. The number of knots in a specific knot vector depends on the following relation:
 

(# of knots) = (# of control points) + (degree) + 1
 

For a curve it is often convenient to think of the parameter space as a time interval [min knot, max knot]. The knot vector determines at what time you will be a certain location on a curve. Curves may be identical in shape but have very different parameter spaces. The choice of parameters will also impact the derivatives at each location (1st derivative = velocity, 2nd derivative = acceleration).
 

Example:
 

The following NURB data describes a circle centered at the origin on the XY-plane having a radius 10.
 

Degree: 2

 

Control Points: { (10,0,0), (10,-10,0), (0,-10,0), (-10,-10,0),

(-10,0,0), (-10,10,0), (0,10,0), (10,10,0), (10,0,0) }

Weights: { 1, 0.7071, 1, 0.7071, 1, 0.7071, 1, 0.7071, 1 }

Knot Vector: { 0, 0, 0, 0.25, 0.25, 0.5, 0.5, 0.75, 0.75, 1, 1, 1 }

 

Return to VX CAD/CAM Index