ITK  4.1.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Types | Private Member Functions | Private Attributes
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder > Class Template Reference

#include <itkBSplineInterpolationWeightFunction.h>

+ Inheritance diagram for itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >:
+ Collaboration diagram for itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef ContinuousIndex
< TCoordRep, VSpaceDimension > 
ContinuousIndexType
typedef Index< VSpaceDimension > IndexType
typedef SmartPointer< SelfPointer
typedef
BSplineInterpolationWeightFunction 
Self
typedef Size< VSpaceDimension > SizeType
typedef FunctionBase
< ContinuousIndex< TCoordRep,
VSpaceDimension >, Array
< double > > 
Superclass
typedef Array< double > WeightsType

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual WeightsType Evaluate (const ContinuousIndexType &index) const
virtual void Evaluate (const ContinuousIndexType &index, WeightsType &weights, IndexType &startIndex) const
virtual const char * GetNameOfClass () const
virtual SizeType GetSupportSize () const

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int SpaceDimension = VSpaceDimension
static const unsigned int SplineOrder = VSplineOrder

Private Types

typedef BSplineKernelFunction
< itkGetStaticConstMacro(SplineOrder) > 
KernelType
typedef Array2D< unsigned long > TableType

Private Member Functions

 BSplineInterpolationWeightFunction (const Self &)
void operator= (const Self &)

Private Attributes

KernelType::Pointer m_Kernel
unsigned long m_NumberOfWeights
TableType m_OffsetToIndexTable
SizeType m_SupportSize
virtual unsigned long GetNumberOfWeights () const
 BSplineInterpolationWeightFunction ()
 ~BSplineInterpolationWeightFunction ()
void PrintSelf (std::ostream &os, Indent indent) const

Detailed Description

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
class itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >

Returns the weights over the support region used for B-spline interpolation/reconstruction.

Computes/evaluate the B-spline interpolation weights over the support region of the B-spline.

This class is templated over the coordinate representation type, the space dimension and the spline order.

See also:
Point
Index
ContinuousIndex

Definition at line 51 of file itkBSplineInterpolationWeightFunction.h.


Member Typedef Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef SmartPointer< const Self > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ConstPointer
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef ContinuousIndex< TCoordRep, VSpaceDimension > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ContinuousIndexType

ContinuousIndex typedef support.

Definition at line 84 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Index< VSpaceDimension > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::IndexType

Index and size typedef support.

Definition at line 80 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef BSplineKernelFunction< itkGetStaticConstMacro(SplineOrder) > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::KernelType [private]

Interpolation kernel type.

Definition at line 129 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef SmartPointer< Self > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Pointer
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef BSplineInterpolationWeightFunction itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Self
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Size< VSpaceDimension > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SizeType

Definition at line 81 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Superclass
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Array2D< unsigned long > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::TableType [private]

Lookup table type.

Definition at line 123 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Array< double > itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::WeightsType

OutputType typedef support.

Definition at line 77 of file itkBSplineInterpolationWeightFunction.h.


Constructor & Destructor Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::BSplineInterpolationWeightFunction ( ) [protected]

Get number of weights.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::~BSplineInterpolationWeightFunction ( ) [inline, protected]

Get number of weights.

Definition at line 108 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::BSplineInterpolationWeightFunction ( const Self ) [private]

Member Function Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual::itk::LightObject::Pointer itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual WeightsType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Evaluate ( const ContinuousIndexType index) const [virtual]

Evaluate the weights at specified ContinousIndex position. Subclasses must provide this method.

Implements itk::FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > >.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual void itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Evaluate ( const ContinuousIndexType index,
WeightsType weights,
IndexType startIndex 
) const [virtual]

Evaluate the weights at specified ContinousIndex position. The weights are returned in the user specified container. This function assume that weights can hold (SplineOrder + 1)^(SpaceDimension) elements. For efficiency, no size checking is done. On return, startIndex contains the start index of the support region over which the weights are defined.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual const char* itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::FunctionBase< ContinuousIndex< TCoordRep, VSpaceDimension >, Array< double > >.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual unsigned long itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetNumberOfWeights ( ) const [virtual]

Get number of weights.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual SizeType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetSupportSize ( ) const [virtual]

Get support region size.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
static Pointer itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::New ( ) [static]

New macro for creation of through the object factory.

Reimplemented from itk::Object.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
void itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::operator= ( const Self ) [private]
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
void itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Get number of weights.

Reimplemented from itk::Object.


Member Data Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
KernelType::Pointer itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_Kernel [private]

Interpolation kernel.

Definition at line 132 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
unsigned long itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_NumberOfWeights [private]

Number of weights.

Definition at line 117 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
TableType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_OffsetToIndexTable [private]

Table mapping linear offset to indices.

Definition at line 126 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
SizeType itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_SupportSize [private]

Size of support region.

Definition at line 120 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
const unsigned int itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SpaceDimension = VSpaceDimension [static]

Space dimension.

Definition at line 71 of file itkBSplineInterpolationWeightFunction.h.

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
const unsigned int itk::BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SplineOrder = VSplineOrder [static]

Spline order.

Definition at line 74 of file itkBSplineInterpolationWeightFunction.h.


The documentation for this class was generated from the following file: