Medical Imaging Interaction Toolkit
2016.11.0
Medical Imaging Interaction Toolkit
|
BSpline with nonuniform knot spacing. More...
#include <mitkItkNonUniformBSpline.h>
Public Types | |
typedef NonUniformBSpline | Self |
typedef Object | Superclass |
typedef SmartPointer< Self > | Pointer |
typedef SmartPointer< const Self > | ConstPointer |
typedef double | ScalarType |
typedef itk::Point< ScalarType, TDimension > | PointType |
typedef std::vector< PointType > | PointListType |
typedef PointListType * | PointListPointer |
typedef std::vector< double > | KnotListType |
typedef std::vector< double > | CoordinateListType |
typedef itk::Point< double, TDimension > | ControlPointType |
typedef std::vector< ControlPointType > | ControlPointListType |
typedef ControlPointListType * | ControlPointListPointer |
typedef std::vector< double > | ChordLengthListType |
Public Member Functions | |
Pointer | Clone () const |
virtual const char * | GetClassName () const |
void | SetPoints (PointListType &newPoints) |
const PointListType & | GetPoints () const |
void | SetKnots (KnotListType &newKnots) |
const KnotListType & | GetKnots () const |
void | ComputeChordLengths () |
PointType | EvaluateSpline (const Array< double > &p) const |
PointType | EvaluateSpline (double t) const |
void | ComputeControlPoints () |
void | SetControlPoints (ControlPointListType &ctrlpts) |
const ControlPointListType & | GetControlPoints () const |
double | NonUniformBSplineFunctionRecursive (unsigned int order, unsigned int i, double t) const |
virtual void | SetSplineOrder (unsigned int _arg) |
virtual const unsigned int & | GetSplineOrder () |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
NonUniformBSpline () | |
virtual | ~NonUniformBSpline () |
virtual void | PrintSelf (std::ostream &os, Indent indent) const override |
Protected Attributes | |
PointListType | m_Points |
KnotListType | m_Knots |
ControlPointListType | m_ControlPoints |
ChordLengthListType | m_ChordLength |
ChordLengthListType | m_CumulativeChordLength |
unsigned int | m_SplineOrder |
unsigned int | m_SpatialDimension |
BSpline with nonuniform knot spacing.
This class is a bspline with nonuniform knot spacing. The use can specify a set of points and a set of knots and the spline will attempt to find the control points which will cause the spline to interpolate the points.
Definition at line 57 of file mitkItkNonUniformBSpline.h.
typedef std::vector<double> itk::NonUniformBSpline< TDimension >::ChordLengthListType |
Definition at line 77 of file mitkItkNonUniformBSpline.h.
typedef SmartPointer< const Self > itk::NonUniformBSpline< TDimension >::ConstPointer |
Definition at line 67 of file mitkItkNonUniformBSpline.h.
typedef ControlPointListType* itk::NonUniformBSpline< TDimension >::ControlPointListPointer |
Definition at line 76 of file mitkItkNonUniformBSpline.h.
typedef std::vector< ControlPointType > itk::NonUniformBSpline< TDimension >::ControlPointListType |
Definition at line 75 of file mitkItkNonUniformBSpline.h.
typedef itk::Point<double, TDimension > itk::NonUniformBSpline< TDimension >::ControlPointType |
Definition at line 74 of file mitkItkNonUniformBSpline.h.
typedef std::vector<double> itk::NonUniformBSpline< TDimension >::CoordinateListType |
Definition at line 73 of file mitkItkNonUniformBSpline.h.
typedef std::vector< double > itk::NonUniformBSpline< TDimension >::KnotListType |
Definition at line 72 of file mitkItkNonUniformBSpline.h.
typedef SmartPointer< Self > itk::NonUniformBSpline< TDimension >::Pointer |
Definition at line 66 of file mitkItkNonUniformBSpline.h.
typedef PointListType* itk::NonUniformBSpline< TDimension >::PointListPointer |
Definition at line 71 of file mitkItkNonUniformBSpline.h.
typedef std::vector< PointType > itk::NonUniformBSpline< TDimension >::PointListType |
Definition at line 70 of file mitkItkNonUniformBSpline.h.
typedef itk::Point< ScalarType, TDimension > itk::NonUniformBSpline< TDimension >::PointType |
Definition at line 69 of file mitkItkNonUniformBSpline.h.
typedef double itk::NonUniformBSpline< TDimension >::ScalarType |
Definition at line 68 of file mitkItkNonUniformBSpline.h.
typedef NonUniformBSpline itk::NonUniformBSpline< TDimension >::Self |
Typedefs
Definition at line 64 of file mitkItkNonUniformBSpline.h.
typedef Object itk::NonUniformBSpline< TDimension >::Superclass |
Definition at line 65 of file mitkItkNonUniformBSpline.h.
|
protected |
Constructor
|
protectedvirtual |
Virtual destructor
Pointer itk::NonUniformBSpline< TDimension >::Clone | ( | ) | const |
void itk::NonUniformBSpline< TDimension >::ComputeChordLengths | ( | ) |
Computes the chord lengths based on the points.
void itk::NonUniformBSpline< TDimension >::ComputeControlPoints | ( | ) |
Compute the control points.
PointType itk::NonUniformBSpline< TDimension >::EvaluateSpline | ( | const Array< double > & | p | ) | const |
Methods for evaluating the spline. The parameterization is always between 0 and 1.
PointType itk::NonUniformBSpline< TDimension >::EvaluateSpline | ( | double | t | ) | const |
|
virtual |
Method for creation through the object factory.
const ControlPointListType& itk::NonUniformBSpline< TDimension >::GetControlPoints | ( | ) | const |
Get the control points for the spline
const KnotListType& itk::NonUniformBSpline< TDimension >::GetKnots | ( | ) | const |
Get the knot vector.
const PointListType& itk::NonUniformBSpline< TDimension >::GetPoints | ( | ) | const |
Get the points the spline is trying to interpolate.
|
virtual |
Referenced by mitk::VirtualTrackingDevice::InitializeSpline().
|
static |
Method for creation through the object factory.
Referenced by mitk::VirtualTrackingTool::VirtualTrackingTool().
double itk::NonUniformBSpline< TDimension >::NonUniformBSplineFunctionRecursive | ( | unsigned int | order, |
unsigned int | i, | ||
double | t | ||
) | const |
Evaluate the basis functions directly. order - order of the basis function, i.e. 3 = cubic. i - basis function number, zero based. t - parameter of the spline.
|
overrideprotectedvirtual |
Method to print the object.
void itk::NonUniformBSpline< TDimension >::SetControlPoints | ( | ControlPointListType & | ctrlpts | ) |
Set the control points for the spline.
Referenced by mitk::VirtualTrackingDevice::InitializeSpline().
void itk::NonUniformBSpline< TDimension >::SetKnots | ( | KnotListType & | newKnots | ) |
Set the knot vector. Knots may be nonuniformly spaced. Knots will be rescaled to be between 0 and 1.
Referenced by mitk::VirtualTrackingDevice::InitializeSpline().
void itk::NonUniformBSpline< TDimension >::SetPoints | ( | PointListType & | newPoints | ) |
Set points which the spline will attempt to interpolate.
|
virtual |
Set the order of the spline.
|
protected |
The chord length computed from m_Points.
Definition at line 184 of file mitkItkNonUniformBSpline.h.
|
protected |
The control points of the spline.
Definition at line 179 of file mitkItkNonUniformBSpline.h.
|
protected |
The cumulative chord length computed from m_Points
Definition at line 189 of file mitkItkNonUniformBSpline.h.
|
protected |
The knots of spline.
Definition at line 174 of file mitkItkNonUniformBSpline.h.
|
protected |
Points that the spline attempts to intepolate.
Definition at line 169 of file mitkItkNonUniformBSpline.h.
|
protected |
The spatial dimension. Saved from the template parameter.
Definition at line 199 of file mitkItkNonUniformBSpline.h.
|
protected |
The order of the spline.
Definition at line 194 of file mitkItkNonUniformBSpline.h.