go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxSimilarityTransform.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 
15 #ifndef __elxSimilarityTransform_H__
16 #define __elxSimilarityTransform_H__
17 
18 #include "itkSimilarityTransform.h"
19 #include "itkCenteredTransformInitializer.h"
20 #include "elxIncludes.h"
21 
22 namespace elastix
23 {
24 using namespace itk;
25 
76  template < class TElastix >
79  ITK_TYPENAME elx::TransformBase< TElastix >::CoordRepType,
80  elx::TransformBase< TElastix >::FixedImageDimension >,
81  public elx::TransformBase< TElastix >
82  {
83  public:
84 
91  typedef SmartPointer<Self> Pointer;
92  typedef SmartPointer<const Self> ConstPointer;
93 
96  typedef SimilarityTransform<
99 
101  itkNewMacro( Self );
102 
105 
110  elxClassNameMacro( "SimilarityTransform" );
111 
113  itkStaticConstMacro( SpaceDimension, unsigned int, Superclass2::FixedImageDimension );
114 
121 
130 
132  typedef typename SimilarityTransformType::Pointer SimilarityTransformPointer;
133  typedef typename SimilarityTransformType::OffsetType OffsetType;
134 
147 
149  typedef typename FixedImageType::IndexType IndexType;
150  typedef typename IndexType::IndexValueType IndexValueType;
151  typedef typename FixedImageType::SizeType SizeType;
152  typedef typename FixedImageType::PointType PointType;
153  typedef typename FixedImageType::SpacingType SpacingType;
154  typedef typename FixedImageType::RegionType RegionType;
155  typedef typename FixedImageType::DirectionType DirectionType;
156 
157  typedef CenteredTransformInitializer<
159  typedef typename TransformInitializerType::Pointer TransformInitializerPointer;
160 
163 
168  virtual void BeforeRegistration( void );
169 
185  virtual void InitializeTransform( void );
186 
194  virtual void SetScales( void );
195 
200  virtual void ReadFromFile( void );
201 
205  virtual void WriteToFile( const ParametersType & param ) const;
206 
207  protected:
208 
213 
219  virtual bool ReadCenterOfRotationIndex( InputPointType & rotationPoint ) const;
220 
226  virtual bool ReadCenterOfRotationPoint( InputPointType & rotationPoint ) const;
227 
228  private:
229 
231  SimilarityTransformElastix( const Self& ); // purposely not implemented
233  void operator=( const Self& ); // purposely not implemented
234 
236 
237  }; // end class SimilarityTransformElastix
238 
239 
240 } // end namespace elastix
241 
242 #ifndef ITK_MANUAL_INSTANTIATION
243 #include "elxSimilarityTransform.hxx"
244 #endif
245 
246 #endif // end #ifndef __elxSimilarityTransform_H__
247 


Generated on 27-06-2013 for elastix by doxygen 1.8.3.1 elastix logo