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

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

#include <itkRigid3DPerspectiveTransform.h>

Inheritance diagram for itk::Rigid3DPerspectiveTransform< TScalarType >:
Collaboration diagram for itk::Rigid3DPerspectiveTransform< TScalarType >:

List of all members.

Public Types

typedef VersorType::ValueType AngleType
typedef VersorType::VectorType AxisType
typedef AxisType::ValueType AxisValueType
typedef SmartPointer< const SelfConstPointer
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef
Superclass::InputVnlVectorType 
InputVnlVectorType
typedef Superclass::JacobianType JacobianType
typedef Matrix< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension),
itkGetStaticConstMacro(InputSpaceDimension)> 
MatrixType
typedef Vector< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension)> 
OffsetType
typedef OffsetType::ValueType OffsetValueType
typedef
Superclass::OutputCovariantVectorType 
OutputCovariantVectorType
typedef
Superclass::OutputVnlVectorType 
OutputVnlVectorType
typedef Superclass::ParametersType ParametersType
typedef ParametersType::ValueType ParameterValueType
typedef SmartPointer< SelfPointer
typedef Superclass::ScalarType ScalarType
typedef Versor< TScalarType > VersorType
typedef vnl_quaternion
< TScalarType > 
VnlQuaternionType
typedef Rigid3DPerspectiveTransform Self
typedef Transform< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension),
itkGetStaticConstMacro(OutputSpaceDimension)> 
Superclass
typedef Vector< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension)> 
InputVectorType
typedef Vector< TScalarType,
itkGetStaticConstMacro(OutputSpaceDimension)> 
OutputVectorType
typedef Point< TScalarType,
itkGetStaticConstMacro(InputSpaceDimension)> 
InputPointType
typedef Point< TScalarType,
itkGetStaticConstMacro(OutputSpaceDimension)> 
OutputPointType

Public Member Functions

virtual void ComputeJacobianWithRespectToParameters (const InputPointType &p, JacobianType &jacobian) const
virtual void ComputeJacobianWithRespectToPosition (const InputPointType &, JacobianType &) const
void ComputeMatrix (void)
virtual ::itk::LightObject::Pointer CreateAnother (void) const
double GetFocalDistance (void) const
virtual const char * GetNameOfClass () const
const OffsetTypeGetOffset () const
const ParametersTypeGetParameters () const
const VersorTypeGetRotation () const
const MatrixTypeGetRotationMatrix () const
virtual void SetFixedParameters (const ParametersType &)
void SetFocalDistance (TScalarType focalDistance)
void SetOffset (const OffsetType &offset)
void SetParameters (const ParametersType &parameters)
void SetRotation (const VersorType &rotation)
void SetRotation (const Vector< TScalarType, 3 > &axis, double angle)
virtual OutputCovariantVectorType TransformCovariantVector (const InputCovariantVectorType &) const
OutputPointType TransformPoint (const InputPointType &point) const
virtual OutputVnlVectorType TransformVector (const InputVnlVectorType &) const
virtual OutputVectorType TransformVector (const InputVectorType &) const
virtual const OffsetTypeGetFixedOffset ()
virtual void SetFixedOffset (OffsetType _arg)

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int InputSpaceDimension = 3
static const unsigned int OutputSpaceDimension = 2
static const unsigned int SpaceDimension = 3
static const unsigned int ParametersDimension = 6

Private Member Functions

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

Private Attributes

InputPointType m_CenterOfRotation
OffsetType m_FixedOffset
TScalarType m_FocalDistance
OffsetType m_Offset
MatrixType m_RotationMatrix
VersorType m_Versor
virtual void SetCenterOfRotation (InputPointType _arg)
virtual const InputPointTypeGetCenterOfRotation ()
 Rigid3DPerspectiveTransform ()
 ~Rigid3DPerspectiveTransform ()
void PrintSelf (std::ostream &os, Indent indent) const

Detailed Description

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

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

This transform applies a rotation and translation to the 3D space followed by a projection to 2D space along the Z axis.

Definition at line 40 of file itkRigid3DPerspectiveTransform.h.


Member Typedef Documentation

template<class TScalarType = double>
typedef VersorType::ValueType itk::Rigid3DPerspectiveTransform< TScalarType >::AngleType

Definition at line 112 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef VersorType::VectorType itk::Rigid3DPerspectiveTransform< TScalarType >::AxisType

Definition at line 111 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef AxisType::ValueType itk::Rigid3DPerspectiveTransform< TScalarType >::AxisValueType

Definition at line 113 of file itkRigid3DPerspectiveTransform.h.

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

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

Definition at line 62 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef Superclass::InputCovariantVectorType itk::Rigid3DPerspectiveTransform< TScalarType >::InputCovariantVectorType

Standard covariant vector type for this class

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

Definition at line 94 of file itkRigid3DPerspectiveTransform.h.

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

Standard coordinate point type for this class.

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

