18 #ifndef __itkTranslationTransform_h
19 #define __itkTranslationTransform_h
44 class TScalarType = double,
46 unsigned int NDimensions = 3>
49 public Transform<TScalarType, NDimensions, NDimensions>
65 itkStaticConstMacro(SpaceDimension,
unsigned int, NDimensions);
66 itkStaticConstMacro(ParametersDimension,
unsigned int, NDimensions);
114 void SetParameters(
const ParametersType & parameters);
117 virtual const ParametersType & GetParameters(
void)
const;
124 m_Offset = offset;
return;
128 void Compose(
const Self *other,
bool pre = 0);
134 void Translate(
const OutputVectorType & offset,
bool pre = 0);
140 OutputPointType TransformPoint(
const InputPointType & point)
const;
142 using Superclass::TransformVector;
143 OutputVectorType TransformVector(
const InputVectorType & vector)
const;
145 OutputVnlVectorType TransformVector(
const InputVnlVectorType & vector)
const;
147 using Superclass::TransformCovariantVector;
148 OutputCovariantVectorType TransformCovariantVector(
const InputCovariantVectorType & vector)
const;
153 inline InputPointType BackTransform(
const OutputPointType & point)
const;
155 inline InputVectorType BackTransform(
const OutputVectorType & vector)
const;
157 inline InputVnlVectorType BackTransform(
const OutputVnlVectorType & vector)
const;
159 inline InputCovariantVectorType BackTransform(
const OutputCovariantVectorType & vector)
const;
165 bool GetInverse(Self *inverse)
const;
168 virtual InverseTransformBasePointer GetInverseTransform()
const;
171 virtual void ComputeJacobianWithRespectToParameters(
const InputPointType & point, JacobianType & j)
const;
177 virtual void ComputeJacobianWithRespectToPosition(
const InputPointType & x, JacobianType & jac)
const;
180 void SetIdentity(
void);
193 virtual bool IsLinear()
const
218 this->m_FixedParameters.
SetSize(0);
219 return this->m_FixedParameters;
227 void PrintSelf(std::ostream & os,
Indent indent)
const;
231 void operator=(
const Self &);
238 template <
class TScalarType,
unsigned int NDimensions>
243 return point - m_Offset;
247 template <
class TScalarType,
unsigned int NDimensions>
256 template <
class TScalarType,
unsigned int NDimensions>
265 template <
class TScalarType,
unsigned int NDimensions>
275 #ifndef ITK_MANUAL_INSTANTIATION
276 #include "itkTranslationTransform.hxx"