ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
itk::ScalableAffineTransform< TScalarType, NDimensions > Class Template Reference

Affine transformation with a specified center of rotation. More...

#include <itkScalableAffineTransform.h>

Inheritance diagram for itk::ScalableAffineTransform< TScalarType, NDimensions >:
Collaboration diagram for itk::ScalableAffineTransform< TScalarType, NDimensions >:

List of all members.

Public Types

typedef Superclass::CenterType CenterType
typedef SmartPointer< const SelfConstPointer
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef Superclass::InputPointType InputPointType
typedef Superclass::InputVectorType InputVectorType
typedef
Superclass::InputVnlVectorType 
InputVnlVectorType
typedef
Superclass::InverseMatrixType 
InverseMatrixType
typedef
InverseTransformBaseType::Pointer 
InverseTransformBasePointer
typedef
Superclass::InverseTransformBaseType 
InverseTransformBaseType
typedef Superclass::JacobianType JacobianType
typedef Superclass::MatrixType MatrixType
typedef Superclass::MatrixValueType MatrixValueType
typedef Superclass::OffsetType OffsetType
typedef
Superclass::OutputCovariantVectorType 
OutputCovariantVectorType
typedef Superclass::OutputPointType OutputPointType
typedef
Superclass::OutputVectorType 
OutputVectorType
typedef
Superclass::OutputVnlVectorType 
OutputVnlVectorType
typedef Superclass::ParametersType ParametersType
typedef
Superclass::ParametersValueType 
ParametersValueType
typedef SmartPointer< SelfPointer
typedef Superclass::ScalarType ScalarType
typedef ScalableAffineTransform Self
typedef AffineTransform
< TScalarType, NDimensions > 
Superclass
typedef Superclass::TranslationType TranslationType

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
bool GetInverse (Self *inverse) const
virtual InverseTransformBasePointer GetInverseTransform () const
const MatrixTypeGetMatrixComponent () const
virtual const char * GetNameOfClass () const
const OffsetTypeGetOffsetComponent (void) const
void SetIdentity (void)
void SetMatrixComponent (const MatrixType &matrix)
void SetOffsetComponent (const OffsetType &offset)
virtual void SetScale (const double scale[NDimensions])
virtual void SetScale (const InputVectorType &scale)
virtual void SetScaleComponent (const double scale[NDimensions])
virtual void SetScaleComponent (const InputVectorType &scale)
virtual const double * GetScale () const
virtual const double * GetScaleComponent () const

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int InputSpaceDimension = NDimensions
static const unsigned int OutputSpaceDimension = NDimensions
static const unsigned int SpaceDimension = NDimensions
static const unsigned int ParametersDimension = NDimensions * ( NDimensions + 1 )

Protected Member Functions

void ComputeMatrix ()
void PrintSelf (std::ostream &s, Indent indent) const
void SetVarScale (const double *scale)
virtual ~ScalableAffineTransform ()
 ScalableAffineTransform (const MatrixType &matrix, const OutputVectorType &offset)
 ScalableAffineTransform (unsigned int outputSpaceDimension, unsigned int parametersDimension)
 ScalableAffineTransform (unsigned int parametersDimension)
 ScalableAffineTransform ()

Private Member Functions

const Selfoperator= (const Self &)
 ScalableAffineTransform (const Self &other)

Private Attributes

InputVectorType m_MatrixScale
double m_Scale [NDimensions]

Detailed Description

template<class TScalarType = double, unsigned int NDimensions = 3>
class itk::ScalableAffineTransform< TScalarType, NDimensions >

Affine transformation with a specified center of rotation.

This class implements an Affine transform in which the rotation center can be explicitly selected.

Definition at line 37 of file itkScalableAffineTransform.h.


Member Typedef Documentation

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::CenterType itk::ScalableAffineTransform< TScalarType, NDimensions >::CenterType
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef SmartPointer< const Self > itk::ScalableAffineTransform< TScalarType, NDimensions >::ConstPointer
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::InputCovariantVectorType itk::ScalableAffineTransform< TScalarType, NDimensions >::InputCovariantVectorType

Standard covariant vector type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 68 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::InputPointType itk::ScalableAffineTransform< TScalarType, NDimensions >::InputPointType

Standard coordinate point type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 72 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::InputVectorType itk::ScalableAffineTransform< TScalarType, NDimensions >::InputVectorType

Standard vector type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 66 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::InputVnlVectorType itk::ScalableAffineTransform< TScalarType, NDimensions >::InputVnlVectorType
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::InverseMatrixType itk::ScalableAffineTransform< TScalarType, NDimensions >::InverseMatrixType

