140 Chapter 8 B-Spline Curves
8.8 B-Splines
Consider a knot sequence
^Q?
• • • ?
^M ^^^ ^^e set of piecewise polynomials
of degree n defined over it, where each function in that set is n
—
TJ
times
continuously differentiable at knot
Uj.
All these piecewise polynomials form a
linear space, with dimension
M-l
dim=(w + l)+ Y^Vi, (8.13)
i=l
For a
proof,
suppose we want to construct an element of our piecewise polyno-
mial linear space. The number of independent constraints that we can impose
on an arbitrary element, or its number of degrees of freedom, is equal to the
dimension of the considered linear space. We may start by completely specifying
the first polynomial segment, defined over
[UQ,
U^];
we can do this in
w
+
1
ways,
which is the number of coefficients that we can specify for a polynomial of degree
n.
The next polynomial segment, defined over [wj, ui], must agree with the first
segment in position and n
—
r^ derivatives at u^, thus leaving only r^ coefficients
to be chosen for the second segment. Continuing further, we obtain (8.13).
We are interested in B-spline curves that are piecewise polynomials over the
special knot sequence [w„_i, ui]. The dimension of the linear space that they form
is L + 1, which also happens to be the number of B-spfine vertices for a curve in
this space. If we can define L + 1 linearly independent piecewise polynomials in
our linear function space, we have found a basis for this space. We proceed as
follows.
Define functions
N^{u),
called B-splines by defining their de Boor ordinates
to satisfy dj = 1 and dj = 0 for all / ^ i. The N^(u) are clearly elements of the
linear space formed by all piecewise polynomials over [w„_i,
w^].
They have local
support:
Nf(u) 7^ 0 only Hue [w,_i,
w,+„].
This follows because knot insertion, and hence the de Boor algorithm, is a local
operation; if a new knot is inserted, only those Greville abscissae that are "close"
will be affected.
B-splines also have minimal support: if a piecewise polynomial with the same
smoothness properties over the same knot vector has less support than N^", it
must be the zero function. All piecewise polynomials defined over [w^_i,
w^_^„],
the support region of N^, are elements of a function space of dimension In + 1,
according to (8.13). A support region that is one interval "shorter" defines a
function space of dimension In, The requirement of vanishing n
—
rj_i derivatives
at Ui_i and of vanishing n
—
r/_^„ derivatives at
Uj_^^
imposes 2n conditions on