ITK
4.3.0
Insight Segmentation and Registration Toolkit
|
#include <itkVersorTransform.h>
VersorTransform of a vector space (e.g. space coordinates)
This transform applies a rotation to the space. Rotation is about a user specified center.
The serialization of the optimizable parameters is an array of 3 elements representing the right part of the versor.
The serialization of the fixed parameters is an array of 3 elements defining the center of rotation.
TODO: Need to make sure that the translation parameters in the baseclass cannot be set to non-zero values.
Definition at line 48 of file itkVersorTransform.h.
Public Types | |
typedef VersorType::ValueType | AngleType |
typedef VersorType::VectorType | AxisType |
typedef AxisType::ValueType | AxisValueType |
typedef Superclass::CenterType | CenterType |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::InputCovariantVectorType | InputCovariantVectorType |
typedef Superclass::InputPointType | InputPointType |
typedef Superclass::InputVectorType | InputVectorType |
typedef Superclass::InputVnlVectorType | InputVnlVectorType |
typedef Superclass::InverseMatrixType | InverseMatrixType |
typedef Superclass::JacobianType | JacobianType |
typedef Superclass::MatrixType | MatrixType |
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 ParametersType::ValueType | ParameterValueType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScalarType | ScalarType |
typedef VersorTransform | Self |
typedef Rigid3DTransform < TScalarType > | Superclass |
typedef Versor< TScalarType > | VersorType |
typedef vnl_quaternion < TScalarType > | VnlQuaternionType |
Public Types inherited from itk::Rigid3DTransform< TScalarType > | |
typedef Superclass::CenterType | CenterType |
typedef SmartPointer< const Self > | ConstPointer |
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::OutputVectorValueType | OutputVectorValueType |
typedef Superclass::OutputVnlVectorType | OutputVnlVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScalarType | ScalarType |
typedef Rigid3DTransform | Self |
typedef MatrixOffsetTransformBase < TScalarType, 3, 3 > | Superclass |
typedef Superclass::TranslationType | TranslationType |
Public Types inherited from itk::MatrixOffsetTransformBase< TScalarType, 3, 3 > | |
typedef InputPointType | CenterType |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::InputDiffusionTensor3DType | InputDiffusionTensor3DType |
typedef Superclass::InputSymmetricSecondRankTensorType | InputSymmetricSecondRankTensorType |
typedef CovariantVector < TScalarType, InputDiffusionTensor3DType::Dimension > | InputTensorEigenVectorType |
typedef Superclass::InputVectorPixelType | InputVectorPixelType |
typedef Matrix< TScalarType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension)> | InverseMatrixType |
typedef InverseTransformBaseType::Pointer | InverseTransformBasePointer |
typedef Superclass::InverseTransformBaseType | InverseTransformBaseType |
typedef Superclass::JacobianType | JacobianType |
typedef OutputVectorType | OffsetType |
typedef OffsetType::ValueType | OffsetValueType |
typedef Superclass::OutputDiffusionTensor3DType | OutputDiffusionTensor3DType |
typedef Superclass::OutputSymmetricSecondRankTensorType | OutputSymmetricSecondRankTensorType |
typedef Superclass::OutputVectorPixelType | OutputVectorPixelType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScalarType | ScalarType |
typedef MatrixOffsetTransformBase | Self |
typedef Transform< TScalarType, NInputDimensions, NOutputDimensions > | Superclass |
typedef Superclass::TransformCategoryType | TransformCategoryType |
typedef OutputVectorType | TranslationType |
typedef TranslationType::ValueType | TranslationValueType |
typedef Vector< TScalarType, itkGetStaticConstMacro(InputSpaceDimension)> | InputVectorType |
typedef Vector< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputVectorType |
typedef OutputVectorType::ValueType | OutputVectorValueType |
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 InputPointType::ValueType | InputPointValueType |
typedef Point< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputPointType |
typedef OutputPointType::ValueType | OutputPointValueType |
typedef Matrix< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | MatrixType |
typedef MatrixType::ValueType | MatrixValueType |
Public Types inherited from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Array < ParametersValueType > | DerivativeType |
typedef Matrix< double, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | DirectionChangeMatrix |
typedef CovariantVector < TScalarType, NInputDimensions > | InputCovariantVectorType |
typedef DiffusionTensor3D < TScalarType > | InputDiffusionTensor3DType |
typedef Matrix< double, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | InputDirectionMatrix |
typedef Point< TScalarType, NInputDimensions > | InputPointType |
typedef SymmetricSecondRankTensor < TScalarType, NInputDimensions > | InputSymmetricSecondRankTensorType |
typedef VariableLengthVector < TScalarType > | InputVectorPixelType |
typedef Vector< TScalarType, NInputDimensions > | InputVectorType |
typedef vnl_vector_fixed < TScalarType, NInputDimensions > | InputVnlVectorType |
typedef InverseTransformBaseType::Pointer | InverseTransformBasePointer |
typedef Transform< TScalarType, NOutputDimensions, NInputDimensions > | InverseTransformBaseType |
typedef Array2D < ParametersValueType > | JacobianType |
typedef Matrix< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | MatrixType |
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
typedef CovariantVector < TScalarType, NOutputDimensions > | OutputCovariantVectorType |
typedef DiffusionTensor3D < TScalarType > | OutputDiffusionTensor3DType |
typedef Matrix< double, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension)> | OutputDirectionMatrix |
typedef Point< TScalarType, NOutputDimensions > | OutputPointType |
typedef SymmetricSecondRankTensor < TScalarType, NOutputDimensions > | OutputSymmetricSecondRankTensorType |
typedef VariableLengthVector < TScalarType > | OutputVectorPixelType |
typedef Vector< TScalarType, NOutputDimensions > | OutputVectorType |
typedef vnl_vector_fixed < TScalarType, NOutputDimensions > | OutputVnlVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef TScalarType | ScalarType |
typedef Transform | Self |
typedef TransformBase | Superclass |
Public Types inherited from itk::TransformBase | |
typedef SmartPointer< const Self > | ConstPointer |
typedef IdentifierType | NumberOfParametersType |
typedef OptimizerParameters < ParametersValueType > | ParametersType |
typedef double | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef TransformBase | Self |
typedef Object | Superclass |
enum | TransformCategoryType { UnknownTransformCategory =0, Linear =1, BSpline =2, Spline =3, DisplacementField =4, VelocityField =5 } |
Public Types inherited from itk::Object | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef Object | Self |
typedef LightObject | Superclass |
Public Types inherited from itk::LightObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef LightObject | Self |
Static Public Member Functions | |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | SpaceDimension = 3 |
static const unsigned int | InputSpaceDimension = 3 |
static const unsigned int | OutputSpaceDimension = 3 |
static const unsigned int | ParametersDimension = 3 |
Static Public Attributes inherited from itk::Rigid3DTransform< TScalarType > | |
static const unsigned int | SpaceDimension = 3 |
static const unsigned int | InputSpaceDimension = 3 |
static const unsigned int | OutputSpaceDimension = 3 |
static const unsigned int | ParametersDimension = 12 |
Static Public Attributes inherited from itk::MatrixOffsetTransformBase< TScalarType, 3, 3 > | |
static const unsigned int | InputSpaceDimension |
static const unsigned int | OutputSpaceDimension |
static const unsigned int | ParametersDimension |
Static Public Attributes inherited from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions > | |
static const unsigned int | InputSpaceDimension = NInputDimensions |
static const unsigned int | OutputSpaceDimension = NOutputDimensions |
Private Member Functions | |
const Self & | operator= (const Self &) |
VersorTransform (const Self &other) | |
Private Attributes | |
VersorType | m_Versor |
Additional Inherited Members | |
Protected Types inherited from itk::LightObject | |
typedef int | InternalReferenceCountType |
Protected Attributes inherited from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions > | |
DirectionChangeMatrix | m_DirectionChange |
ParametersType | m_FixedParameters |
ParametersType | m_Parameters |
typedef VersorType::ValueType itk::VersorTransform< TScalarType >::AngleType |
Definition at line 94 of file itkVersorTransform.h.
typedef VersorType::VectorType itk::VersorTransform< TScalarType >::AxisType |
Definition at line 93 of file itkVersorTransform.h.
typedef AxisType::ValueType itk::VersorTransform< TScalarType >::AxisValueType |
Definition at line 95 of file itkVersorTransform.h.
typedef Superclass::CenterType itk::VersorTransform< TScalarType >::CenterType |
Definition at line 85 of file itkVersorTransform.h.
typedef SmartPointer<const Self> itk::VersorTransform< TScalarType >::ConstPointer |
Definition at line 56 of file itkVersorTransform.h.
typedef Superclass::InputCovariantVectorType itk::VersorTransform< TScalarType >::InputCovariantVectorType |
Definition at line 81 of file itkVersorTransform.h.
typedef Superclass::InputPointType itk::VersorTransform< TScalarType >::InputPointType |
Definition at line 75 of file itkVersorTransform.h.
typedef Superclass::InputVectorType itk::VersorTransform< TScalarType >::InputVectorType |
Definition at line 77 of file itkVersorTransform.h.
typedef Superclass::InputVnlVectorType itk::VersorTransform< TScalarType >::InputVnlVectorType |
Definition at line 79 of file itkVersorTransform.h.
typedef Superclass::InverseMatrixType itk::VersorTransform< TScalarType >::InverseMatrixType |
Definition at line 84 of file itkVersorTransform.h.
typedef Superclass::JacobianType itk::VersorTransform< TScalarType >::JacobianType |
Definition at line 73 of file itkVersorTransform.h.
typedef Superclass::MatrixType itk::VersorTransform< TScalarType >::MatrixType |
Definition at line 83 of file itkVersorTransform.h.
typedef Superclass::OffsetType itk::VersorTransform< TScalarType >::OffsetType |
Definition at line 86 of file itkVersorTransform.h.
typedef Superclass::OutputCovariantVectorType itk::VersorTransform< TScalarType >::OutputCovariantVectorType |
Definition at line 82 of file itkVersorTransform.h.
typedef Superclass::OutputPointType itk::VersorTransform< TScalarType >::OutputPointType |
Definition at line 76 of file itkVersorTransform.h.
typedef Superclass::OutputVectorType itk::VersorTransform< TScalarType >::OutputVectorType |
Definition at line 78 of file itkVersorTransform.h.
typedef Superclass::OutputVnlVectorType itk::VersorTransform< TScalarType >::OutputVnlVectorType |
Definition at line 80 of file itkVersorTransform.h.
typedef Superclass::ParametersType itk::VersorTransform< TScalarType >::ParametersType |
Parameters Type
Definition at line 72 of file itkVersorTransform.h.
typedef ParametersType::ValueType itk::VersorTransform< TScalarType >::ParameterValueType |
Definition at line 96 of file itkVersorTransform.h.
typedef SmartPointer<Self> itk::VersorTransform< TScalarType >::Pointer |
Definition at line 55 of file itkVersorTransform.h.
typedef Superclass::ScalarType itk::VersorTransform< TScalarType >::ScalarType |
Definition at line 74 of file itkVersorTransform.h.
typedef VersorTransform itk::VersorTransform< TScalarType >::Self |
Standard Self Typedef
Definition at line 53 of file itkVersorTransform.h.
typedef Rigid3DTransform<TScalarType> itk::VersorTransform< TScalarType >::Superclass |
Definition at line 54 of file itkVersorTransform.h.
typedef Versor<TScalarType> itk::VersorTransform< TScalarType >::VersorType |
Versor Type
Definition at line 92 of file itkVersorTransform.h.
typedef vnl_quaternion<TScalarType> itk::VersorTransform< TScalarType >::VnlQuaternionType |
VnlQuaternion Type
Definition at line 89 of file itkVersorTransform.h.
|
protected |
Construct an VersorTransform object
|
protected |
Construct an VersorTransform object
|
protected |
Construct an VersorTransform object
|
inlineprotected |
Destroy an VersorTransform object
Definition at line 137 of file itkVersorTransform.h.
|
private |
Copy a VersorTransform object
|
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 in itk::ScaleSkewVersor3DTransform< TScalarType >, itk::ScaleVersor3DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, and itk::VersorRigid3DTransform< TScalarType >.
|
protectedvirtual |
Compute Matrix Compute the components of the rotation matrix in the superclass
Reimplemented from itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >.
|
protectedvirtual |
Reimplemented from itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >.
|
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.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::Rigid3DTransform< TScalarType >.
Reimplemented in itk::ScaleSkewVersor3DTransform< TScalarType >, itk::Similarity3DTransform< TScalarType >, itk::VersorRigid3DTransform< TScalarType >, and itk::ScaleVersor3DTransform< TScalarType >.
|
virtual |
Get the Transformation Parameters.
Reimplemented from itk::Transform< TScalarType, NInputDimensions, NOutputDimensions >.
|
virtual |
|
static |
New macro for creation of through a Smart Pointer
|
private |
Assignment operator
|
protectedvirtual |
Print contents of a VersorTransform
Reimplemented from itk::Rigid3DTransform< TScalarType >.
|
virtual |
Set the parameters to the IdentityTransform
Reimplemented from itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >.
Reimplemented in itk::ScaleSkewVersor3DTransform< TScalarType >, itk::ScaleVersor3DTransform< TScalarType >, and itk::Similarity3DTransform< TScalarType >.
|
virtual |
Set the transformation from a container of parameters This is typically used by optimizers.
There are 3 parameters. They represent the components of the right part of the versor. This can be seen as the components of the vector parallel to the rotation axis and multiplied by vcl_sin( angle / 2 ).
Reimplemented from itk::Rigid3DTransform< TScalarType >.
void itk::VersorTransform< TScalarType >::SetRotation | ( | const VersorType & | versor | ) |
Set the rotational part of the transform
void itk::VersorTransform< TScalarType >::SetRotation | ( | const AxisType & | axis, |
AngleType | angle | ||
) |
|
inlineprotected |
Definition at line 147 of file itkVersorTransform.h.
|
static |
Dimension of parameters
Definition at line 66 of file itkVersorTransform.h.
|
private |
Versor containing the rotation
Definition at line 169 of file itkVersorTransform.h.
|
static |
Dimension of parameters
Definition at line 67 of file itkVersorTransform.h.
|
static |
Dimension of parameters
Definition at line 68 of file itkVersorTransform.h.
|
static |
Dimension of parameters
Definition at line 65 of file itkVersorTransform.h.