go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
itk::AdvancedSimilarity2DTransform< TScalarType > Class Template Reference

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

#include <itkAdvancedSimilarity2DTransform.h>

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

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef Superclass::InputPointType InputPointType
typedef Superclass::InputVectorType InputVectorType
typedef
Superclass::InputVnlVectorType 
InputVnlVectorType
typedef
Superclass::InternalMatrixType 
InternalMatrixType
typedef
Superclass::JacobianOfSpatialHessianType 
JacobianOfSpatialHessianType
typedef
Superclass::JacobianOfSpatialJacobianType 
JacobianOfSpatialJacobianType
typedef Superclass::JacobianType JacobianType
typedef Superclass::MatrixType MatrixType
typedef
Superclass::NonZeroJacobianIndicesType 
NonZeroJacobianIndicesType
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 SmartPointer< SelfPointer
typedef Superclass::ScalarType ScalarType
typedef TScalarType ScaleType
typedef
AdvancedSimilarity2DTransform 
Self
typedef
Superclass::SpatialHessianType 
SpatialHessianType
typedef
Superclass::SpatialJacobianType 
SpatialJacobianType
typedef
AdvancedRigid2DTransform
< TScalarType > 
Superclass

Public Member Functions

void CloneInverseTo (Pointer &newinverse) const
void CloneTo (Pointer &clone) const
virtual const char * GetClassName () const
virtual void GetJacobian (const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
const ParametersTypeGetParameters (void) const
virtual const ScaleTypeGetScale ()
 itkStaticConstMacro (SpaceDimension, unsigned int, 2)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, 2)
 itkStaticConstMacro (ParametersDimension, unsigned int, 4)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, 2)
virtual void SetIdentity (void)
virtual void SetMatrix (const MatrixType &matrix)
void SetParameters (const ParametersType &parameters)
void SetScale (ScaleType scale)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 AdvancedSimilarity2DTransform ()
 AdvancedSimilarity2DTransform (unsigned int spaceDimension, unsigned int parametersDimension)
virtual void ComputeMatrix (void)
virtual void ComputeMatrixParameters (void)
virtual void PrecomputeJacobianOfSpatialJacobian (void)
void PrintSelf (std::ostream &os, Indent indent) const
void SetVarScale (ScaleType scale)
 ~AdvancedSimilarity2DTransform ()

Private Member Functions

 AdvancedSimilarity2DTransform (const Self &)
void operator= (const Self &)

Private Attributes

ScaleType m_Scale

Detailed Description

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

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

This transform applies a homogenous scale and rigid transform in 2D space. The transform is specified as a scale and rotation around a arbitrary center and is followed by a translation. given one angle for rotation, a homogeneous scale and a 2D offset for translation.

The parameters for this transform can be set either using individual Set methods or in serialized form using SetParameters() and SetFixedParameters().

The serialization of the optimizable parameters is an array of 3 elements ordered as follows: p[0] = scale p[1] = angle p[2] = x component of the translation p[3] = y component of the translation

The serialization of the fixed parameters is an array of 2 elements ordered as follows: p[0] = x coordinate of the center p[1] = y coordinate of the center

Access methods for the center, translation and underlying matrix offset vectors are documented in the superclass MatrixOffsetTransformBase.

Access methods for the angle are documented in superclass Rigid2DTransform.

See also:
Transform
MatrixOffsetTransformBase
Rigid2DTransform

Definition at line 62 of file itkAdvancedSimilarity2DTransform.h.


Member Typedef Documentation

template<class TScalarType = double>
typedef SmartPointer<const Self> itk::AdvancedSimilarity2DTransform< TScalarType >::ConstPointer
template<class TScalarType = double>
typedef Superclass::InputCovariantVectorType itk::AdvancedSimilarity2DTransform< TScalarType >::InputCovariantVectorType

CovariantVector type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 109 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass::InputPointType itk::AdvancedSimilarity2DTransform< TScalarType >::InputPointType

Point type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 101 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass::InputVectorType itk::AdvancedSimilarity2DTransform< TScalarType >::InputVectorType

