27#ifndef __vtkITKTransformInverse_h
28#define __vtkITKTransformInverse_h
34template <
typename TScalar =
double,
unsigned int NDimensions = 3,
unsigned int VSplineOrder = 3>
40 typedef BSplineTransform<TScalar, NDimensions, VSplineOrder>
Superclass;
52 using Superclass::TransformPoint;
53 typename Superclass::OutputPointType
TransformPoint(
const typename Superclass::InputPointType&)
const override
55 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
59 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
64 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
68 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
73 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
77 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
80 typename Superclass::WeightsType&,
81 typename Superclass::ParameterIndexArrayType&)
const
83 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
88template <
typename TScalar =
double,
unsigned int NDimensions = 3,
unsigned int VSplineOrder = 3>
94 typedef BSplineDeformableTransform<TScalar, NDimensions, VSplineOrder>
Superclass;
106 using Superclass::TransformPoint;
107 typename Superclass::OutputPointType
TransformPoint(
const typename Superclass::InputPointType&)
const override
109 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
113 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
118 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
122 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
126 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
130 itkExceptionMacro(
"Only storage methods are implemented for InverseBSplineTransform");
135template <
class TScalar,
unsigned int NDimensions>
141 typedef DisplacementFieldTransform<TScalar, NDimensions>
Superclass;
153 typename Superclass::OutputPointType
TransformPoint(
const typename Superclass::InputPointType&)
const override
155 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
159 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
163 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
168 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
172 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
176 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
180 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
184 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
187 typename Superclass::JacobianPositionType&,
188 bool useSVD =
false)
const override
191 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
196 itkExceptionMacro(
"Only storage methods are implemented for InverseDisplacementFieldTransform");
201template <
class TScalar,
unsigned int NDimensions>
207 typedef ThinPlateSplineKernelTransform<TScalar, NDimensions>
Superclass;
219 typename Superclass::OutputPointType
TransformPoint(
const typename Superclass::InputPointType&)
const override
221 itkExceptionMacro(
"Only storage methods are implemented for InverseThinPlateSplineKernelTransform");
225 itkExceptionMacro(
"Only storage methods are implemented for InverseThinPlateSplineKernelTransform");
229 itkExceptionMacro(
"Only storage methods are implemented for InverseThinPlateSplineKernelTransform");
234 itkExceptionMacro(
"Only storage methods are implemented for InverseThinPlateSplineKernelTransform");
238 itkExceptionMacro(
"Only storage methods are implemented for InverseThinPlateSplineKernelTransform");
243 itkExceptionMacro(
"Only storage methods are implemented for InverseThinPlateSplineKernelTransform");
247 itkExceptionMacro(
"Only storage methods are implemented for InverseThinPlateSplineKernelTransform");
Simplified inverse ITK transforms.
#define itkExceptionMacro(x)