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

itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions > Class Template Reference
[Transforms]

#include <itkMatrixOffsetTransformBase.h>

Inheritance diagram for itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >:

Inheritance graph
[legend]
Collaboration diagram for itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef MatrixOffsetTransformBase Self
typedef Transform< TScalarType,
NInputDimensions, NOutputDimensions > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Superclass::ParametersType ParametersType
typedef Superclass::JacobianType JacobianType
typedef Superclass::ScalarType ScalarType
typedef Matrix< TScalarType,
itkGetStaticConstMacro(OutputSpaceDimension),
itkGetStaticConstMacro(InputSpaceDimension) 
MatrixType )
typedef Matrix< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension),
itkGetStaticConstMacro(OutputSpaceDimension) 
InverseMatrixType )
typedef InputPointType CenterType
typedef OutputVectorType OffsetType
typedef OutputVectorType TranslationType
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 )

Public Member Functions

virtual const char * GetNameOfClass () const
virtual void SetIdentity (void)
const MatrixTypeGetMatrix () const
const OutputVectorTypeGetOffset (void) const
const InputPointTypeGetCenter () const
const OutputVectorTypeGetTranslation (void) const
void SetParameters (const ParametersType &parameters)
const ParametersTypeGetParameters (void) const
virtual void SetFixedParameters (const ParametersType &)
virtual const ParametersTypeGetFixedParameters (void) const
void Compose (const Self *other, bool pre=0)
const JacobianTypeGetJacobian (const InputPointType &point) const
const InverseMatrixTypeGetInverseMatrix (void) const
 itkStaticConstMacro (InputSpaceDimension, unsigned int, NInputDimensions)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, NOutputDimensions)
 itkStaticConstMacro (ParametersDimension, unsigned int, NOutputDimensions *(NInputDimensions+1))
virtual void SetMatrix (const MatrixType &matrix)
void SetOffset (const OutputVectorType &offset)
void SetCenter (const InputPointType &center)
void SetTranslation (const OutputVectorType &translation)
OutputPointType TransformPoint (const InputPointType &point) const
OutputVectorType TransformVector (const InputVectorType &vector) const
OutputVnlVectorType TransformVector (const InputVnlVectorType &vector) const
OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &vector) const
bool GetInverse (Self *inverse) const

Static Public Member Functions

Pointer New ()

Protected Member Functions

virtual ~MatrixOffsetTransformBase ()
void PrintSelf (std::ostream &s, Indent indent) const
InverseMatrixType GetVarInverseMatrix (void) const
void SetVarInverseMatrix (const InverseMatrixType &matrix) const
bool InverseMatrixIsOld (void) const
virtual void ComputeMatrixParameters (void)
virtual void ComputeMatrix (void)
void SetVarMatrix (const MatrixType &matrix)
virtual void ComputeTranslation (void)
void SetVarTranslation (const OutputVectorType &translation)
virtual void ComputeOffset (void)
void SetVarOffset (const OutputVectorType &offset)
void SetVarCenter (const InputPointType &center)
 MatrixOffsetTransformBase (const MatrixType &matrix, const OutputVectorType &offset)
 MatrixOffsetTransformBase (unsigned int outputDims, unsigned int paramDims)
 MatrixOffsetTransformBase ()

Detailed Description

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
class itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >

Matrix and Offset transformation of a vector space (e.g. space coordinates)

This class serves as a base class for transforms that can be expressed as a linear transformation plus a constant offset (e.g., affine, similarity and rigid transforms). This base class also provides the concept of using a center of rotation and a translation instead of an offset.

As derived instances of this class are specializations of an affine transform, any two of these transformations may be composed and the result is an affine transformation. However, the order is important. Given two affine transformations T1 and T2, we will say that "precomposing T1 with T2" yields the transformation which applies T1 to the source, and then applies T2 to that result to obtain the target. Conversely, we will say that "postcomposing T1 with T2" yields the transformation which applies T2 to the source, and then applies T1 to that result to obtain the target. (Whether T1 or T2 comes first lexicographically depends on whether you choose to write mappings from right-to-left or vice versa; we avoid the whole problem by referring to the order of application rather than the textual order.)