Vector type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 105 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass::InputVnlVectorType itk::AdvancedSimilarity2DTransform< TScalarType >::InputVnlVectorType

VnlVector type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 113 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass::InternalMatrixType itk::AdvancedSimilarity2DTransform< TScalarType >::InternalMatrixType
template<class TScalarType = double>
typedef Superclass ::JacobianOfSpatialHessianType itk::AdvancedSimilarity2DTransform< TScalarType >::JacobianOfSpatialHessianType
template<class TScalarType = double>
typedef Superclass ::JacobianOfSpatialJacobianType itk::AdvancedSimilarity2DTransform< TScalarType >::JacobianOfSpatialJacobianType
template<class TScalarType = double>
typedef Superclass::JacobianType itk::AdvancedSimilarity2DTransform< TScalarType >::JacobianType

Jacobian type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 92 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass::MatrixType itk::AdvancedSimilarity2DTransform< TScalarType >::MatrixType

Matrix type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 98 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass ::NonZeroJacobianIndicesType itk::AdvancedSimilarity2DTransform< TScalarType >::NonZeroJacobianIndicesType
template<class TScalarType = double>
typedef Superclass::OffsetType itk::AdvancedSimilarity2DTransform< TScalarType >::OffsetType

Offset type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 95 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass::OutputCovariantVectorType itk::AdvancedSimilarity2DTransform< TScalarType >::OutputCovariantVectorType
template<class TScalarType = double>
typedef Superclass::OutputPointType itk::AdvancedSimilarity2DTransform< TScalarType >::OutputPointType
template<class TScalarType = double>
typedef Superclass::OutputVectorType itk::AdvancedSimilarity2DTransform< TScalarType >::OutputVectorType
template<class TScalarType = double>
typedef Superclass::OutputVnlVectorType itk::AdvancedSimilarity2DTransform< TScalarType >::OutputVnlVectorType
template<class TScalarType = double>
typedef Superclass::ParametersType itk::AdvancedSimilarity2DTransform< TScalarType >::ParametersType

Parameters type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 89 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef SmartPointer<Self> itk::AdvancedSimilarity2DTransform< TScalarType >::Pointer
template<class TScalarType = double>
typedef Superclass::ScalarType itk::AdvancedSimilarity2DTransform< TScalarType >::ScalarType

Scalar type.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 85 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef TScalarType itk::AdvancedSimilarity2DTransform< TScalarType >::ScaleType

Definition at line 86 of file itkAdvancedSimilarity2DTransform.h.

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

Standard class typedefs.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

Definition at line 67 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
typedef Superclass::SpatialHessianType itk::AdvancedSimilarity2DTransform< TScalarType >::SpatialHessianType
template<class TScalarType = double>
typedef Superclass::SpatialJacobianType itk::AdvancedSimilarity2DTransform< TScalarType >::SpatialJacobianType
template<class TScalarType = double>
typedef AdvancedRigid2DTransform< TScalarType > itk::AdvancedSimilarity2DTransform< TScalarType >::Superclass

Constructor & Destructor Documentation

template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::AdvancedSimilarity2DTransform ( ) [protected]
template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::AdvancedSimilarity2DTransform ( unsigned int  spaceDimension,
unsigned int  parametersDimension 
) [protected]
template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::~AdvancedSimilarity2DTransform ( ) [inline, protected]

Definition at line 198 of file itkAdvancedSimilarity2DTransform.h.

template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::AdvancedSimilarity2DTransform ( const Self ) [private]

Member Function Documentation

template<class TScalarType = double>
void itk::AdvancedSimilarity2DTransform< TScalarType >::CloneInverseTo ( Pointer newinverse) const

This method creates and returns a new AdvancedSimilarity2DTransform object which is the inverse of self.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
void itk::AdvancedSimilarity2DTransform< TScalarType >::CloneTo ( Pointer clone) const

This method creates and returns a new AdvancedSimilarity2DTransform object which has the same parameters.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
virtual void itk::AdvancedSimilarity2DTransform< TScalarType >::ComputeMatrix ( void  ) [protected, virtual]

