All Classes Namespaces Functions Variables Typedefs Enumerator Groups Pages
Spline and spline fitting module

Detailed Description

This module provides a simple multi-dimensional spline class while offering most basic functionality to fit a spline to point sets.

* #include <unsupported/Eigen/Splines>
*

Classes

class  Spline< _Scalar, _Dim, _Degree >
 A class representing multi-dimensional spline curves. More...
 
struct  SplineFitting< SplineType >
 Spline fitting methods. More...
 
struct  SplineTraits< Spline< _Scalar, _Dim, _Degree >, _DerivativeOrder >
 Compile-time attributes of the Spline class for fixed degree. More...
 
struct  SplineTraits< Spline< _Scalar, _Dim, _Degree >, Dynamic >
 Compile-time attributes of the Spline class for Dynamic degree. More...
 

Functions

template<typename PointArrayType , typename KnotVectorType >
void ChordLengths (const PointArrayType &pts, KnotVectorType &chord_lengths)
 Computes chord length parameters which are required for spline interpolation. More...
 
template<typename KnotVectorType >
void KnotAveraging (const KnotVectorType &parameters, DenseIndex degree, KnotVectorType &knots)
 Computes knot averages.The knots are computed as

\begin{align*} u_0 & = \hdots = u_p = 0 \\ u_{m-p} & = \hdots = u_{m} = 1 \\ u_{j+p} & = \frac{1}{p}\sum_{i=j}^{j+p-1}\bar{u}_i \quad\quad j=1,\hdots,n-p \end{align*}

where $p$ is the degree and $m+1$ the number knots of the desired interpolating spline. More...

 

Function Documentation

void Eigen::ChordLengths ( const PointArrayType &  pts,
KnotVectorType &  chord_lengths 
)

Computes chord length parameters which are required for spline interpolation.

Parameters
[in]ptsThe data points to which a spline should be fit.
[out]chord_lengthsThe resulting chord lenggth vector.
See Also
Les Piegl and Wayne Tiller, The NURBS book (2nd ed.), 1997, 9.2.1 Global Curve Interpolation to Point Data

Referenced by SplineFitting< SplineType >::Interpolate().

void Eigen::KnotAveraging ( const KnotVectorType &  parameters,
DenseIndex  degree,
KnotVectorType &  knots 
)

Computes knot averages.The knots are computed as

\begin{align*} u_0 & = \hdots = u_p = 0 \\ u_{m-p} & = \hdots = u_{m} = 1 \\ u_{j+p} & = \frac{1}{p}\sum_{i=j}^{j+p-1}\bar{u}_i \quad\quad j=1,\hdots,n-p \end{align*}

where $p$ is the degree and $m+1$ the number knots of the desired interpolating spline.

Parameters
[in]parametersThe input parameters. During interpolation one for each data point.
[in]degreeThe spline degree which is used during the interpolation.
[out]knotsThe output knot vector.
See Also
Les Piegl and Wayne Tiller, The NURBS book (2nd ed.), 1997, 9.2.1 Global Curve Interpolation to Point Data

Referenced by SplineFitting< SplineType >::Interpolate().