go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxRayCastResampleInterpolator.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 #ifndef __elxRayCastResampleInterpolator_h
15 #define __elxRayCastResampleInterpolator_h
16 
17 #include "elxIncludes.h" // include first to avoid MSVS warning
20 #include "itkAdvancedTransform.h"
21 #include "../Transforms/EulerTransform/itkEulerTransform.h"
22 
23 namespace elastix
24 {
25 
33 template< class TElastix >
35  public
37  typename ResampleInterpolatorBase< TElastix >::InputImageType,
38  typename ResampleInterpolatorBase< TElastix >::CoordRepType >,
39  public ResampleInterpolatorBase< TElastix >
40 {
41 public:
42 
49  typedef itk::SmartPointer< Self > Pointer;
50  typedef itk::SmartPointer< const Self > ConstPointer;
51 
53  itkNewMacro( Self );
54 
57 
62  elxClassNameMacro( "FinalRayCastInterpolator" );
63 
65  itkStaticConstMacro( ImageDimension, unsigned int, Superclass1::ImageDimension );
66 
73  typedef typename Superclass1::SizeType SizeType;
74  typedef typename InputImageType::SpacingType SpacingType;
75 
84 
86  typedef typename itk::EulerTransform<
87  typename InterpolatorBase< TElastix >::CoordRepType, ImageDimension >
89  typedef typename EulerTransformType::ParametersType TransformParametersType;
90  typedef typename EulerTransformType::Pointer EulerTransformPointer;
91  typedef typename itk::AdvancedTransform<
93  itkGetStaticConstMacro( ImageDimension ),
94  itkGetStaticConstMacro( ImageDimension ) > AdvancedTransformType;
96  typedef typename itk::AdvancedCombinationTransform<
98  itkGetStaticConstMacro( ImageDimension ) > CombinationTransformType;
100 
101  virtual int BeforeAll( void );
102 
103  virtual void BeforeRegistration( void );
104 
106  virtual void ReadFromFile( void );
107 
109  virtual void WriteToFile( void ) const;
110 
111 protected:
112 
115 
118 
122  void InitializeRayCastInterpolator( void );
123 
124 private:
125 
127  RayCastResampleInterpolator( const Self & ); // purposely not implemented
128 
130  void operator=( const Self & ); // purposely not implemented
131 
135 
136 };
137 
138 } // end namespace elastix
139 
140 #ifndef ITK_MANUAL_INSTANTIATION
141 #include "elxRayCastResampleInterpolator.hxx"
142 #endif
143 
144 #endif // end __elxRayCastResampleInterpolator_h
This class combines two transforms: an 'initial transform' with a 'current transform'.
Superclass::RegistrationType RegistrationType
virtual void WriteToFile(void) const
itk::EulerTransform< typename InterpolatorBase< TElastix >::CoordRepType, ImageDimension > EulerTransformType
Superclass2::ConfigurationPointer ConfigurationPointer
ElastixType::MovingImageType InputImageType
itk::AdvancedCombinationTransform< typename InterpolatorBase< TElastix >::CoordRepType, itkGetStaticConstMacro(ImageDimension) > CombinationTransformType
AdvancedTransformType::Pointer AdvancedTransformPointer
CombinationTransformType::Pointer CombinationTransformPointer
EulerTransformType::ParametersType TransformParametersType
SmartPointer< Self > Pointer
Superclass2::ConfigurationType ConfigurationType
itkStaticConstMacro(ImageDimension, unsigned int, Superclass1::ImageDimension)
Transform maps points, vectors and covariant vectors from an input space to an output space...
ResampleInterpolatorBase< TElastix > Superclass2
Superclass2::RegistrationPointer RegistrationPointer
Superclass::ConfigurationPointer ConfigurationPointer
Superclass1::ContinuousIndexType ContinuousIndexType
itk::AdvancedRayCastInterpolateImageFunction< typename ResampleInterpolatorBase< TElastix >::InputImageType, typename ResampleInterpolatorBase< TElastix >::CoordRepType > Superclass1
This class is the elastix base class for all ResampleInterpolators.
ElastixType::CoordRepType CoordRepType
Superclass::RegistrationPointer RegistrationPointer
Projective interpolation of an image at specified positions.
itk::AdvancedTransform< typename InterpolatorBase< TElastix >::CoordRepType, itkGetStaticConstMacro(ImageDimension), itkGetStaticConstMacro(ImageDimension) > AdvancedTransformType
elxClassNameMacro("FinalRayCastInterpolator")
itk::InterpolateImageFunction< InputImageType, CoordRepType > ITKBaseType
Superclass::ConfigurationType ConfigurationType


Generated on 11-03-2014 for elastix by doxygen 1.8.6 elastix logo