go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkAdvancedVersorRigid3DTransform.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: $RCSfile: itkAdvancedVersorRigid3DTransform.h,v $
5  Language: C++
6  Date: $Date: 2006-08-09 04:35:32 $
7  Version: $Revision: 1.27 $
8 
9  Copyright (c) Insight Software Consortium. All rights reserved.
10  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 
18 #ifndef __itkAdvancedVersorRigid3DTransform_h
19 #define __itkAdvancedVersorRigid3DTransform_h
20 
21 #include <iostream>
23 
24 namespace itk
25 {
26 
47 template < class TScalarType=double >//Data type for scalars (float or double)
49  public AdvancedVersorTransform< TScalarType >
50 {
51 public:
55  typedef SmartPointer<Self> Pointer;
56  typedef SmartPointer<const Self> ConstPointer;
57 
59  itkNewMacro( Self );
60 
63 
65  itkStaticConstMacro(SpaceDimension, unsigned int, 3);
66  itkStaticConstMacro(InputSpaceDimension, unsigned int, 3);
67  itkStaticConstMacro(OutputSpaceDimension, unsigned int, 3);
68  itkStaticConstMacro(ParametersDimension, unsigned int, 6);
69 
90 
92  typedef typename Superclass::VersorType VersorType;
93  typedef typename Superclass::AxisType AxisType;
94  typedef typename Superclass::AngleType AngleType;
95 
96  typedef typename Superclass
99  typedef typename Superclass
102  typedef typename Superclass
105 
110  void SetParameters( const ParametersType & parameters );
111  virtual const ParametersType& GetParameters(void) const;
112 
114  virtual void GetJacobian(
115  const InputPointType &,
116  JacobianType &,
117  NonZeroJacobianIndicesType & ) const;
118 
119 protected:
120  AdvancedVersorRigid3DTransform(unsigned int outputSpaceDim,
121  unsigned int paramDim);
123  const OutputVectorType & offset);
126 
127  void PrintSelf(std::ostream &os, Indent indent) const;
128 
131  virtual void SetRotationMatrix(const MatrixType & matrix)
132  { this->Superclass::SetRotationMatrix( matrix ); }
133 
134 private:
135  AdvancedVersorRigid3DTransform(const Self&); //purposely not implemented
136  void operator=(const Self&); //purposely not implemented
137 
138 }; //class AdvancedVersorRigid3DTransform
139 
140 
141 } // namespace itk
142 
143 // Define instantiation macro for this template.
144 #define ITK_TEMPLATE_AdvancedVersorRigid3DTransform(_, EXPORT, x, y) namespace itk { \
145  _(1(class EXPORT AdvancedVersorRigid3DTransform< ITK_TEMPLATE_1 x >)) \
146  namespace Templates { typedef AdvancedVersorRigid3DTransform< ITK_TEMPLATE_1 x > AdvancedVersorRigid3DTransform##y; } \
147  }
148 
149 #if ITK_TEMPLATE_EXPLICIT
150 # include "Templates/itkAdvancedVersorRigid3DTransform+-.h"
151 #endif
152 
153 #if ITK_TEMPLATE_TXX
154 # include "itkAdvancedVersorRigid3DTransform.txx"
155 #endif
156 
157 #endif /* __itkAdvancedVersorRigid3DTransform_h */
AdvancedVersorRigid3DTransform of a vector space (e.g. space coordinates)
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::SpatialJacobianType SpatialJacobianType
Superclass::NumberOfParametersType NumberOfParametersType
AdvancedVersorTransform< TScalarType > Superclass
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Superclass::OutputVectorType OutputVectorType
AdvancedRigid3DTransform of a vector space (e.g. space coordinates)
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Superclass::ParametersType ParametersType
Superclass::InputCovariantVectorType InputCovariantVectorType
virtual void SetRotationMatrix(const MatrixType &matrix)
Superclass::InputPointType InputPointType
Superclass::OutputVnlVectorType OutputVnlVectorType


Generated on 04-01-2014 for elastix by doxygen 1.8.5 elastix logo