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

#include <itkRecursiveBSplineInterpolationWeightFunction.h>

Detailed Description

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
class itk::RecursiveBSplineInterpolationWeightFunction< 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 48 of file itkRecursiveBSplineInterpolationWeightFunction.h.

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

Public Types

using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = RecursiveBSplineInterpolationWeightFunction
 
using Superclass = BSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >
 

Public Member Functions

WeightsType Evaluate (const ContinuousIndexType &index, IndexType &startIndex) const
 
WeightsType EvaluateDerivative (const ContinuousIndexType &index, const IndexType &startIndex) const
 
WeightsType EvaluateSecondOrderDerivative (const ContinuousIndexType &index, const IndexType &startIndex) const
 
virtual const char * GetClassName () const
 
virtual unsigned int GetNumberOfIndices () const
 
 ITK_DISALLOW_COPY_AND_MOVE (RecursiveBSplineInterpolationWeightFunction)
 
 itkStaticConstMacro (SpaceDimension, unsigned int, VSpaceDimension)
 
 itkStaticConstMacro (SplineOrder, unsigned int, VSplineOrder)
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static constexpr unsigned NumberOfIndices = Math::UnsignedPower(VSplineOrder + 1, VSpaceDimension)
 

Protected Member Functions

 RecursiveBSplineInterpolationWeightFunction ()=default
 
 ~RecursiveBSplineInterpolationWeightFunction () override=default
 

Private Types

using DerivativeKernelType = BSplineDerivativeKernelFunction2< VSplineOrder >
 
using KernelType = BSplineKernelFunction2< VSplineOrder >
 
using SecondOrderDerivativeKernelType = BSplineSecondOrderDerivativeKernelFunction2< VSplineOrder >
 

Private Member Functions

WeightsType Evaluate (const ContinuousIndexType &index) const override
 
void Evaluate (const ContinuousIndexType &index, WeightsType &weights, IndexType &startIndex) const override
 

Private Attributes

unsigned int m_NumberOfIndices {}
 

Member Typedef Documentation

◆ ConstPointer

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
using itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ConstPointer = SmartPointer<const Self>

◆ DerivativeKernelType

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
using itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::DerivativeKernelType = BSplineDerivativeKernelFunction2<VSplineOrder>
private

◆ KernelType

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
using itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::KernelType = BSplineKernelFunction2<VSplineOrder>
private

Interpolation kernel type.

Definition at line 119 of file itkRecursiveBSplineInterpolationWeightFunction.h.

◆ Pointer

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
using itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Pointer = SmartPointer<Self>

◆ SecondOrderDerivativeKernelType

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
using itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::SecondOrderDerivativeKernelType = BSplineSecondOrderDerivativeKernelFunction2<VSplineOrder>
private

◆ Self

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
using itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Self = RecursiveBSplineInterpolationWeightFunction

Standard class typedefs.

Definition at line 55 of file itkRecursiveBSplineInterpolationWeightFunction.h.

◆ Superclass

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
using itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Superclass = BSplineInterpolationWeightFunction<TCoordRep, VSpaceDimension, VSplineOrder>

Constructor & Destructor Documentation

◆ RecursiveBSplineInterpolationWeightFunction()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::RecursiveBSplineInterpolationWeightFunction ( )
protecteddefault

◆ ~RecursiveBSplineInterpolationWeightFunction()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::~RecursiveBSplineInterpolationWeightFunction ( )
overrideprotecteddefault

Member Function Documentation

◆ Evaluate() [1/3]

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
WeightsType itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Evaluate ( const ContinuousIndexType &  index) const
overrideprivate

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

◆ Evaluate() [2/3]

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
WeightsType itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Evaluate ( const ContinuousIndexType &  index,
IndexType &  startIndex 
) const

◆ Evaluate() [3/3]

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
void itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::Evaluate ( const ContinuousIndexType &  index,
WeightsType &  weights,
IndexType &  startIndex 
) const
overrideprivate

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.

◆ EvaluateDerivative()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
WeightsType itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::EvaluateDerivative ( const ContinuousIndexType &  index,
const IndexType &  startIndex 
) const

◆ EvaluateSecondOrderDerivative()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
WeightsType itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::EvaluateSecondOrderDerivative ( const ContinuousIndexType &  index,
const IndexType &  startIndex 
) const

◆ GetClassName()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual const char * itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

◆ GetNumberOfIndices()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
virtual unsigned int itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::GetNumberOfIndices ( ) const
virtual

Get number of indices.

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::ITK_DISALLOW_COPY_AND_MOVE ( RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >  )

◆ itkStaticConstMacro() [1/2]

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::itkStaticConstMacro ( SpaceDimension  ,
unsigned int  ,
VSpaceDimension   
)

Space dimension.

◆ itkStaticConstMacro() [2/2]

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::itkStaticConstMacro ( SplineOrder  ,
unsigned int  ,
VSplineOrder   
)

Spline order.

◆ New()

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
static Pointer itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::New ( )
static

New macro for creation of through the object factory.

Field Documentation

◆ m_NumberOfIndices

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
unsigned int itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::m_NumberOfIndices {}
private

Private members; We unfortunatly cannot use those of the superclass.

Definition at line 116 of file itkRecursiveBSplineInterpolationWeightFunction.h.

◆ NumberOfIndices

template<typename TCoordRep = float, unsigned int VSpaceDimension = 2, unsigned int VSplineOrder = 3>
constexpr unsigned itk::RecursiveBSplineInterpolationWeightFunction< TCoordRep, VSpaceDimension, VSplineOrder >::NumberOfIndices = Math::UnsignedPower(VSplineOrder + 1, VSpaceDimension)
staticconstexpr

The number of indices.

Definition at line 79 of file itkRecursiveBSplineInterpolationWeightFunction.h.



Generated on 1739326392 for elastix by doxygen 1.9.8 elastix logo