18#ifndef itkRigid2DTransform_h
19#define itkRigid2DTransform_h
55template <
typename TParametersValueType =
double>
74 static constexpr unsigned int InputSpaceDimension = 2;
75 static constexpr unsigned int OutputSpaceDimension = 2;
76 static constexpr unsigned int ParametersDimension = 3;
79 using typename Superclass::ScalarType;
82 using typename Superclass::ParametersType;
83 using typename Superclass::ParametersValueType;
84 using typename Superclass::FixedParametersType;
85 using typename Superclass::FixedParametersValueType;
88 using typename Superclass::JacobianType;
89 using typename Superclass::JacobianPositionType;
90 using typename Superclass::InverseJacobianPositionType;
93 using typename Superclass::MatrixType;
94 using typename Superclass::MatrixValueType;
97 using typename Superclass::OffsetType;
101 using typename Superclass::InputVectorType;
102 using typename Superclass::OutputVectorType;
103 using typename Superclass::OutputVectorValueType;
106 using typename Superclass::InputCovariantVectorType;
107 using typename Superclass::OutputCovariantVectorType;
110 using typename Superclass::InputVnlVectorType;
111 using typename Superclass::OutputVnlVectorType;
114 using typename Superclass::InputPointType;
115 using typename Superclass::OutputPointType;
186 itkGetConstReferenceMacro(Angle, TParametersValueType);
198 this->SetAngle(angle);
200 virtual const TParametersValueType &
294 TParametersValueType m_Angle{};
299template <
typename TParametersValueType>
303 itkWarningMacro(
"BackTransform(): This method is slated to be removed from ITK. Instead, please use GetInverse() "
304 "to generate an inverse transform and then perform the transform using that inverted transform.");
305 return this->GetInverseMatrix() * (
point - this->GetOffset());
309template <
typename TParametersValueType>
313 itkWarningMacro(
"BackTransform(): This method is slated to be removed from ITK. Instead, please use GetInverse() "
314 "to generate an inverse transform and then perform the transform using that inverted transform.");
315 return this->GetInverseMatrix() * vect;
319template <
typename TParametersValueType>
323 itkWarningMacro(
"BackTransform(): This method is slated to be removed from ITK. Instead, please use GetInverse() "
324 "to generate an inverse transform and then perform the transform using that inverted transform.");
325 return this->GetInverseMatrix() * vect;
329template <
typename TParametersValueType>
334 itkWarningMacro(
"BackTransform(): This method is slated to be removed from ITK. Instead, please use GetInverse() "
335 "to generate an inverse transform and then perform the transform using that inverted transform.");
336 return this->GetMatrix() * vect;
341#ifndef ITK_MANUAL_INSTANTIATION
342# include "itkRigid2DTransform.hxx"
Array2D class representing a 2D array.
A templated class holding a n-Dimensional covariant vector.
Control indentation during Print() invocation.
Light weight base class for most itk classes.
Class to hold and manage different parameter types used during optimization.
SmartPointer< Self > Pointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
*par Constraints *The filter image with at least two dimensions and a vector *length of at least The theory supports extension to scalar but *the implementation of the itk vector classes do not **The template parameter TRealType must be floating point(float or double) or *a user-defined "real" numerical type with arithmetic operations defined *sufficient to compute derivatives. **\par Performance *This filter will automatically multithread if run with *SetUsePrincipleComponents