Definition at line 98 of file itkRigid3DPerspectiveTransform.h.

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

Standard vector type for this class.

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

Definition at line 89 of file itkRigid3DPerspectiveTransform.h.

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

Standard vnl_vector type for this class.

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

Definition at line 106 of file itkRigid3DPerspectiveTransform.h.

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

Jacobian type.

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

Definition at line 78 of file itkRigid3DPerspectiveTransform.h.

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

Standard matrix type for this class.

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

Definition at line 82 of file itkRigid3DPerspectiveTransform.h.

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

Standard vector type for this class.

Definition at line 85 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef OffsetType::ValueType itk::Rigid3DPerspectiveTransform< TScalarType >::OffsetValueType

Definition at line 86 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef Superclass::OutputCovariantVectorType itk::Rigid3DPerspectiveTransform< TScalarType >::OutputCovariantVectorType

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

Definition at line 95 of file itkRigid3DPerspectiveTransform.h.

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

Standard coordinate point type for this class.

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

Definition at line 99 of file itkRigid3DPerspectiveTransform.h.

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

Standard vector type for this class.

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

Definition at line 90 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef Superclass::OutputVnlVectorType itk::Rigid3DPerspectiveTransform< TScalarType >::OutputVnlVectorType

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

Definition at line 107 of file itkRigid3DPerspectiveTransform.h.

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

Parameters type.

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

Definition at line 74 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef ParametersType::ValueType itk::Rigid3DPerspectiveTransform< TScalarType >::ParameterValueType

Definition at line 75 of file itkRigid3DPerspectiveTransform.h.

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

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

Definition at line 61 of file itkRigid3DPerspectiveTransform.h.

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

Scalar type.

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

Definition at line 68 of file itkRigid3DPerspectiveTransform.h.

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

Standard class typedefs.

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

Definition at line 55 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
typedef Transform<TScalarType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension)> itk::Rigid3DPerspectiveTransform< TScalarType >::Superclass

Standard class typedefs.

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

Definition at line 58 of file itkRigid3DPerspectiveTransform.h.

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

Versor type.

Definition at line 110 of file itkRigid3DPerspectiveTransform.h.

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

Standard vnl_quaternion type.

Definition at line 103 of file itkRigid3DPerspectiveTransform.h.


Constructor & Destructor Documentation

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

Set the center of Rotation

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

Set the center of Rotation

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

Member Function Documentation

template<class TScalarType = double>
virtual void itk::Rigid3DPerspectiveTransform< TScalarType >::ComputeJacobianWithRespectToParameters ( const InputPointType p,
JacobianType jacobian 
) const [virtual]

Compute the Jacobian Matrix of the transformation at one point, allowing for thread-safety.

template<class TScalarType = double>
virtual void itk::Rigid3DPerspectiveTransform< TScalarType >::ComputeJacobianWithRespectToPosition ( const InputPointType ,
JacobianType  
) const [inline, virtual]

Definition at line 219 of file itkRigid3DPerspectiveTransform.h.

References itkExceptionMacro.

template<class TScalarType = double>
void itk::Rigid3DPerspectiveTransform< TScalarType >::ComputeMatrix ( void  )

Compute the matrix.

template<class TScalarType = double>
virtual::itk::LightObject::Pointer itk::Rigid3DPerspectiveTransform< TScalarType >::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::Object.

template<class TScalarType = double>
virtual const InputPointType& itk::Rigid3DPerspectiveTransform< TScalarType >::GetCenterOfRotation ( ) [virtual]

Set the center of Rotation

template<class TScalarType = double>
virtual const OffsetType& itk::Rigid3DPerspectiveTransform< TScalarType >::GetFixedOffset ( ) [virtual]

Set a fixed offset: this allow to center the object to be transformed

template<class TScalarType = double>
double itk::Rigid3DPerspectiveTransform< TScalarType >::GetFocalDistance ( void  ) const [inline]

Return the Focal Distance

Definition at line 172 of file itkRigid3DPerspectiveTransform.h.

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

Run-time type information (and related methods).

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

template<class TScalarType = double>
const OffsetType& itk::Rigid3DPerspectiveTransform< TScalarType >::GetOffset ( void  ) const [inline]

Get offset of an Rigid3DPerspectiveTransform This method returns the value of the offset of the Rigid3DPerspectiveTransform.

Definition at line 118 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
const ParametersType& itk::Rigid3DPerspectiveTransform< TScalarType >::GetParameters ( void  ) const [virtual]

Get the Transformation Parameters.

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

template<class TScalarType = double>
const VersorType& itk::Rigid3DPerspectiveTransform< TScalarType >::GetRotation ( ) const [inline]

Get rotation from an Rigid3DPerspectiveTransform. This method returns the value of the rotation of the Rigid3DPerspectiveTransform.

Definition at line 126 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
const MatrixType& itk::Rigid3DPerspectiveTransform< TScalarType >::GetRotationMatrix ( ) const [inline]

Return the rotation matrix

