Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::Rigid3DTransform< TScalarType > Class Template Reference
[Transforms]

Rigid3DTransform of a vector space (e.g. space coordinates). More...

#include <itkRigid3DTransform.h>

Inheritance diagram for itk::Rigid3DTransform< TScalarType >:

Inheritance graph
[legend]
Collaboration diagram for itk::Rigid3DTransform< TScalarType >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Rigid3DTransform Self
typedef Transform< TScalarType, 3, 3 > Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Superclass::ScalarType ScalarType
typedef Superclass::ParametersType ParametersType
typedef Superclass::JacobianType JacobianType
typedef Matrix< ScalarType,
itkGetStaticConstMacro(InputSpaceDimension),
itkGetStaticConstMacro(InputSpaceDimension) 
MatrixType )
typedef Vector< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension) 
OffsetType )
typedef Vector< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension) 
InputVectorType )
typedef Vector< TScalarType,
itkGetStaticConstMacro(OutputSpaceDimension) 
OutputVectorType )
typedef CovariantVector< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension) 
InputCovariantVectorType )
typedef CovariantVector< TScalarType,
itkGetStaticConstMacro(OutputSpaceDimension) 
OutputCovariantVectorType )
typedef vnl_vector_fixed<
TScalarType, itkGetStaticConstMacro(InputSpaceDimension) 
InputVnlVectorType )
typedef vnl_vector_fixed<
TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) 
OutputVnlVectorType )
typedef Point< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension) 
InputPointType )
typedef Point< TScalarType,
itkGetStaticConstMacro(OutputSpaceDimension) 
OutputPointType )
typedef vnl_quaternion< TScalarType > VnlQuaternionType
typedef Versor< TScalarType > VersorType

Public Member Functions

virtual const char * GetClassName () const
virtual OffsetType GetOffset () const
virtual MatrixType GetRotationMatrix () const
virtual void SetOffset (OffsetType _arg)
void SetRotationMatrix (const MatrixType &matrix)
void Compose (const Self *other, bool pre=false)
void Translate (const OffsetType &offset, bool pre=false)
OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &vector) const
InputCovariantVectorType BackTransform (const OutputCovariantVectorType &vector) const
Pointer Inverse (void) const
virtual void SetIdentity (void)
virtual const JacobianTypeGetJacobian (const InputPointType &point) const
 itkStaticConstMacro (InputSpaceDimension, unsigned int, 3)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, 3)
 itkStaticConstMacro (ParametersDimension, unsigned int, 6)
OutputPointType TransformPoint (const InputPointType &point) const
OutputVectorType TransformVector (const InputVectorType &vector) const
OutputVnlVectorType TransformVector (const InputVnlVectorType &vector) const
InputPointType BackTransform (const OutputPointType &point) const
InputVectorType BackTransform (const OutputVectorType &vector) const
InputVnlVectorType BackTransform (const OutputVnlVectorType &vector) const

Static Public Member Functions

Pointer New ()

Protected Member Functions

 Rigid3DTransform ()
 ~Rigid3DTransform ()
void PrintSelf (std::ostream &os, Indent indent) const
 Rigid3DTransform (unsigned int SpaceDimension, unsigned int ParametersDimension)

Protected Attributes

MatrixType m_RotationMatrix
MatrixType m_InverseMatrix

Detailed Description

template<class TScalarType = double>
class itk::Rigid3DTransform< TScalarType >

Rigid3DTransform of a vector space (e.g. space coordinates).

This transform applies a rotation and translation to the space

Definition at line 37 of file itkRigid3DTransform.h.


Member Typedef Documentation

template<class TScalarType = double>
typedef SmartPointer<const Self> itk::Rigid3DTransform< TScalarType >::ConstPointer
 

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 45 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef CovariantVector<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::Rigid3DTransform< TScalarType >::InputCovariantVectorType)
 

Standard covariant vector type for this class.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 79 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Point<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::Rigid3DTransform< TScalarType >::InputPointType)
 

Standard coordinate point type for this class.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 87 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Vector<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::Rigid3DTransform< TScalarType >::InputVectorType)
 

Standard vector type for this class.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 75 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef vnl_vector_fixed<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::Rigid3DTransform< TScalarType >::InputVnlVectorType)
 