Compute matrix from angle and scale. This is used in Set methods to update the underlying matrix whenever a transform parameter is changed.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
virtual void itk::AdvancedSimilarity2DTransform< TScalarType >::ComputeMatrixParameters ( void  ) [protected, virtual]

Compute the angle and scale from the matrix. This is used to compute transform parameters from a given matrix. This is used in MatrixOffsetTransformBase::Compose() and MatrixOffsetTransformBase::GetInverse().

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

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

Run-time type information (and related methods).

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
virtual void itk::AdvancedSimilarity2DTransform< TScalarType >::GetJacobian ( const InputPointType ,
JacobianType ,
NonZeroJacobianIndicesType  
) const [virtual]

This method computes the Jacobian matrix of the transformation at a given input point.

See also:
Transform::GetJacobian() Compute the Jacobian of the transformation.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
const ParametersType& itk::AdvancedSimilarity2DTransform< TScalarType >::GetParameters ( void  ) const

Get the parameters that uniquely define the transform This is typically used by optimizers. There are 4 parameters. The first one represents the scale, the second represents the angle of rotation, and the last two represent the translation. The center of rotation is fixed.

See also:
Transform::GetParameters()
Transform::GetFixedParameters()

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
virtual const ScaleType& itk::AdvancedSimilarity2DTransform< TScalarType >::GetScale ( ) [virtual]
template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::itkStaticConstMacro ( InputSpaceDimension  ,
unsigned  int,
 
)
template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::itkStaticConstMacro ( OutputSpaceDimension  ,
unsigned  int,
 
)
template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::itkStaticConstMacro ( SpaceDimension  ,
unsigned  int,
 
)

Dimension of parameters.

template<class TScalarType = double>
itk::AdvancedSimilarity2DTransform< TScalarType >::itkStaticConstMacro ( ParametersDimension  ,
unsigned  int,
 
)
template<class TScalarType = double>
static Pointer itk::AdvancedSimilarity2DTransform< TScalarType >::New ( ) [static]

New macro for creation of through a Smart Pointer.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
void itk::AdvancedSimilarity2DTransform< TScalarType >::operator= ( const Self ) [private]
template<class TScalarType = double>
virtual void itk::AdvancedSimilarity2DTransform< TScalarType >::PrecomputeJacobianOfSpatialJacobian ( void  ) [protected, virtual]

Update the m_JacobianOfSpatialJacobian.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

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

Set the transformation to an identity.

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
virtual void itk::AdvancedSimilarity2DTransform< TScalarType >::SetMatrix ( const MatrixType matrix) [virtual]

Set the rotation Matrix of a Similarity 2D Transform

This method sets the 2x2 matrix representing a similarity transform. The Matrix is expected to be a valid similarity transform with a certain tolerance.

Warning:
This method will throw an exception if the matrix provided as argument is not valid.
See also:
MatrixOffsetTransformBase::SetMatrix()

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
void itk::AdvancedSimilarity2DTransform< TScalarType >::SetParameters ( const ParametersType parameters)

Set the transformation from a container of parameters This is typically used by optimizers. There are 4 parameters. The first one represents the scale, the second represents the angle of rotation and the last two represent the translation. The center of rotation is fixed.

See also:
Transform::SetParameters()
Transform::SetFixedParameters()

Reimplemented from itk::AdvancedRigid2DTransform< TScalarType >.

template<class TScalarType = double>
void itk::AdvancedSimilarity2DTransform< TScalarType >::SetScale ( ScaleType  scale)

Set the Scale part of the transform.

template<class TScalarType = double>
void itk::AdvancedSimilarity2DTransform< TScalarType >::SetVarScale ( ScaleType  scale) [inline, protected]

Set the scale without updating underlying variables.

Definition at line 213 of file itkAdvancedSimilarity2DTransform.h.


Field Documentation

template<class TScalarType = double>
ScaleType itk::AdvancedSimilarity2DTransform< TScalarType >::m_Scale [private]

Definition at line 223 of file itkAdvancedSimilarity2DTransform.h.



Generated on 24-10-2011 for elastix by doxygen 1.7.4 elastix logo