Computer Aided Engineering Design

(backadmin) #1

152 COMPUTER AIDED ENGINEERING DESIGN


Example 5.7 discusses two kinds of B-spline curves, viz. unclampedandclamped. In the former,
the curve does not pass through any control point while in the latter, it passes through one or both the
end points. If a spline is to be clamped at the first control point, we can enforce p– 2 knots to the left
oftp– 1 to be equal, that is, t 1 =... = tp– 2 = tp– 1. Likewise, for the curve to pass through the last control
point,p– 2 knots to the right of tm–p+ 1 must be equal, to the latter, that is, tm–p+ 1 = tm–p+ 2 =... =
tm–1. Section 5.9(b) discusses why a B-spline curve passes through a data point using knot multiplicity.
A B-spline curve clamped at both ends behaves like a Bézier curve that passes through the end points
and is also tangent to the first and the last leg of the control polyline.


Example 5.7.For data points, (0, 0), (0, 1), (2, 3), (2.5, 6), (5, 2), (6, 0) and (7, −3), design a B-spline
curve using cubic normalized B-spline basis.
It is required to use the fourth order B-splines for 7 data points. Using Section 5.7 (F), the number
of knots is determined as 7 + 4 = 11. First, to generate an open spline, all knots must be simple (with
multiplicity 1 each) and we choose a uniform sequence as [0, 1, 2,... , 10). Computing the B-splines
using Eq. (5.28) and applying Eq. (5.34), we get the plot in Figure 5.16(a) for t in [3, 7]. The thin line
shows the control polyline while the thick line shows the B-spline curve.
To clamp the curve at the first data point, the knot sequence is modified to line [0, 3, 3, 3, 4,
5,... , 10).
Clamping at both ends is performed using the sequence [0, 3, 3, 3, 4, 5, 6, 7, 7, 7, 10). The
respective plots are shown in Figure 5.16 (b) and (c).
Thatb(t) is a linear combination of Np,p+i(t), B-spline curves inherit all properties from those of
the normalized basis functions.


5.8.1 Properties of B-Spline Curves


(A) B-spline curve is a piecewise curve with each component an order p segment
This is because each basis function of b(t) in Eq. (5.34) by itself is a piecewise order p curve.


(B) Equality m = n + p must be satisfied
Each control point requires a basis function and the number of such functions when added to the
order of the B-splines provides the number of knots required.


t 0 t 1 ... tp–1 tp t 2 p–1 tm–p tm–p+1 tm

... ...

Np,p Np,2p–1 Np,m–p+1 Np,m

Figure 5.15 Parametric range (thick line) for B-spline curves with full support of basis functions.

splines of order pare non-zero (Section 5.7D). The first such span is [tp–1,tp) where p basis functions
Np,p,... , Np,2p–1 are non-zero (Figure 5.15) while the last span is [tm–p,tm–p+ 1 ) where basis functions
Np,m–p+1,... , Np,m are non-zero. Combining the two results gives the range [tp– 1 ,tm–p+ 1 ) wherein for
any value of t, it is assured that there are always p basis splines that are non-zero. The above
discussion assumes that all knots used are simple knots.

Free download pdf