There are three template parameters for this class:

ScalarT The type to be used for scalar numeric values. Either float or double.

NInputDimensions The number of dimensions of the input vector space.

NOutputDimensions The number of dimensions of the output vector space.

This class provides several methods for setting the matrix and offset defining the transform. To support the registration framework, the transform parameters can also be set as an Array<double> of size (NInputDimension + 1) * NOutputDimension using method SetParameters(). The first (NOutputDimension x NInputDimension) parameters defines the matrix in column-major order (where the column index varies the fastest). The last NOutputDimension parameters defines the translation in each dimensions.

Definition at line 80 of file itkMatrixOffsetTransformBase.h.


Member Typedef Documentation

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef InputPointType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::CenterType
 

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 159 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef SmartPointer<const Self> itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::ConstPointer
 

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 90 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef CovariantVector<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::InputCovariantVectorType)
 

Standard covariant vector type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 125 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Point<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::InputPointType)
 

Standard coordinate point type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 143 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Vector<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::InputVectorType)
 

Standard vector type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 117 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef vnl_vector_fixed<TScalarType, itkGetStaticConstMacro(InputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::InputVnlVectorType)
 

Standard vnl_vector type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 134 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Matrix<TScalarType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::InverseMatrixType)
 

Standard inverse matrix type for this class

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 157 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Superclass::JacobianType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::JacobianType
 

Jacobian Type

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 110 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Matrix<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::MatrixType)
 

Standard matrix type for this class

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 152 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef OutputVectorType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::OffsetType
 

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 161 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef CovariantVector<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::OutputCovariantVectorType)
 

Standard covariant vector type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 128 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Point<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::OutputPointType)
 

Standard coordinate point type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 146 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Vector<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::OutputVectorType)
 

Standard vector type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 119 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef vnl_vector_fixed<TScalarType, itkGetStaticConstMacro(OutputSpaceDimension) itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::OutputVnlVectorType)
 

Standard vnl_vector type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 137 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Superclass::ParametersType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::ParametersType
 

Parameters Type

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 107 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef SmartPointer<Self> itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::Pointer
 

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 89 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Superclass::ScalarType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::ScalarType
 

Standard scalar type for this class

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 113 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef MatrixOffsetTransformBase itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::Self
 

Standard typedefs

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 85 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::Superclass
 

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

Definition at line 88 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
typedef OutputVectorType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::TranslationType
 

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, and itk::VersorRigid3DTransform< TScalarType >.

Definition at line 163 of file itkMatrixOffsetTransformBase.h.


Constructor & Destructor Documentation

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::MatrixOffsetTransformBase const MatrixType matrix,
const OutputVectorType offset
[protected]
 

Construct an MatrixOffsetTransformBase object

This method constructs a new MatrixOffsetTransformBase object and initializes the matrix and offset parts of the transformation to values specified by the caller. If the arguments are omitted, then the MatrixOffsetTransformBase is initialized to an identity transformation in the appropriate number of dimensions. *

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::MatrixOffsetTransformBase unsigned int  outputDims,
unsigned int  paramDims
[protected]
 

Construct an MatrixOffsetTransformBase object

This method constructs a new MatrixOffsetTransformBase object and initializes the matrix and offset parts of the transformation to values specified by the caller. If the arguments are omitted, then the MatrixOffsetTransformBase is initialized to an identity transformation in the appropriate number of dimensions. *

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::MatrixOffsetTransformBase  )  [protected]
 

Construct an MatrixOffsetTransformBase object

This method constructs a new MatrixOffsetTransformBase object and initializes the matrix and offset parts of the transformation to values specified by the caller. If the arguments are omitted, then the MatrixOffsetTransformBase is initialized to an identity transformation in the appropriate number of dimensions. *

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::~MatrixOffsetTransformBase  )  [protected, virtual]
 

Destroy an MatrixOffsetTransformBase object *


Member Function Documentation

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::Compose const Self other,
bool  pre = 0
 

Compose with another MatrixOffsetTransformBase

