Game Development Reference
In-Depth Information
P 3
w 3 = 4
w 3 = 2
P 1
w 3 = 1
w 3 = 1/2
w 3 = 1/4
P 0
P 4
P 2
Figure 11.18. A nonuniform rational B-spline. The different curves show what happens
as the weight corresponding to the control point P changes.
All of the curves described in this chapter are invariant with respect to any
translation, rotation, or scaling transformation. That is, transforming the geomet-
rical constraints (e.g., the control points) and generating the curve produces the
same results as generating the curve using the untransformed geometrical con-
straints and then transforming the result. NURBS are also invariant with respect
to a homogeneous projection transformation. The curve generated by the homo-
geneous control points after projection is the same as the projection of the curve
generated using the unprojected control points. This property can be gained by a
nonuniform B-spline by promoting it to a NURBS curve in which every weight
has been assigned a value of 1.
NURBS have been widely adopted by computer modeling systems because
of their generality. NURBS can represent any of the other types of curves dis-
cussed in this chapter, and unlike nonrational curves, can represent conic sections
exactly. 1
1 See David F. Rogers and J. Alan Adams, Mathematical Elements for Computer
Graphics , Second Edition, McGraw-Hill, 1990.