go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkBSplineInterpolationDerivativeWeightFunction.h
Go to the documentation of this file.
1 /*======================================================================
2 
3 This file is part of the elastix software.
4 
5 Copyright (c) University Medical Center Utrecht. All rights reserved.
6 See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7 details.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 #ifndef __itkBSplineInterpolationDerivativeWeightFunction_h
15 #define __itkBSplineInterpolationDerivativeWeightFunction_h
16 
18 
19 namespace itk
20 {
21 
39 template< class TCoordRep = float,
40 unsigned int VSpaceDimension = 2,
41 unsigned int VSplineOrder = 3 >
44  TCoordRep, VSpaceDimension, VSplineOrder >
45 {
46 public:
47 
51  TCoordRep, VSpaceDimension, VSplineOrder > Superclass;
52  typedef SmartPointer< Self > Pointer;
53  typedef SmartPointer< const Self > ConstPointer;
54 
56  itkNewMacro( Self );
57 
61 
63  itkStaticConstMacro( SpaceDimension, unsigned int, VSpaceDimension );
64 
66  itkStaticConstMacro( SplineOrder, unsigned int, VSplineOrder );
67 
70  typedef typename Superclass::IndexType IndexType;
71  typedef typename Superclass::SizeType SizeType;
73 
75  virtual void SetDerivativeDirection( unsigned int dir );
76 
77 protected:
78 
81 
85  typedef typename Superclass
87  typedef typename Superclass::TableType TableType;
89 
97  virtual void Compute1DWeights(
98  const ContinuousIndexType & index,
99  const IndexType & startIndex,
100  OneDWeightsType & weights1D ) const;
101 
103  virtual void PrintSelf( std::ostream & os, Indent indent ) const;
104 
105 private:
106 
107  BSplineInterpolationDerivativeWeightFunction( const Self & ); // purposely not implemented
108  void operator=( const Self & ); // purposely not implemented
109 
111  unsigned int m_DerivativeDirection;
112 
113 };
114 
115 } // end namespace itk
116 
117 #ifndef ITK_MANUAL_INSTANTIATION
118 #include "itkBSplineInterpolationDerivativeWeightFunction.hxx"
119 #endif
120 
121 #endif
Matrix< double, itkGetStaticConstMacro(SpaceDimension), itkGetStaticConstMacro(SplineOrder)+1 > OneDWeightsType
ContinuousIndex< TCoordRep, VSpaceDimension > ContinuousIndexType
virtual void Compute1DWeights(const ContinuousIndexType &index, const IndexType &startIndex, OneDWeightsType &weights1D) const
virtual void PrintSelf(std::ostream &os, Indent indent) const
BSplineDerivativeKernelFunction< Self::SplineOrder > DerivativeKernelType
B-spline kernel used for density estimation and nonparameteric regression.
Returns the weights over the support region used for B-spline interpolation/reconstruction.
Returns the weights over the support region used for B-spline interpolation/reconstruction.
Derivative of a B-spline kernel used for density estimation and nonparametric regression.
virtual void SetDerivativeDirection(unsigned int dir)
itkStaticConstMacro(SpaceDimension, unsigned int, VSpaceDimension)
BSplineInterpolationWeightFunctionBase< TCoordRep, VSpaceDimension, VSplineOrder > Superclass


Generated on 27-04-2014 for elastix by doxygen 1.8.6 elastix logo