This method composes self with another MatrixOffsetTransformBase of the same dimension, modifying self to be the composition of self and other. If the argument pre is true, then other is precomposed with self; that is, the resulting transformation consists of first applying other to the source, followed by self. If pre is false or omitted, then other is post-composed with self; that is the resulting transformation consists of first applying self to the source, followed by other. This updates the Translation based on current center.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::ComputeMatrix void   )  [protected, virtual]
 

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::ComputeMatrixParameters void   )  [protected, virtual]
 

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

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::ComputeOffset void   )  [protected, virtual]
 

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::ComputeTranslation void   )  [protected, virtual]
 

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
const InputPointType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetCenter void   )  const [inline]
 

Get center of rotation of the MatrixOffsetTransformBase

This method returns the point used as the fixed center of rotation for the MatrixOffsetTransformBase. To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Definition at line 250 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual const ParametersType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetFixedParameters void   )  const [virtual]
 

Get the Fixed Parameters.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::CenteredRigid2DTransform< TScalarType >, and itk::CenteredSimilarity2DTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
bool itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetInverse Self inverse  )  const
 

Create inverse of an affine transformation

This populates the parameters an affine transform such that the transform is the inverse of self. If self is not invertible, an exception is thrown. Note that by default the inverese transform is centered at the origin. If you need to compute the inverse centered at a point, p,

 transform2->SetCenter( p );
 transform1->GetInverse( transform2 );

transform2 will now contain the inverse of transform1 and will with its center set to p. Flipping the two statements will produce an incorrect transform.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
const InverseMatrixType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetInverseMatrix void   )  const
 

Deprecated:
Use GetInverse instead.
Method will eventually be made a protected member function

Reimplemented in itk::QuaternionRigidTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
const JacobianType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetJacobian const InputPointType point  )  const [virtual]
 

Compute the Jacobian of the transformation

This method computes the Jacobian matrix of the transformation. given point or vector, returning the transformed point or vector. The rank of the Jacobian will also indicate if the transform is invertible at this point.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
const MatrixType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetMatrix  )  const [inline]
 

Get matrix of an MatrixOffsetTransformBase

This method returns the value of the matrix of the MatrixOffsetTransformBase. To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Definition at line 193 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual const char* itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
const OutputVectorType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetOffset void   )  const [inline]
 

Get offset of an MatrixOffsetTransformBase

This method returns the offset value of the MatrixOffsetTransformBase. To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Definition at line 214 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
const ParametersType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetParameters void   )  const [virtual]
 

Get the Transformation Parameters.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
const OutputVectorType& itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetTranslation void   )  const [inline]
 

Get translation component of the MatrixOffsetTransformBase

This method returns the translation used after rotation about the center point. To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Definition at line 270 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
InverseMatrixType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::GetVarInverseMatrix void   )  const [inline, protected]
 

Definition at line 370 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
bool itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::InverseMatrixIsOld void   )  const [inline, protected]
 

Definition at line 374 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::itkStaticConstMacro ParametersDimension  ,
unsigned  int,
NOutputDimensions *  (NInputDimensions+1)
 

Dimension of the domain space.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::itkStaticConstMacro OutputSpaceDimension  ,
unsigned  int,
NOutputDimensions 
 

Dimension of the domain space.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::itkStaticConstMacro InputSpaceDimension  ,
unsigned  int,
NInputDimensions 
 

Dimension of the domain space.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
Pointer itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::New  )  [static]
 

New macro for creation of through a Smart Pointer

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::FixedCenterOfRotationAffineTransform< TScalarType, NDimensions >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::PrintSelf std::ostream &  s,
Indent  indent
const [protected, virtual]
 

Print contents of an MatrixOffsetTransformBase

Reimplemented from itk::Object.

Reimplemented in itk::AffineTransform< TScalarType, NDimensions >, itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::Rigid3DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetCenter const InputPointType center  )  [inline]
 

Set center of rotation of an MatrixOffsetTransformBase

This method sets the center of rotation of an MatrixOffsetTransformBase to a fixed point - for most transforms derived from this class, this point is not a "parameter" of the transform - the exception is that "centered" transforms have center as a parameter during optimization.

This method updates offset wrt to current translation and matrix. That is, changing the center changes the transform!

