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  * Copyright UMC Utrecht and contributors
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 /*=========================================================================
19 
20  Program: Insight Segmentation & Registration Toolkit
21  Module: $RCSfile: itkThinPlateSplineKernelTransform2.h,v $
22  Language: C++
23  Date: $Date: 2006-11-28 14:22:18 $
24  Version: $Revision: 1.1 $
25 
26  Copyright (c) Insight Software Consortium. All rights reserved.
27  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
28 
29  This software is distributed WITHOUT ANY WARRANTY; without even
30  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
31  PURPOSE. See the above copyright notices for more information.
32 
33 =========================================================================*/
34 #ifndef __itkThinPlateSplineKernelTransform2_h
35 #define __itkThinPlateSplineKernelTransform2_h
36 
37 #include "itkKernelTransform2.h"
38 
39 namespace itk
40 {
49 template< class TScalarType, // Data type for scalars (float or double)
50 unsigned int NDimensions = 3 >
51 // Number of dimensions
53  public KernelTransform2< TScalarType, NDimensions >
54 {
55 public:
56 
61  typedef SmartPointer< const Self > ConstPointer;
62 
64  itkNewMacro( Self );
65 
68 
71 
74 
77 
79  itkStaticConstMacro( SpaceDimension, unsigned int, Superclass::SpaceDimension );
80 
91 
92 protected:
93 
95  {
96  this->m_FastComputationPossible = true;
97  }
98 
99 
101 
106 
116  void ComputeG( const InputVectorType & x, GMatrixType & GMatrix ) const;
117 
122  const InputPointType & inputPoint, OutputPointType & result ) const;
123 
124 private:
125 
126  ThinPlateSplineKernelTransform2( const Self & ); // purposely not implemented
127  void operator=( const Self & ); // purposely not implemented
128 
129 };
130 
131 } // namespace itk
132 
133 #ifndef ITK_MANUAL_INSTANTIATION
134 #include "itkThinPlateSplineKernelTransform2.hxx"
135 #endif
136 
137 #endif // __itkThinPlateSplineKernelTransform2_h
itk::ThinPlateSplineKernelTransform2::InputVectorType
Superclass::InputVectorType InputVectorType
Definition: itkThinPlateSplineKernelTransform2.h:86
itk::ThinPlateSplineKernelTransform2::ParametersType
Superclass::ParametersType ParametersType
Definition: itkThinPlateSplineKernelTransform2.h:73
itk::KernelTransform2::OutputVectorType
Superclass::OutputVectorType OutputVectorType
Definition: itkKernelTransform2.h:126
itk::ThinPlateSplineKernelTransform2
Definition: itkThinPlateSplineKernelTransform2.h:54
itk::KernelTransform2::ScalarType
Superclass::ScalarType ScalarType
Definition: itkKernelTransform2.h:119
SmartPointer< Self >
itk::KernelTransform2::OutputPointType
Superclass::OutputPointType OutputPointType
Definition: itkKernelTransform2.h:124
itk::ThinPlateSplineKernelTransform2::Self
ThinPlateSplineKernelTransform2 Self
Definition: itkThinPlateSplineKernelTransform2.h:58
itk::ThinPlateSplineKernelTransform2::ThinPlateSplineKernelTransform2
ThinPlateSplineKernelTransform2()
Definition: itkThinPlateSplineKernelTransform2.h:94
itk::ThinPlateSplineKernelTransform2::JacobianType
Superclass::JacobianType JacobianType
Definition: itkThinPlateSplineKernelTransform2.h:76
itk::ThinPlateSplineKernelTransform2::Superclass
KernelTransform2< TScalarType, NDimensions > Superclass
Definition: itkThinPlateSplineKernelTransform2.h:59
itk::KernelTransform2
Definition: itkKernelTransform2.h:99
itk::ThinPlateSplineKernelTransform2::InputCovariantVectorType
Superclass::InputCovariantVectorType InputCovariantVectorType
Definition: itkThinPlateSplineKernelTransform2.h:88
itk::ThinPlateSplineKernelTransform2::OutputVectorType
Superclass::OutputVectorType OutputVectorType
Definition: itkThinPlateSplineKernelTransform2.h:87
itk::ThinPlateSplineKernelTransform2::OutputCovariantVectorType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Definition: itkThinPlateSplineKernelTransform2.h:89
itk::KernelTransform2::InputVectorType
Superclass::InputVectorType InputVectorType
Definition: itkKernelTransform2.h:125
itk::ThinPlateSplineKernelTransform2::itkStaticConstMacro
itkStaticConstMacro(SpaceDimension, unsigned int, Superclass::SpaceDimension)
itk::ThinPlateSplineKernelTransform2::~ThinPlateSplineKernelTransform2
virtual ~ThinPlateSplineKernelTransform2()
Definition: itkThinPlateSplineKernelTransform2.h:100
itk::ThinPlateSplineKernelTransform2::ComputeDeformationContribution
virtual void ComputeDeformationContribution(const InputPointType &inputPoint, OutputPointType &result) const
itk::ThinPlateSplineKernelTransform2::OutputPointType
Superclass::OutputPointType OutputPointType
Definition: itkThinPlateSplineKernelTransform2.h:85
itk::ThinPlateSplineKernelTransform2::PointsIterator
Superclass::PointsIterator PointsIterator
Definition: itkThinPlateSplineKernelTransform2.h:90
itk::KernelTransform2::JacobianType
Superclass::JacobianType JacobianType
Definition: itkKernelTransform2.h:122
itk::ThinPlateSplineKernelTransform2::ComputeG
void ComputeG(const InputVectorType &x, GMatrixType &GMatrix) const
itk::KernelTransform2::PointsIterator
PointSetType::PointsContainerIterator PointsIterator
Definition: itkKernelTransform2.h:152
itk::ThinPlateSplineKernelTransform2::ThinPlateSplineKernelTransform2
ThinPlateSplineKernelTransform2(const Self &)
itk::KernelTransform2::InputPointType
Superclass::InputPointType InputPointType
Definition: itkKernelTransform2.h:123
itk::ThinPlateSplineKernelTransform2::ConstPointer
SmartPointer< const Self > ConstPointer
Definition: itkThinPlateSplineKernelTransform2.h:61
vnl_matrix_fixed< TScalarType, NDimensions, NDimensions >
itk
Definition: itkAdvancedImageToImageMetric.h:40
itk::ThinPlateSplineKernelTransform2::GMatrixType
Superclass::GMatrixType GMatrixType
Definition: itkThinPlateSplineKernelTransform2.h:105
TScalarType
itk::KernelTransform2::InputCovariantVectorType
Superclass::InputCovariantVectorType InputCovariantVectorType
Definition: itkKernelTransform2.h:127
itk::ThinPlateSplineKernelTransform2::Pointer
SmartPointer< Self > Pointer
Definition: itkThinPlateSplineKernelTransform2.h:60
itk::KernelTransform2::ParametersType
Superclass::ParametersType ParametersType
Definition: itkKernelTransform2.h:120
itk::ThinPlateSplineKernelTransform2::InputPointType
Superclass::InputPointType InputPointType
Definition: itkThinPlateSplineKernelTransform2.h:84
itkKernelTransform2.h
itk::ThinPlateSplineKernelTransform2::operator=
void operator=(const Self &)
itk::KernelTransform2< TScalarType, 3 >::m_FastComputationPossible
bool m_FastComputationPossible
Definition: itkKernelTransform2.h:523
itk::ThinPlateSplineKernelTransform2::ScalarType
Superclass::ScalarType ScalarType
Definition: itkThinPlateSplineKernelTransform2.h:67
itk::KernelTransform2::OutputCovariantVectorType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Definition: itkKernelTransform2.h:128


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.8.18 elastix logo