go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkAffineLogTransform.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright UMC Utrecht and contributors
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 #ifndef __itkAffineLogTransform_h
19 #define __itkAffineLogTransform_h
20 
21 #include <iostream>
23 
24 namespace itk
25 {
26 
32 template< class TScalarType = double, unsigned int Dimension = 2 > // Data type for scalars (float or double)
34  public AdvancedMatrixOffsetTransformBase< TScalarType, Dimension, Dimension >
35 {
36 public:
37 
41  typedef SmartPointer< Self > Pointer;
42  typedef SmartPointer< const Self > ConstPointer;
43 
45  itkNewMacro( Self );
46 
49 
51  itkStaticConstMacro( SpaceDimension, unsigned int, Dimension );
52  itkStaticConstMacro( OutputSpaceDimension, unsigned int, Dimension );
53  itkStaticConstMacro( InputSpaceDimension, unsigned int, Dimension );
54  itkStaticConstMacro( ParametersDimension, unsigned int, ( Dimension + 1 ) * Dimension );
55 
74 
75  typedef typename Superclass
78  typedef typename Superclass
81  typedef typename Superclass
84 
85  typedef FixedArray< ScalarType > ScalarArrayType;
86 
87  void SetParameters( const ParametersType & parameters ) override;
88 
89  const ParametersType & GetParameters( void ) const override;
90 
93  const InputPointType &,
94  JacobianType &,
95  NonZeroJacobianIndicesType & ) const override;
96 
97  void SetIdentity( void ) override;
98 
99 protected:
100 
103  const OutputPointType & offset );
104  AffineLogTransform( unsigned int outputSpaceDims,
105  unsigned int paramsSpaceDims );
106 
107  ~AffineLogTransform() override{}
108 
109  void PrintSelf( std::ostream & os, Indent indent ) const override;
110 
113 
114 private:
115 
116  AffineLogTransform( const Self & ); // purposely not implemented
117  void operator=( const Self & ); // purposely not implemented
118 
120 
121 };
122 
123 } // namespace itk
124 
125 #ifndef ITK_MANUAL_INSTANTIATION
126 #include "itkAffineLogTransform.hxx"
127 #endif
128 
129 #endif /* __itkAffineLogTransform_h */
Matrix< TScalarType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension) > InverseMatrixType
Superclass ::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass ::OutputCovariantVectorType OutputCovariantVectorType
Superclass ::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Superclass ::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Matrix< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension) > MatrixType
Superclass ::InputCovariantVectorType InputCovariantVectorType
Transform maps points, vectors and covariant vectors from an input space to an output space.
Superclass::ParametersType ParametersType
Superclass::OutputPointType OutputPointType
Superclass::JacobianType JacobianType
Superclass::InputPointType InputPointType
std::vector< unsigned long > NonZeroJacobianIndicesType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Superclass::TranslationType TranslationType
Superclass::OffsetType OffsetType
Superclass::JacobianType JacobianType
Superclass::NumberOfParametersType NumberOfParametersType
Superclass::OutputPointType OutputPointType
Superclass::OutputVectorType OutputVectorType
itkStaticConstMacro(ParametersDimension, unsigned int,(Dimension+1) *Dimension)
SmartPointer< const Self > ConstPointer
Superclass::InputCovariantVectorType InputCovariantVectorType
Superclass::InputVectorType InputVectorType
void SetParameters(const ParametersType &parameters) override
const ParametersType & GetParameters(void) const override
Superclass::InternalMatrixType InternalMatrixType
AffineLogTransform(const Self &)
void GetJacobian(const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const override
Superclass::MatrixType MatrixType
Superclass::SpatialHessianType SpatialHessianType
Superclass::InputVnlVectorType InputVnlVectorType
Superclass ::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass::OutputVnlVectorType OutputVnlVectorType
AffineLogTransform(unsigned int outputSpaceDims, unsigned int paramsSpaceDims)
Superclass::ScalarType AngleType
Superclass ::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
void PrintSelf(std::ostream &os, Indent indent) const override
itkStaticConstMacro(InputSpaceDimension, unsigned int, Dimension)
Superclass ::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::CenterType CenterType
Superclass::ScalarType ScalarType
AdvancedMatrixOffsetTransformBase< TScalarType, Dimension, Dimension > Superclass
SmartPointer< Self > Pointer
Superclass::SpatialJacobianType SpatialJacobianType
AffineLogTransform(const MatrixType &matrix, const OutputPointType &offset)
itkStaticConstMacro(OutputSpaceDimension, unsigned int, Dimension)
Superclass::InverseMatrixType InverseMatrixType
void SetIdentity(void) override
FixedArray< ScalarType > ScalarArrayType
virtual void PrecomputeJacobianOfSpatialJacobian(void)
itkStaticConstMacro(SpaceDimension, unsigned int, Dimension)
Superclass::ParametersType ParametersType
void operator=(const Self &)
Superclass::InputPointType InputPointType


Generated on 1667476801 for elastix by doxygen 1.9.1 elastix logo