Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Components
Transforms
DeformationFieldTransform
elxDeformationFieldTransform.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 __elxDeformationFieldTransform_H__
16
#define __elxDeformationFieldTransform_H__
17
18
#include "
itkDeformationFieldInterpolatingTransform.h
"
19
20
#include "
elxIncludes.h
"
21
#include "
itkAdvancedCombinationTransform.h
"
22
23
24
namespace
elastix
25
{
26
using namespace
itk;
27
53
template
<
class
TElastix >
54
class
DeformationFieldTransform
:
55
public
56
AdvancedCombinationTransform
<
57
ITK_TYPENAME elx::TransformBase<TElastix>::CoordRepType,
58
elx::TransformBase<TElastix>::FixedImageDimension >,
59
public
60
TransformBase
<TElastix>
61
{
62
public
:
63
65
typedef
DeformationFieldTransform
Self
;
66
69
typedef
DeformationFieldInterpolatingTransform
<
70
typename
elx::TransformBase<TElastix>::CoordRepType
,
71
elx::TransformBase<TElastix>::FixedImageDimension
,
72
float
>
DeformationFieldInterpolatingTransformType
;
73
74
typedef
AdvancedCombinationTransform
<
75
typename
elx::TransformBase<TElastix>::CoordRepType
,
76
elx::TransformBase<TElastix>::FixedImageDimension
>
Superclass1
;
77
78
typedef
elx::TransformBase< TElastix >
Superclass2
;
79
80
typedef
SmartPointer< Self >
Pointer
;
81
typedef
SmartPointer< const Self >
ConstPointer
;
82
84
itkNewMacro(
Self
);
85
87
itkTypeMacro(
DeformationFieldTransform
,
AdvancedCombinationTransform
);
88
93
elxClassNameMacro
(
"DeformationFieldTransform"
);
94
96
itkStaticConstMacro( SpaceDimension,
unsigned
int
, Superclass2::FixedImageDimension );
97
99
typedef
typename
Superclass1::ScalarType
ScalarType
;
100
typedef
typename
Superclass1::ParametersType
ParametersType
;
101
typedef
typename
Superclass1::JacobianType
JacobianType
;
102
typedef
typename
Superclass1::InputVectorType
InputVectorType
;
103
typedef
typename
Superclass1::OutputVectorType
OutputVectorType
;
104
typedef
typename
Superclass1::InputCovariantVectorType
InputCovariantVectorType
;
105
typedef
typename
Superclass1::OutputCovariantVectorType
OutputCovariantVectorType
;
106
typedef
typename
Superclass1::InputVnlVectorType
InputVnlVectorType
;
107
typedef
typename
Superclass1::OutputVnlVectorType
OutputVnlVectorType
;
108
typedef
typename
Superclass1::InputPointType
InputPointType
;
109
typedef
typename
Superclass1::OutputPointType
OutputPointType
;
110
112
typedef
typename
DeformationFieldInterpolatingTransformType::DeformationFieldType
DeformationFieldType
;
113
typedef
typename
DeformationFieldInterpolatingTransformType::DeformationFieldVectorType
DeformationFieldVectorType
;
114
115
typedef
typename
DeformationFieldInterpolatingTransformType::Pointer
116
DeformationFieldInterpolatingTransformPointer
;
117
119
typedef
typename
Superclass2::ElastixType
ElastixType
;
120
typedef
typename
Superclass2::ElastixPointer
ElastixPointer
;
121
typedef
typename
Superclass2::ConfigurationType
ConfigurationType
;
122
typedef
typename
Superclass2::ConfigurationPointer
ConfigurationPointer
;
123
typedef
typename
Superclass2::RegistrationType
RegistrationType
;
124
typedef
typename
Superclass2::RegistrationPointer
RegistrationPointer
;
125
typedef
typename
Superclass2::CoordRepType
CoordRepType
;
126
typedef
typename
Superclass2::FixedImageType
FixedImageType
;
127
typedef
typename
Superclass2::MovingImageType
MovingImageType
;
128
typedef
typename
Superclass2::ITKBaseType
ITKBaseType
;
129
typedef
typename
Superclass2::CombinationTransformType
CombinationTransformType
;
130
132
virtual
void
ReadFromFile(
void
);
133
135
virtual
void
WriteToFile(
const
ParametersType
& param )
const
;
136
137
protected
:
138
140
DeformationFieldTransform
();
142
virtual
~DeformationFieldTransform
() {};
143
144
private
:
145
147
DeformationFieldTransform
(
const
Self& );
// purposely not implemented
149
void
operator=(
const
Self& );
// purposely not implemented
150
151
typedef
typename
DeformationFieldType::DirectionType
DirectionType
;
152
155
DeformationFieldInterpolatingTransformPointer
m_DeformationFieldInterpolatingTransform
;
156
158
DirectionType
m_OriginalDeformationFieldDirection
;
159
160
};
// end class DeformationFieldTransform
161
162
163
}
// end namespace elastix
164
165
#ifndef ITK_MANUAL_INSTANTIATION
166
#include "elxDeformationFieldTransform.hxx"
167
#endif
168
169
#endif // end #ifndef __elxDeformationFieldTransform_H__
170
Generated on 27-06-2013 for elastix by
1.8.3.1