go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkThinPlateSplineKernelTransform2.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: $RCSfile: itkThinPlateSplineKernelTransform2.h,v $
5  Language: C++
6  Date: $Date: 2006-11-28 14:22:18 $
7  Version: $Revision: 1.1 $
8 
9  Copyright (c) Insight Software Consortium. All rights reserved.
10  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 #ifndef __itkThinPlateSplineKernelTransform2_h
18 #define __itkThinPlateSplineKernelTransform2_h
19 
20 #include "itkKernelTransform2.h"
21 
22 namespace itk
23 {
32 template< class TScalarType, // Data type for scalars (float or double)
33 unsigned int NDimensions = 3 >
34 // Number of dimensions
36  public KernelTransform2< TScalarType, NDimensions >
37 {
38 public:
39 
43  typedef SmartPointer< Self > Pointer;
44  typedef SmartPointer< const Self > ConstPointer;
45 
47  itkNewMacro( Self );
48 
51 
53  typedef typename Superclass::ScalarType ScalarType;
54 
57 
60 
62  itkStaticConstMacro( SpaceDimension, unsigned int, Superclass::SpaceDimension );
63 
74 
75 protected:
76 
78  {
79  this->m_FastComputationPossible = true;
80  }
81 
82 
84 
89 
99  void ComputeG( const InputVectorType & x, GMatrixType & GMatrix ) const;
100 
104  virtual void ComputeDeformationContribution(
105  const InputPointType & inputPoint, OutputPointType & result ) const;
106 
107 private:
108 
109  ThinPlateSplineKernelTransform2( const Self & ); // purposely not implemented
110  void operator=( const Self & ); // purposely not implemented
111 
112 };
113 
114 } // namespace itk
115 
116 #ifndef ITK_MANUAL_INSTANTIATION
117 #include "itkThinPlateSplineKernelTransform2.hxx"
118 #endif
119 
120 #endif // __itkThinPlateSplineKernelTransform2_h
Superclass::OutputPointType OutputPointType
virtual void ComputeDeformationContribution(const InputPointType &inputPoint, OutputPointType &result) const
Superclass::InputVectorType InputVectorType
vnl_matrix_fixed< TScalarType, NDimensions, NDimensions > GMatrixType
KernelTransform2< TScalarType, NDimensions > Superclass
Superclass::InputPointType InputPointType
PointSetType::PointsContainerIterator PointsIterator
Superclass::InputCovariantVectorType InputCovariantVectorType
void ComputeG(const InputVectorType &x, GMatrixType &GMatrix) const
itkStaticConstMacro(SpaceDimension, unsigned int, Superclass::SpaceDimension)
Superclass::OutputCovariantVectorType OutputCovariantVectorType


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