Standard vnl_vector type for this class.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 83 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Superclass::JacobianType itk::Rigid3DTransform< TScalarType >::JacobianType
 

Jacobian type.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 66 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Matrix<ScalarType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension) itk::Rigid3DTransform< TScalarType >::MatrixType)
 

Standard matrix type for this class.

Reimplemented in itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, and itk::VersorRigid3DTransform< TScalarType >.

Definition at line 69 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Vector<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::Rigid3DTransform< TScalarType >::OffsetType)
 

Standard vector type for this class.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 72 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef CovariantVector<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::Rigid3DTransform< TScalarType >::OutputCovariantVectorType)
 

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 80 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Point<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::Rigid3DTransform< TScalarType >::OutputPointType)
 

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 88 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Vector<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::Rigid3DTransform< TScalarType >::OutputVectorType)
 

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 76 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef vnl_vector_fixed<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::Rigid3DTransform< TScalarType >::OutputVnlVectorType)
 

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 84 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Superclass::ParametersType itk::Rigid3DTransform< TScalarType >::ParametersType
 

Parameters type.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 63 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef SmartPointer<Self> itk::Rigid3DTransform< TScalarType >::Pointer
 

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 44 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Superclass::ScalarType itk::Rigid3DTransform< TScalarType >::ScalarType
 

Scalar type.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 60 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Rigid3DTransform itk::Rigid3DTransform< TScalarType >::Self
 

Standard class typedefs.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 42 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Transform< TScalarType, 3, 3 > itk::Rigid3DTransform< TScalarType >::Superclass
 

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 43 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef Versor<TScalarType> itk::Rigid3DTransform< TScalarType >::VersorType
 

Standard Versor type.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 94 of file itkRigid3DTransform.h.

template<class TScalarType = double>
typedef vnl_quaternion<TScalarType> itk::Rigid3DTransform< TScalarType >::VnlQuaternionType
 

Standard vnl_quaternion type.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 91 of file itkRigid3DTransform.h.


Constructor & Destructor Documentation

template<class TScalarType = double>
itk::Rigid3DTransform< TScalarType >::Rigid3DTransform  )  [protected]
 

template<class TScalarType = double>
itk::Rigid3DTransform< TScalarType >::~Rigid3DTransform  )  [protected]
 

template<class TScalarType = double>
itk::Rigid3DTransform< TScalarType >::Rigid3DTransform unsigned int  SpaceDimension,
unsigned int  ParametersDimension
[protected]
 


Member Function Documentation

template<class TScalarType = double>
InputCovariantVectorType itk::Rigid3DTransform< TScalarType >::BackTransform const OutputCovariantVectorType vector  )  const [inline]
 

template<class TScalarType = double>
InputVnlVectorType itk::Rigid3DTransform< TScalarType >::BackTransform const OutputVnlVectorType vector  )  const [inline]
 

Back transform by an affine transformation

This method finds the point or vector that maps to a given point or vector under the affine transformation defined by self. If no such point exists, an exception is thrown.

template<class TScalarType = double>
InputVectorType itk::Rigid3DTransform< TScalarType >::BackTransform const OutputVectorType vector  )  const [inline]
 

Back transform by an affine transformation

This method finds the point or vector that maps to a given point or vector under the affine transformation defined by self. If no such point exists, an exception is thrown.

template<class TScalarType = double>
InputPointType itk::Rigid3DTransform< TScalarType >::BackTransform const OutputPointType point  )  const [inline]
 

Back transform by an affine transformation

This method finds the point or vector that maps to a given point or vector under the affine transformation defined by self. If no such point exists, an exception is thrown.

template<class TScalarType = double>
void itk::Rigid3DTransform< TScalarType >::Compose const Self other,
bool  pre = false
 

Compose with another Rigid3DTransform

template<class TScalarType = double>
virtual const char* itk::Rigid3DTransform< TScalarType >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double>
virtual const JacobianType& itk::Rigid3DTransform< TScalarType >::GetJacobian const InputPointType point  )  const [virtual]
 

Compute the Jacobian Matrix of the transformation at one point

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double>
virtual OffsetType itk::Rigid3DTransform< TScalarType >::GetOffset  )  const [virtual]
 

Get offset of an Rigid3DTransform

This method returns the value of the offset of the Rigid3DTransform.

