go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Private Member Functions | Private Attributes
itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder > Class Template Reference

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

#include <itkBSplineInterpolationSecondOrderDerivativeWeightFunction.h>

Inheritance diagram for itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >:
Inheritance graph
[legend]
Collaboration diagram for itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >:
Collaboration graph
[legend]

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
Superclass::ContinuousIndexType 
ContinuousIndexType
typedef Superclass::IndexType IndexType
typedef SmartPointer< SelfPointer
typedef
BSplineInterpolationSecondOrderDerivativeWeightFunction 
Self
typedef Superclass::SizeType SizeType
typedef
BSplineInterpolationWeightFunctionBase
< TCoordRep, VSpaceDimension,
VSplineOrder > 
Superclass
typedef Superclass::WeightsType WeightsType

Public Member Functions

virtual const char * GetClassName () const
 itkStaticConstMacro (SpaceDimension, unsigned int, VSpaceDimension)
 itkStaticConstMacro (SplineOrder, unsigned int, VSplineOrder)
virtual void SetDerivativeDirections (unsigned int dir0, unsigned int dir1)

Static Public Member Functions

static Pointer New ()

Protected Types

typedef
Superclass::DerivativeKernelType 
DerivativeKernelType
typedef Superclass::KernelType KernelType
typedef Superclass::OneDWeightsType OneDWeightsType
typedef
Superclass::SecondOrderDerivativeKernelType 
SecondOrderDerivativeKernelType
typedef Superclass::TableType TableType

Protected Member Functions

 BSplineInterpolationSecondOrderDerivativeWeightFunction ()
virtual void Compute1DWeights (const ContinuousIndexType &index, const IndexType &startIndex, OneDWeightsType &weights1D) const
virtual void PrintSelf (std::ostream &os, Indent indent) const
 ~BSplineInterpolationSecondOrderDerivativeWeightFunction ()

Private Member Functions

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

Private Attributes

vnl_vector_fixed< double, 2 > m_DerivativeDirections
bool m_EqualDerivativeDirections

Detailed Description

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
class itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< 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 43 of file itkBSplineInterpolationSecondOrderDerivativeWeightFunction.h.


Member Typedef Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef SmartPointer<const Self> itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ConstPointer
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::ContinuousIndexType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ContinuousIndexType
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::DerivativeKernelType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::DerivativeKernelType [protected]
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::IndexType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::IndexType
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::KernelType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::KernelType [protected]
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::OneDWeightsType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::OneDWeightsType [protected]
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef SmartPointer<Self> itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Pointer
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass ::SecondOrderDerivativeKernelType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SecondOrderDerivativeKernelType [protected]
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef BSplineInterpolationSecondOrderDerivativeWeightFunction itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Self
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::SizeType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SizeType
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef BSplineInterpolationWeightFunctionBase< TCoordRep, VSpaceDimension, VSplineOrder > itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Superclass
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::TableType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::TableType [protected]
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
typedef Superclass::WeightsType itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::WeightsType

Constructor & Destructor Documentation

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

Member Function Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual void itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Compute1DWeights ( const ContinuousIndexType index,
const IndexType startIndex,
OneDWeightsType weights1D 
) const [protected, virtual]

Compute the 1D weights, which are:

\[ \beta( x[i] - startIndex[i] ), \beta( x[i] - startIndex[i] - 1 ), \beta( x[i] - startIndex[i] - 2 ), \beta( x[i] - startIndex[i] - 3 ), \]

with $\beta( x ) = \beta^2( x + 1/2 ) - \beta^2( x - 1/2 )$, in case of non-equal derivative directions, with $\beta( x ) = \beta^1( x + 1 ) - 2 * \beta^1( x ) + \beta^1( x - 1 ),$ in case of equal derivative directions, with $\beta(x) = \beta^3(x)$ for the non-derivative directions.

Implements itk::BSplineInterpolationWeightFunctionBase< TCoordRep, VSpaceDimension, VSplineOrder >.

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

Run-time type information (and related methods).

Reimplemented from itk::BSplineInterpolationWeightFunctionBase< TCoordRep, VSpaceDimension, VSplineOrder >.

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

New macro for creation of through the object factory.

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

Set the second order derivative directions.


Field Documentation

template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
vnl_vector_fixed< double, 2 > itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_DerivativeDirections [private]
template<class TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
bool itk::BSplineInterpolationSecondOrderDerivativeWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_EqualDerivativeDirections [private]


Generated on 24-10-2011 for elastix by doxygen 1.7.4 elastix logo