ITK
4.6.0
Insight Segmentation and Registration Toolkit
|
#include <itkIdentityTransform.h>
Implementation of an Identity Transform.
This class defines the generic interface for an Identity Transform.
It will map every point to itself, every vector to itself and every covariant vector to itself.
This class is intended to be used primarily as a default Transform for initializing those classes supporting a generic Transform.
This class is templated over the Representation type for coordinates (that is the type used for representing the components of points and vectors) and over the dimension of the space. In this case the Input and Output spaces are the same so only one dimension is required.
Definition at line 51 of file itkIdentityTransform.h.
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef InverseTransformBaseType::Pointer | InverseTransformBasePointer |
typedef Superclass::InverseTransformBaseType | InverseTransformBaseType |
typedef Superclass::JacobianType | JacobianType |
typedef Superclass::ParametersType | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef TScalar | ScalarType |
typedef IdentityTransform | Self |
typedef Transform< TScalar, NDimensions, NDimensions > | Superclass |
typedef Superclass::TransformCategoryType | TransformCategoryType |
typedef Vector< TScalar, itkGetStaticConstMacro(InputSpaceDimension)> | InputVectorType |
typedef Vector< TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputVectorType |
typedef CovariantVector < TScalar, itkGetStaticConstMacro(InputSpaceDimension)> | InputCovariantVectorType |
typedef CovariantVector < TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputCovariantVectorType |
typedef vnl_vector_fixed < TScalar, itkGetStaticConstMacro(InputSpaceDimension)> | InputVnlVectorType |
typedef vnl_vector_fixed < TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputVnlVectorType |
typedef Point< TScalar, itkGetStaticConstMacro(InputSpaceDimension)> | InputPointType |
typedef Point< TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputPointType |
Public Types inherited from itk::Transform< TScalar, NDimensions, NDimensions > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Array < ParametersValueType > | DerivativeType |
typedef Matrix< double, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | DirectionChangeMatrix |
typedef CovariantVector < TScalar, NInputDimensions > | InputCovariantVectorType |
typedef DiffusionTensor3D < TScalar > | InputDiffusionTensor3DType |
typedef Matrix< double, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | InputDirectionMatrix |
typedef Point< TScalar, NInputDimensions > | InputPointType |
typedef SymmetricSecondRankTensor < TScalar, NInputDimensions > | InputSymmetricSecondRankTensorType |
typedef VariableLengthVector < TScalar > | InputVectorPixelType |
typedef Vector< TScalar, NInputDimensions > | InputVectorType |
typedef vnl_vector_fixed < TScalar, NInputDimensions > | InputVnlVectorType |
typedef InverseTransformBaseType::Pointer | InverseTransformBasePointer |
typedef Transform< TScalar, NOutputDimensions, NInputDimensions > | InverseTransformBaseType |
typedef Array2D < ParametersValueType > | JacobianType |
typedef Matrix< TScalar, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | MatrixType |
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
typedef CovariantVector < TScalar, NOutputDimensions > | OutputCovariantVectorType |
typedef DiffusionTensor3D < TScalar > | OutputDiffusionTensor3DType |
typedef Matrix< double, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension)> | OutputDirectionMatrix |
typedef Point< TScalar, NOutputDimensions > | OutputPointType |
typedef SymmetricSecondRankTensor < TScalar, NOutputDimensions > | OutputSymmetricSecondRankTensorType |
typedef VariableLengthVector < TScalar > | OutputVectorPixelType |
typedef Vector< TScalar, NOutputDimensions > | OutputVectorType |
typedef vnl_vector_fixed < TScalar, NOutputDimensions > | OutputVnlVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef TScalar | ScalarType |
typedef Transform | Self |
typedef TransformBaseTemplate < TScalar > | Superclass |
typedef Superclass::TransformCategoryType | TransformCategoryType |
Public Types inherited from itk::TransformBaseTemplate< TScalar > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef IdentifierType | NumberOfParametersType |
typedef OptimizerParameters < ParametersValueType > | ParametersType |
typedef TScalar | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef TransformBaseTemplate | 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 Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | InputSpaceDimension = NDimensions |
static const unsigned int | OutputSpaceDimension = NDimensions |
Static Public Attributes inherited from itk::Transform< TScalar, NDimensions, NDimensions > | |
static const unsigned int | InputSpaceDimension |
static const unsigned int | OutputSpaceDimension |
Protected Member Functions | |
IdentityTransform () | |
virtual | ~IdentityTransform () |
Protected Member Functions inherited from itk::Transform< TScalar, NDimensions, NDimensions > | |
virtual LightObject::Pointer | InternalClone () const |
OutputDiffusionTensor3DType | PreservationOfPrincipalDirectionDiffusionTensor3DReorientation (const InputDiffusionTensor3DType, const JacobianType) const |
Transform () | |
Transform (NumberOfParametersType NumberOfParameters) | |
virtual | ~Transform () |
Protected Member Functions inherited from itk::TransformBaseTemplate< TScalar > | |
TransformBaseTemplate () | |
virtual | ~TransformBaseTemplate () |
Protected Member Functions inherited from itk::Object | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | PrintSelf (std::ostream &os, Indent indent) const ITK_OVERRIDE |
virtual void | SetTimeStamp (const TimeStamp &time) |
virtual | ~Object () |
Protected Member Functions inherited from itk::LightObject | |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Private Member Functions | |
IdentityTransform (const Self &) | |
void | operator= (const Self &) |
Private Attributes | |
JacobianType | m_IdentityJacobian |
Additional Inherited Members | |
Protected Types inherited from itk::LightObject | |
typedef int | InternalReferenceCountType |
Protected Attributes inherited from itk::Transform< TScalar, NDimensions, NDimensions > | |
DirectionChangeMatrix | m_DirectionChange |
ParametersType | m_FixedParameters |
ParametersType | m_Parameters |
Protected Attributes inherited from itk::LightObject | |
InternalReferenceCountType | m_ReferenceCount |
SimpleFastMutexLock | m_ReferenceCountLock |
typedef SmartPointer< const Self > itk::IdentityTransform< TScalar, NDimensions >::ConstPointer |
Definition at line 58 of file itkIdentityTransform.h.
typedef CovariantVector<TScalar, itkGetStaticConstMacro(InputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::InputCovariantVectorType |
Standard covariant vector type for this class
Definition at line 92 of file itkIdentityTransform.h.
typedef Point<TScalar, itkGetStaticConstMacro(InputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::InputPointType |
Standard coordinate point type for this class
Definition at line 106 of file itkIdentityTransform.h.
typedef Vector<TScalar, itkGetStaticConstMacro(InputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::InputVectorType |
Standard vector type for this class.
Definition at line 85 of file itkIdentityTransform.h.
typedef vnl_vector_fixed<TScalar, itkGetStaticConstMacro(InputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::InputVnlVectorType |
Standard vnl_vector type for this class.
Definition at line 99 of file itkIdentityTransform.h.
typedef InverseTransformBaseType::Pointer itk::IdentityTransform< TScalar, NDimensions >::InverseTransformBasePointer |
Definition at line 114 of file itkIdentityTransform.h.
typedef Superclass::InverseTransformBaseType itk::IdentityTransform< TScalar, NDimensions >::InverseTransformBaseType |
Base inverse transform type. This type should not be changed to the concrete inverse transform type or inheritance would be lost.
Definition at line 113 of file itkIdentityTransform.h.
typedef Superclass::JacobianType itk::IdentityTransform< TScalar, NDimensions >::JacobianType |
Type of the Jacobian matrix.
Definition at line 78 of file itkIdentityTransform.h.
typedef CovariantVector<TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::OutputCovariantVectorType |
Standard covariant vector type for this class
Definition at line 94 of file itkIdentityTransform.h.
typedef Point<TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::OutputPointType |
Standard coordinate point type for this class
Definition at line 108 of file itkIdentityTransform.h.
typedef Vector<TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::OutputVectorType |
Standard vector type for this class.
Definition at line 87 of file itkIdentityTransform.h.
typedef vnl_vector_fixed<TScalar, itkGetStaticConstMacro(OutputSpaceDimension)> itk::IdentityTransform< TScalar, NDimensions >::OutputVnlVectorType |
Standard vnl_vector type for this class.
Definition at line 101 of file itkIdentityTransform.h.
typedef Superclass::ParametersType itk::IdentityTransform< TScalar, NDimensions >::ParametersType |
Type of the input parameters.
Definition at line 75 of file itkIdentityTransform.h.
typedef SmartPointer< Self > itk::IdentityTransform< TScalar, NDimensions >::Pointer |
Definition at line 57 of file itkIdentityTransform.h.
typedef TScalar itk::IdentityTransform< TScalar, NDimensions >::ScalarType |
Type of the input parameters.
Definition at line 72 of file itkIdentityTransform.h.
typedef IdentityTransform itk::IdentityTransform< TScalar, NDimensions >::Self |
Standard class typedefs.
Definition at line 55 of file itkIdentityTransform.h.
typedef Transform< TScalar, NDimensions, NDimensions > itk::IdentityTransform< TScalar, NDimensions >::Superclass |
Definition at line 56 of file itkIdentityTransform.h.
typedef Superclass::TransformCategoryType itk::IdentityTransform< TScalar, NDimensions >::TransformCategoryType |
Transform category type.
Definition at line 81 of file itkIdentityTransform.h.
|
inlineprotected |
Definition at line 241 of file itkIdentityTransform.h.
References itk::IdentityTransform< TScalar, NDimensions >::m_IdentityJacobian.
|
inlineprotectedvirtual |
Definition at line 249 of file itkIdentityTransform.h.
|
private |
|
inlinevirtual |
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.
The Jacobian can be expressed as a set of partial derivatives of the output point components with respect to the parameters that defined the transform:
Definition at line 179 of file itkIdentityTransform.h.
References itk::IdentityTransform< TScalar, NDimensions >::m_IdentityJacobian.
|
inlinevirtual |
Get the jacobian with respect to position, which simply is an identity jacobian because the transform is position-invariant. jac will be resized as needed, but it will be more efficient if it is already properly sized.
Definition at line 189 of file itkIdentityTransform.h.
|
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.
|
inlinevirtual |
Get the Fixed Parameters.
Reimplemented from itk::Transform< TScalar, NDimensions, NDimensions >.
Definition at line 219 of file itkIdentityTransform.h.
References itk::Transform< TScalar, NDimensions, NDimensions >::m_FixedParameters.
|
inlinevirtual |
Return an inverse of the identity transform - another identity transform.
Reimplemented from itk::Transform< TScalar, NDimensions, NDimensions >.
Definition at line 203 of file itkIdentityTransform.h.
References itk::SmartPointer< TObjectType >::GetPointer(), and itk::IdentityTransform< TScalar, NDimensions >::New().
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::Transform< TScalar, NDimensions, NDimensions >.
|
inlinevirtual |
Get the Parameters.
Reimplemented from itk::Transform< TScalar, NDimensions, NDimensions >.
Definition at line 230 of file itkIdentityTransform.h.
References itk::Transform< TScalar, NDimensions, NDimensions >::m_Parameters.
|
inlinevirtual |
Indicates that this transform is linear. That is, given two points P and Q, and scalar coefficients a and b, then
Reimplemented from itk::Transform< TScalar, NDimensions, NDimensions >.
Definition at line 213 of file itkIdentityTransform.h.
References itk::TransformBaseTemplate< TScalar >::Linear.
|
static |
New method for creating an object using a factory.
Referenced by itk::IdentityTransform< TScalar, NDimensions >::GetInverseTransform(), and itk::ImageRegistrationMethodv4< TFixedImage, TMovingImage, TOutputTransform >::MakeOutputTransform().
|
private |
|
inlinevirtual |
Set the fixed parameters and update internal transformation.
Definition at line 225 of file itkIdentityTransform.h.
|
inline |
Set the transformation to an Identity
This is a NULL operation in the case of this particular transform. The method is provided only to comply with the interface of other transforms.
Definition at line 147 of file itkIdentityTransform.h.
|
inlinevirtual |
Set the fixed parameters and update internal transformation.
Definition at line 236 of file itkIdentityTransform.h.
|
inlinevirtual |
Definition at line 137 of file itkIdentityTransform.h.
|
inlinevirtual |
Method to transform a point.
Definition at line 117 of file itkIdentityTransform.h.
|
inlinevirtual |
Definition at line 124 of file itkIdentityTransform.h.
|
inlinevirtual |
Method to transform a vnl_vector.
Definition at line 130 of file itkIdentityTransform.h.
|
static |
Dimension of the domain space.
Definition at line 67 of file itkIdentityTransform.h.
|
private |
Definition at line 257 of file itkIdentityTransform.h.
Referenced by itk::IdentityTransform< TScalar, NDimensions >::ComputeJacobianWithRespectToParameters(), and itk::IdentityTransform< TScalar, NDimensions >::IdentityTransform().
|
static |
Dimension of the domain space.
Definition at line 68 of file itkIdentityTransform.h.