Definition at line 207 of file itkRigid3DPerspectiveTransform.h.

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

New macro for creation of through a Smart Pointer.

Reimplemented from itk::Object.

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

Mutex lock to protect modification to the reference count

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

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

Set the center of Rotation

Reimplemented from itk::Object.

template<class TScalarType = double>
virtual void itk::Rigid3DPerspectiveTransform< TScalarType >::SetCenterOfRotation ( InputPointType  _arg) [virtual]

Set the center of Rotation

template<class TScalarType = double>
virtual void itk::Rigid3DPerspectiveTransform< TScalarType >::SetFixedOffset ( OffsetType  _arg) [virtual]

Set a fixed offset: this allow to center the object to be transformed

template<class TScalarType = double>
virtual void itk::Rigid3DPerspectiveTransform< TScalarType >::SetFixedParameters ( const ParametersType ) [inline, virtual]

Set the fixed parameters and update internal transformation. This transform has no fixed paramaters

Definition at line 142 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
void itk::Rigid3DPerspectiveTransform< TScalarType >::SetFocalDistance ( TScalarType  focalDistance) [inline]

Set the Focal Distance of the projection This method sets the focal distance for the perspective projection to a value specified by the user.

Definition at line 166 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
void itk::Rigid3DPerspectiveTransform< TScalarType >::SetOffset ( const OffsetType offset) [inline]

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

Definition at line 148 of file itkRigid3DPerspectiveTransform.h.

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

Set/Get the transformation from a container of parameters. This is typically used by optimizers. There are 6 parameters. The first three represent the versor and the last three represents the offset.

template<class TScalarType = double>
void itk::Rigid3DPerspectiveTransform< TScalarType >::SetRotation ( const Vector< TScalarType, 3 > &  axis,
double  angle 
)

Set Rotation of the Rigid transform. This method sets the rotation of an Rigid3DTransform to a value specified by the user using the axis of rotation an the angle.

template<class TScalarType = double>
void itk::Rigid3DPerspectiveTransform< TScalarType >::SetRotation ( const VersorType rotation)

This method sets the rotation of an Rigid3DPerspectiveTransform to a value specified by the user.

template<class TScalarType = double>
virtual OutputCovariantVectorType itk::Rigid3DPerspectiveTransform< TScalarType >::TransformCovariantVector ( const InputCovariantVectorType ) const [inline, virtual]

Definition at line 199 of file itkRigid3DPerspectiveTransform.h.

References itkExceptionMacro.

template<class TScalarType = double>
OutputPointType itk::Rigid3DPerspectiveTransform< TScalarType >::TransformPoint ( const InputPointType point) const

Transform by a Rigid3DPerspectiveTransform. This method applies the transform given by self to a given point, returning the transformed point.

template<class TScalarType = double>
virtual OutputVectorType itk::Rigid3DPerspectiveTransform< TScalarType >::TransformVector ( const InputVectorType ) const [inline, virtual]

Definition at line 185 of file itkRigid3DPerspectiveTransform.h.

References itkExceptionMacro.

template<class TScalarType = double>
virtual OutputVnlVectorType itk::Rigid3DPerspectiveTransform< TScalarType >::TransformVector ( const InputVnlVectorType ) const [inline, virtual]

Definition at line 191 of file itkRigid3DPerspectiveTransform.h.

References itkExceptionMacro.


Member Data Documentation

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

Dimension of the domain space.

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

Definition at line 45 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
InputPointType itk::Rigid3DPerspectiveTransform< TScalarType >::m_CenterOfRotation [private]

Center of rotation

Definition at line 260 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
OffsetType itk::Rigid3DPerspectiveTransform< TScalarType >::m_FixedOffset [private]

Fixed offset

Definition at line 257 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
TScalarType itk::Rigid3DPerspectiveTransform< TScalarType >::m_FocalDistance [private]

Set Focal distance of the projection.

Definition at line 251 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
OffsetType itk::Rigid3DPerspectiveTransform< TScalarType >::m_Offset [private]

Offset of the transformation.

Definition at line 245 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
MatrixType itk::Rigid3DPerspectiveTransform< TScalarType >::m_RotationMatrix [private]

Matrix representation of the rotation.

Definition at line 254 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
VersorType itk::Rigid3DPerspectiveTransform< TScalarType >::m_Versor [private]

Rotation of the transformation.

Definition at line 248 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
const unsigned int itk::Rigid3DPerspectiveTransform< TScalarType >::OutputSpaceDimension = 2 [static]

Dimension of the domain space.

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

Definition at line 46 of file itkRigid3DPerspectiveTransform.h.

template<class TScalarType = double>
const unsigned int itk::Rigid3DPerspectiveTransform< TScalarType >::ParametersDimension = 6 [static]

Dimension of parameters.

Definition at line 51 of file itkRigid3DPerspectiveTransform.h.

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

Dimension of parameters.

Definition at line 50 of file itkRigid3DPerspectiveTransform.h.


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