WARNING: When using the Center, we strongly recommend only changing the matrix and translation to define a transform. Changing a transform's center, changes the mapping between spaces - specifically, translation is not changed with respect to that new center, and so the offset is updated to * maintain the consistency with translation. If a center is not used, or is set before the matrix and the offset, then it is safe to change the offset directly. As a rule of thumb, if you wish to set the center explicitly, set before Offset computations are done.

To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Definition at line 239 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetFixedParameters const ParametersType  )  [virtual]
 

Set the fixed parameters and update internal transformation.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::CenteredRigid2DTransform< TScalarType >, and itk::CenteredSimilarity2DTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetIdentity void   )  [virtual]
 

Set the transformation to an Identity

This sets the matrix to identity and the Offset to null.

Reimplemented in itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::ScalableAffineTransform< TScalarType, NDimensions >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
virtual void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetMatrix const MatrixType matrix  )  [inline, virtual]
 

Set matrix of an MatrixOffsetTransformBase

This method sets the matrix of an MatrixOffsetTransformBase to a value specified by the user.

This updates the Offset wrt to current translation and center. See the warning regarding offset-versus-translation in the documentation for SetCenter.

To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Reimplemented in itk::Rigid2DTransform< TScalarType >, and itk::Similarity2DTransform< TScalarType >.

Definition at line 181 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetOffset const OutputVectorType offset  )  [inline]
 

Set offset (origin) of an MatrixOffset TransformBase.

This method sets the offset of an MatrixOffsetTransformBase to a value specified by the user. This updates Translation wrt current center. See the warning regarding offset-versus-translation in the documentation for SetCenter. To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Definition at line 204 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetParameters const ParametersType parameters  )  [virtual]
 

Set the transformation from a container of parameters. The first (NOutputDimension x NInputDimension) parameters define the matrix and the last NOutputDimension parameters the translation. Offset is updated based on current center.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::CenteredAffineTransform< TScalarType, NDimensions >, itk::CenteredEuler3DTransform< TScalarType >, itk::CenteredRigid2DTransform< TScalarType >, itk::CenteredSimilarity2DTransform< TScalarType >, itk::Euler3DTransform< TScalarType >, itk::QuaternionRigidTransform< TScalarType >, itk::Rigid2DTransform< TScalarType >, itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity2DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::VersorTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetTranslation const OutputVectorType translation  )  [inline]
 

Set translation of an MatrixOffsetTransformBase

This method sets the translation of an MatrixOffsetTransformBase. This updates Offset to reflect current translation. To define an affine transform, you must set the matrix, center, and translation OR the matrix and offset

Definition at line 259 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetVarCenter const InputPointType center  )  [inline, protected]
 

Definition at line 392 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetVarInverseMatrix const InverseMatrixType matrix  )  const [inline, protected]
 

Definition at line 372 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetVarMatrix const MatrixType matrix  )  [inline, protected]
 

Definition at line 381 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetVarOffset const OutputVectorType offset  )  [inline, protected]
 

Definition at line 389 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
void itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::SetVarTranslation const OutputVectorType translation  )  [inline, protected]
 

Definition at line 385 of file itkMatrixOffsetTransformBase.h.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
OutputCovariantVectorType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::TransformCovariantVector const InputCovariantVectorType 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. The TransformPoint method transforms its argument as an affine point, whereas the TransformVector method transforms its argument as a vector.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::Rigid3DTransform< TScalarType >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
OutputPointType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::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. The TransformPoint method transforms its argument as an affine point, whereas the TransformVector method transforms its argument as a vector.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

Reimplemented in itk::AzimuthElevationToCartesianTransform< TScalarType, NDimensions >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
OutputVnlVectorType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::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. The TransformPoint method transforms its argument as an affine point, whereas the TransformVector method transforms its argument as a vector.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.

template<class TScalarType = double, unsigned int NInputDimensions = 3, unsigned int NOutputDimensions = 3>
OutputVectorType itk::MatrixOffsetTransformBase< TScalarType, NInputDimensions, NOutputDimensions >::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. The TransformPoint method transforms its argument as an affine point, whereas the TransformVector method transforms its argument as a vector.

Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.


The documentation for this class was generated from the following file:
Generated at Thu May 25 01:42:50 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000