B-Spline Basis Functions

The B-Spline Basis Functions are used to determine how much affect each control point has on the parametric B-Spline curve at any given point in time. The number of control points that affect the curve is equal to the order of the curve. Every basis function is defined over the entire life "time" of the curve. However, the value of these functions outside of their particular range is always zero. You can see which control points are affecting the curve based on the convex hull of the curve segment.

Notice that the sum of all of the basis functions that affect the curve is always equal to 1.0. This is visually displayed by the vertical line that moves across the "B-Spline Basis Functions:" canvas when the ">>" button is pressed. The colors of this line indicate how much each control point is affecting the curve. If the line is half red, and half green, then the curve at that point in time will be halfway between the red and green control points.

By dragging the mouse across the "B-Spline Basis Functions:" canvas while holding down the left mouse button, you can change the "time" of the curve. Since there must always be a number of basis functions equal to the order of the curve active at any time, you will only be able to drag the "Time Bar" within this range.

The recursive definition of these functions can be found on page 158 of "Computer Aided Geometric Design", Cohen, Riesenfeld, 1989.


Help Index