Standard inverse matrix type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 76 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef InverseTransformBaseType::Pointer itk::ScalableAffineTransform< TScalarType, NDimensions >::InverseTransformBasePointer

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

Definition at line 84 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::InverseTransformBaseType itk::ScalableAffineTransform< TScalarType, NDimensions >::InverseTransformBaseType

Base inverse transform type. This type should not be changed to the concrete inverse transform type or inheritance would be lost.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

Definition at line 83 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::JacobianType itk::ScalableAffineTransform< TScalarType, NDimensions >::JacobianType
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::MatrixType itk::ScalableAffineTransform< TScalarType, NDimensions >::MatrixType

Standard matrix type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 74 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::MatrixValueType itk::ScalableAffineTransform< TScalarType, NDimensions >::MatrixValueType

Standard matrix type for this class

Reimplemented from itk::MatrixOffsetTransformBase< TScalarType, NDimensions, NDimensions >.

Definition at line 75 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::OffsetType itk::ScalableAffineTransform< TScalarType, NDimensions >::OffsetType
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::OutputCovariantVectorType itk::ScalableAffineTransform< TScalarType, NDimensions >::OutputCovariantVectorType

Standard covariant vector type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 69 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::OutputPointType itk::ScalableAffineTransform< TScalarType, NDimensions >::OutputPointType

Standard coordinate point type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 73 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::OutputVectorType itk::ScalableAffineTransform< TScalarType, NDimensions >::OutputVectorType

Standard vector type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 67 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::OutputVnlVectorType itk::ScalableAffineTransform< TScalarType, NDimensions >::OutputVnlVectorType
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::ParametersType itk::ScalableAffineTransform< TScalarType, NDimensions >::ParametersType

Types taken from the Superclass

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 62 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::ParametersValueType itk::ScalableAffineTransform< TScalarType, NDimensions >::ParametersValueType

Type of the input parameters.

Reimplemented from itk::MatrixOffsetTransformBase< TScalarType, NDimensions, NDimensions >.

Definition at line 63 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef SmartPointer< Self > itk::ScalableAffineTransform< TScalarType, NDimensions >::Pointer
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::ScalarType itk::ScalableAffineTransform< TScalarType, NDimensions >::ScalarType

Standard scalar type for this class

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 65 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
typedef ScalableAffineTransform itk::ScalableAffineTransform< TScalarType, NDimensions >::Self
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef AffineTransform< TScalarType, NDimensions > itk::ScalableAffineTransform< TScalarType, NDimensions >::Superclass
template<class TScalarType = double, unsigned int NDimensions = 3>
typedef Superclass::TranslationType itk::ScalableAffineTransform< TScalarType, NDimensions >::TranslationType

Constructor & Destructor Documentation

template<class TScalarType = double, unsigned int NDimensions = 3>
itk::ScalableAffineTransform< TScalarType, NDimensions >::ScalableAffineTransform ( const MatrixType matrix,
const OutputVectorType offset 
) [protected]

Construct an ScalableAffineTransform object

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

template<class TScalarType = double, unsigned int NDimensions = 3>
itk::ScalableAffineTransform< TScalarType, NDimensions >::ScalableAffineTransform ( unsigned int  outputSpaceDimension,
unsigned int  parametersDimension 
) [protected]

Construct an ScalableAffineTransform object

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

template<class TScalarType = double, unsigned int NDimensions = 3>
itk::ScalableAffineTransform< TScalarType, NDimensions >::ScalableAffineTransform ( unsigned int  parametersDimension) [protected]

Construct an ScalableAffineTransform object

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

template<class TScalarType = double, unsigned int NDimensions = 3>
itk::ScalableAffineTransform< TScalarType, NDimensions >::ScalableAffineTransform ( ) [protected]

Construct an ScalableAffineTransform object

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

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual itk::ScalableAffineTransform< TScalarType, NDimensions >::~ScalableAffineTransform ( ) [protected, virtual]

Destroy an ScalableAffineTransform object

template<class TScalarType = double, unsigned int NDimensions = 3>
itk::ScalableAffineTransform< TScalarType, NDimensions >::ScalableAffineTransform ( const Self other) [private]

Member Function Documentation

template<class TScalarType = double, unsigned int NDimensions = 3>
void itk::ScalableAffineTransform< TScalarType, NDimensions >::ComputeMatrix ( ) [protected, virtual]
template<class TScalarType = double, unsigned int NDimensions = 3>
virtual::itk::LightObject::Pointer itk::ScalableAffineTransform< TScalarType, NDimensions >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

template<class TScalarType = double, unsigned int NDimensions = 3>
bool itk::ScalableAffineTransform< TScalarType, NDimensions >::GetInverse ( Self inverse) const