template<class TScalarType = double>
virtual MatrixType itk::Rigid3DTransform< TScalarType >::GetRotationMatrix  )  const [virtual]
 

Get rotation MAtrix from an Rigid3DTransform

This method returns the value of the rotation of the Rigid3DTransform.

template<class TScalarType = double>
Pointer itk::Rigid3DTransform< TScalarType >::Inverse void   )  const
 

Find inverse of an affine transformation

This method creates and returns a new Rigid3DTransform object which is the inverse of self. If self is not invertible, an exception is thrown.

template<class TScalarType = double>
itk::Rigid3DTransform< TScalarType >::itkStaticConstMacro ParametersDimension  ,
unsigned  int,
 

Dimension of the space.

Reimplemented in itk::VersorRigid3DTransform< TScalarType >.

template<class TScalarType = double>
itk::Rigid3DTransform< TScalarType >::itkStaticConstMacro OutputSpaceDimension  ,
unsigned  int,
 

Dimension of the space.

template<class TScalarType = double>
itk::Rigid3DTransform< TScalarType >::itkStaticConstMacro InputSpaceDimension  ,
unsigned  int,
 

Dimension of the space.

template<class TScalarType = double>
Pointer itk::Rigid3DTransform< TScalarType >::New  )  [static]
 

New macro for creation of through a Smart Pointer

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double>
void itk::Rigid3DTransform< TScalarType >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Print contents of an Rigid3DTransform

Reimplemented from itk::Object.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double>
virtual void itk::Rigid3DTransform< TScalarType >::SetIdentity void   )  [virtual]
 

Set the parameters to the IdentityTransform

Reimplemented in itk::QuaternionRigidTransform< TScalarType >, and itk::ScaleSkewVersor3DTransform< TScalarType >.

template<class TScalarType = double>
virtual void itk::Rigid3DTransform< TScalarType >::SetOffset OffsetType  _arg  )  [virtual]
 

Set offset of a Rigid3D Transform

This method sets the offset of an Rigid3DTransform to a value specified by the user.

template<class TScalarType = double>
void itk::Rigid3DTransform< TScalarType >::SetRotationMatrix const MatrixType matrix  ) 
 

Set the rotation Matrix of a Rigid3D Transform

This method sets the 3x3 matrix representing a rotation in the transform. The Matrix is expected to be orthogonal with a certain tolerance.

Warning:
This method will throw an exception is the matrix provided as argument is not orthogonal.

template<class TScalarType = double>
OutputCovariantVectorType itk::Rigid3DTransform< TScalarType >::TransformCovariantVector const InputCovariantVectorType vector  )  const [virtual]
 

Method to transform a CovariantVector.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

template<class TScalarType = double>
OutputPointType itk::Rigid3DTransform< TScalarType >::TransformPoint const InputPointType point  )  const [virtual]
 

Transform by an affine transformation

This method applies the affine transform given by self to a given point or vector, returning the transformed point or vector.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

template<class TScalarType = double>
OutputVnlVectorType itk::Rigid3DTransform< TScalarType >::TransformVector const InputVnlVectorType vector  )  const [virtual]
 

Transform by an affine transformation

This method applies the affine transform given by self to a given point or vector, returning the transformed point or vector.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

template<class TScalarType = double>
OutputVectorType itk::Rigid3DTransform< TScalarType >::TransformVector const InputVectorType vector  )  const [virtual]
 

Transform by an affine transformation

This method applies the affine transform given by self to a given point or vector, returning the transformed point or vector.

Reimplemented from itk::Transform< TScalarType, 3, 3 >.

template<class TScalarType = double>
void itk::Rigid3DTransform< TScalarType >::Translate const OffsetType offset,
bool  pre = false
 

Compose the transformation with a translation

This method modifies self to include a translation of the origin. The translation is precomposed with self if pre is true, and postcomposed otherwise.


Member Data Documentation

template<class TScalarType = double>
MatrixType itk::Rigid3DTransform< TScalarType >::m_InverseMatrix [protected]
 

Definition at line 215 of file itkRigid3DTransform.h.

template<class TScalarType = double>
MatrixType itk::Rigid3DTransform< TScalarType >::m_RotationMatrix [protected]
 

Definition at line 212 of file itkRigid3DTransform.h.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 03:12:52 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000