18 #ifndef itkRigid2DTransform_h
19 #define itkRigid2DTransform_h
55 template <
typename TParametersValueType =
double>
74 static constexpr
unsigned int InputSpaceDimension = 2;
75 static constexpr
unsigned int OutputSpaceDimension = 2;
76 static constexpr
unsigned int ParametersDimension = 3;
82 using typename Superclass::ParametersType;
83 using typename Superclass::ParametersValueType;
84 using typename Superclass::FixedParametersType;
85 using typename Superclass::FixedParametersValueType;
135 SetMatrix(
const MatrixType & matrix)
override;
150 SetMatrix(
const MatrixType & matrix,
const TParametersValueType tolerance);
160 Translate(
const OffsetType & offset,
bool pre =
false);
184 SetAngle(TParametersValueType angle);
186 itkGetConstReferenceMacro(Angle, TParametersValueType);
190 SetAngleInDegrees(TParametersValueType angle);
198 this->SetAngle(angle);
200 virtual const TParametersValueType &
216 SetParameters(
const ParametersType & parameters)
override;
226 const ParametersType &
227 GetParameters()
const override;
232 ComputeJacobianWithRespectToParameters(
const InputPointType & p, JacobianType & j)
const override;
239 CloneInverseTo(
Pointer & result)
const;
243 GetInverse(
Self * inverse)
const;
246 InverseTransformBasePointer
247 GetInverseTransform()
const override;
254 CloneTo(
Pointer & result)
const;
258 SetIdentity()
override;
261 Rigid2DTransform(
unsigned int outputSpaceDimension,
unsigned int parametersDimension);
271 PrintSelf(std::ostream & os,
Indent indent)
const override;
277 ComputeMatrix()
override;
284 ComputeMatrixParameters()
override;
294 TParametersValueType m_Angle{};
299 template <
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());
309 template <
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;
319 template <
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;
329 template <
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"