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 
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 );
88 
89  const ParametersType & GetParameters( void ) const;
90 
92  virtual void GetJacobian(
93  const InputPointType &,
94  JacobianType &,
95  NonZeroJacobianIndicesType & ) const;
96 
97  virtual void SetIdentity( void );
98 
99 protected:
100 
102  AffineLogTransform( const MatrixType & matrix,
103  const OutputPointType & offset );
104  AffineLogTransform( unsigned int outputSpaceDims,
105  unsigned int paramsSpaceDims );
106 
108 
109  void PrintSelf( std::ostream & os, Indent indent ) const;
110 
112  virtual void PrecomputeJacobianOfSpatialJacobian( void );
113 
114 private:
115 
116  AffineLogTransform( const Self & ); // purposely not implemented
117  void operator=( const Self & ); // purposely not implemented
118 
119  MatrixType m_MatrixLogDomain;
120 
121 };
122 
123 } // namespace itk
124 
125 #ifndef ITK_MANUAL_INSTANTIATION
126 #include "itkAffineLogTransform.hxx"
127 #endif
128 
129 #endif /* __itkAffineLogTransform_h */
void operator=(const Self &)
Superclass::InputVectorType InputVectorType
itkStaticConstMacro(SpaceDimension, unsigned int, Dimension)
Superclass::SpatialHessianType SpatialHessianType
SmartPointer< const Self > ConstPointer
virtual void PrecomputeJacobianOfSpatialJacobian(void)
Superclass::MatrixType MatrixType
Superclass::InputCovariantVectorType InputCovariantVectorType
virtual void SetIdentity(void)
Superclass::NumberOfParametersType NumberOfParametersType
Superclass::OffsetType OffsetType
SmartPointer< Self > Pointer
Superclass::ParametersType ParametersType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Superclass::InternalMatrixType InternalMatrixType
Superclass::ScalarType ScalarType
Superclass::JacobianType JacobianType
Superclass::OutputPointType OutputPointType
void PrintSelf(std::ostream &os, Indent indent) const
Superclass::CenterType CenterType
Superclass::TranslationType TranslationType
Superclass::InputVnlVectorType InputVnlVectorType
virtual void GetJacobian(const InputPointType &, JacobianType &, NonZeroJacobianIndicesType &) const
AdvancedMatrixOffsetTransformBase< TScalarType, Dimension, Dimension > Superclass
Superclass::ScalarType AngleType
void SetParameters(const ParametersType &parameters)
Superclass::InputPointType InputPointType
FixedArray< ScalarType > ScalarArrayType
const ParametersType & GetParameters(void) const
Matrix< TScalarType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension) > InverseMatrixType
Superclass::OutputVnlVectorType OutputVnlVectorType
Superclass ::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Superclass::OutputVectorType OutputVectorType
Matrix< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension) > MatrixType
Superclass::InverseMatrixType InverseMatrixType
Superclass ::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass::SpatialJacobianType SpatialJacobianType
Superclass ::NonZeroJacobianIndicesType NonZeroJacobianIndicesType


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.8.13 elastix logo