18 #ifndef itkQuaternionRigidTransform_h
19 #define itkQuaternionRigidTransform_h
23 #include "vnl/vnl_quaternion.h"
47 template<
typename TParametersValueType=
double>
67 static constexpr
unsigned int InputSpaceDimension = 3;
68 static constexpr
unsigned int OutputSpaceDimension = 3;
69 static constexpr
unsigned int SpaceDimension = 3;
70 static constexpr
unsigned int ParametersDimension = 7;
115 void SetIdentity()
override;
122 void SetParameters(
const ParametersType & parameters)
override;
124 const ParametersType & GetParameters()
const override;
131 void ComputeJacobianWithRespectToParameters(
const InputPointType & p, JacobianType & jacobian)
const override;
139 void ComputeMatrix()
override;
141 void ComputeMatrixParameters()
override;
145 m_Rotation = rotation;
148 const InverseMatrixType & GetInverseMatrix()
const;
150 void PrintSelf(std::ostream & os,
Indent indent)
const override;
158 #ifndef ITK_MANUAL_INSTANTIATION
159 #include "itkQuaternionRigidTransform.hxx"
Light weight base class for most itk classes.
Control indentation during Print() invocation.