Get an inverse of this transform.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual InverseTransformBasePointer itk::ScalableAffineTransform< TScalarType, NDimensions >::GetInverseTransform ( ) const [virtual]

Return an inverse of this transform.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

template<class TScalarType = double, unsigned int NDimensions = 3>
const MatrixType& itk::ScalableAffineTransform< TScalarType, NDimensions >::GetMatrixComponent ( ) const [inline]

Get matrix of the transform.

Deprecated:
use GetMatrix instead

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

Definition at line 120 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual const char* itk::ScalableAffineTransform< TScalarType, NDimensions >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

template<class TScalarType = double, unsigned int NDimensions = 3>
const OffsetType& itk::ScalableAffineTransform< TScalarType, NDimensions >::GetOffsetComponent ( void  ) const [inline]

Get offset of the transform

Deprecated:
use GetTranslation instead.

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

Definition at line 132 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual const double* itk::ScalableAffineTransform< TScalarType, NDimensions >::GetScale ( ) const [inline, virtual]

Get the scale of the transform

Definition at line 104 of file itkScalableAffineTransform.h.

Referenced by itk::SpatialObject< ::itk::GetMeshDimension< TMesh >::PointDimension >::GetSpacing().

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual const double* itk::ScalableAffineTransform< TScalarType, NDimensions >::GetScaleComponent ( ) const [inline, virtual]

Get the scale of the transform

Definition at line 106 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
static Pointer itk::ScalableAffineTransform< TScalarType, NDimensions >::New ( ) [static]

New macro for creation of through a Smart Pointer

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

template<class TScalarType = double, unsigned int NDimensions = 3>
const Self& itk::ScalableAffineTransform< TScalarType, NDimensions >::operator= ( const Self ) [private]

Mutex lock to protect modification to the reference count

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

template<class TScalarType = double, unsigned int NDimensions = 3>
void itk::ScalableAffineTransform< TScalarType, NDimensions >::PrintSelf ( std::ostream &  s,
Indent  indent 
) const [protected, virtual]
template<class TScalarType = double, unsigned int NDimensions = 3>
void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetIdentity ( void  ) [virtual]

Set the transformation to an Identity

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

Reimplemented from itk::MatrixOffsetTransformBase< TScalarType, NDimensions, NDimensions >.

template<class TScalarType = double, unsigned int NDimensions = 3>
void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetMatrixComponent ( const MatrixType matrix) [inline]

Set the matrix of the transform. The matrix should not include scale.

Deprecated:
use SetMatrix instead

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

Definition at line 114 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetOffsetComponent ( const OffsetType offset) [inline]

Set offset (origin) of the Transform.

Deprecated:
use SetTranslation instead.

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

Definition at line 126 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetScale ( const InputVectorType scale) [virtual]
template<class TScalarType = double, unsigned int NDimensions = 3>
virtual void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetScale ( const double  scale[NDimensions]) [virtual]

Set the scale of the transform

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetScaleComponent ( const double  scale[NDimensions]) [inline, virtual]

Definition at line 100 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
virtual void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetScaleComponent ( const InputVectorType scale) [inline, virtual]

Definition at line 94 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
void itk::ScalableAffineTransform< TScalarType, NDimensions >::SetVarScale ( const double *  scale) [inline, protected]

Definition at line 165 of file itkScalableAffineTransform.h.


Member Data Documentation

template<class TScalarType = double, unsigned int NDimensions = 3>
const unsigned int itk::ScalableAffineTransform< TScalarType, NDimensions >::InputSpaceDimension = NDimensions [static]

Dimension of the domain space.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 54 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
InputVectorType itk::ScalableAffineTransform< TScalarType, NDimensions >::m_MatrixScale [private]

Definition at line 173 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
double itk::ScalableAffineTransform< TScalarType, NDimensions >::m_Scale[NDimensions] [private]

Definition at line 172 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
const unsigned int itk::ScalableAffineTransform< TScalarType, NDimensions >::OutputSpaceDimension = NDimensions [static]

Dimension of the domain space.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 55 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
const unsigned int itk::ScalableAffineTransform< TScalarType, NDimensions >::ParametersDimension = NDimensions * ( NDimensions + 1 ) [static]

Dimension of the domain space.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 58 of file itkScalableAffineTransform.h.

template<class TScalarType = double, unsigned int NDimensions = 3>
const unsigned int itk::ScalableAffineTransform< TScalarType, NDimensions >::SpaceDimension = NDimensions [static]

Dimension of the domain space.

Reimplemented from itk::AffineTransform< TScalarType, NDimensions >.

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

Definition at line 56 of file itkScalableAffineTransform.h.


The documentation for this class was generated from the following file: