A B-spline is a generalization of the Bézier curve. Let a vector known as the knot vector be defined
(1)
|
where is a nondecreasing sequence with , and define control points , ..., . Define the degree as
(2)
|
The "knots" , ..., are called internal knots.
Define the basis functions as
(3)
| |||
(4)
|
where , 2, ..., . Then the curve defined by
(5)
|
is a B-spline.
Specific types include the nonperiodic B-spline (first knots equal 0 and last equal to 1; illustrated above) and uniform B-spline (internal knots are equally spaced). A B-spline with no internal knots is a Bézier curve.
A curve is times differentiable at a point where duplicate knot values occur. The knot values determine the extent of the control of the control points.
-splines are implemented in the Wolfram Language as BSplineCurve[pts].