Graphics Reference
In-Depth Information
Figure 11.20.
The local convex hull property
of B-splines.
geometric modeling program would be unlikely to use them anymore. Instead, one
uses the algorithms described in Section 11.5.4.
Like Bézier curves, B-spline curves p(u) satisfy a convex hull property. Specifically,
it follows from Theorem 11.5.1.4(3) and (4) that B-spline curves defined by equation
(11.72) lie in the convex hull of their control points. Actually, a stronger fact is true
since most of the coefficients in (11.72) are zero for any given u.
11.5.1.5 Theorem. (Local convex hull property) Successive segments of a B-spline
curve of order k are contained in the convex hull of the corresponding sequence of k
control points (the coefficients of the other points vanish). More precisely, suppose
that the B-spline curve p(u) has knots u i and control points p i , then p([u i ,u i+1 )) is con-
tained in the convex hull of the points p i-k+1 , p i-k+2 ,..., p i .
Proof.
Use Theorem 11.5.1.4.
In addition to being useful for clipping, Theorem 11.5.1.5 also tells us more about
the curve. For example, in the quadratic case, the B-spline curve lies in the union of
the triangles p i p i+1 p i+2 , 0 £ i £ n - 2. See Figure 11.20. Similar facts are true in the
general case.
Finally, we list, without proof, several additional facts about B-spline curves.
Proofs can be found in [Fari97] or could be derived from the material in Section
11.5.2. These are facts that anyone working with B-spline curves should know. They
deal with how the shape of such curves changes as certain properties are changed.
(1) If the B-spline curve is clamped, then it interpolates the first and last control
point.
(2) Inserting multiple control points eventually forces the curve to go through the
point, as does increasing the multiplicity of knots. See [Fari97] or the next section on
how to insert knots. See also Section 11.5.3 for situations where one might want to
do this.
(3) Increasing the order of a B-spline curve for a fixed number of control points
reduces the number of curve segments, so that the influence of any given control
point on a segment is reduced. Also, each curve segment now lies in the convex hull
of a larger number of control points. Conversely, reducing the order of a B-spline
means that each control point influences fewer segments although its influence is
stronger.
(4) Given a nonperiodic B-spline defined by equations (11.69) we must have n ≥
k - 1, otherwise the equation for the integer knots breaks down. In other words, one
must have at least as many control points as the order of the spline. One needs n ≥ k
if one wants a spline with a domain that is larger than a point.
Search WWH ::




Custom Search