CAGD-banner.gif
On-Line Geometric Modeling Notes
DEFINITION OF A B-SPLINE CURVE


Overview

These notes present the direct definition of the B-Spline curve. This definition is given in two ways: first by an analytical definition using the normalized B-spline blending functions, and then through a geometric definition.

pdficonsmall.gif To get a pdf version of these notes look here.


The B-Spline Curve - Analytical Definition

A B-spline curve $ {\bf P} (t)$, is defined by

$\displaystyle {\bf P} (t) = \sum_{i= 0}^{n} { {\bf P} _i }{N_{i,k}(t)}$    

where

We note that if, in equation (2), either of the $ N$ terms on the right hand side of the equation are zero, or the subscripts are out of the range of the summation limits, then the associated fraction is not evaluated and the term becomes zero. This is to avoid a zero-over-zero evaluation problem. We also direct the readers attention to the ``closed-open'' interval in the equation (1).

The order $ k$ is independent of the number of control points ($ n+1$). In the B-Spline curve, unlike the Bézier Curve, we have the flexibility of using many control points, and restricting the degree of the polymonial segments.


The B-Spline Curve - Geometric Definition

Given a set of Control Points $ \left\{ {\bf P} _0 , {\bf P} _1 , ..., {\bf P} _n
\right\}$, an order $ k$, and a set of knots $ \left\{ t_0 , t_1 , ..., t_{n+k} \right\}$, the B-Spline curve of order $ k$ is defined to be

$\displaystyle {\bf P} (t) = {\bf P} _l^{(k-1)}(t)$    if $\displaystyle u \in [ t_l , t_{l+1} )$    

where

$\displaystyle {\bf P} _i^{(j)}(t) = \begin{cases}{(1 - \tau_i^j )} { {\bf P} _{...
...(j-1)}(t)} & \text{ if } j > 0, \\  {\bf P} _i & \text{ if } j = 0. \end{cases}$    

and

$\displaystyle \tau_i^j = \frac{t - t_i}{t_{i+k-j} - t_i}$    

It is useful to view the geometric construction as the following pyramid

\begin{displaymath}\begin{array}{ccccccc} \vdots & & & & & & \\  {\bf P} _{l-k+1...
...& \\  {\bf P} _l & & & & & & \\  \vdots & & & & & & \end{array}\end{displaymath}    

Any $ {\bf P} $ in this pyramid is calculated as a convex combination of the two $ {\bf P} $ functions immediately to it's left.


\begin{singlespace}
\noindent
\footnotesize\bfseries All contents copyright (c) ...
...ment, University of California, Davis \\
All rights reserved.
\end{singlespace}


Ken Joy
2000-11-28