Orfeo Toolbox
3.16
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
OTB
Utilities
ITK
Code
Common
itkCenteredAffineTransform.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Insight Segmentation & Registration Toolkit
4
Module: $RCSfile: itkCenteredAffineTransform.h,v $
5
Language: C++
6
Date: $Date: 2009-11-29 01:38:00 $
7
Version: $Revision: 1.18 $
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 __itkCenteredAffineTransform_h
19
#define __itkCenteredAffineTransform_h
20
21
#include "
itkAffineTransform.h
"
22
23
namespace
itk
24
{
25
26
35
template
<
36
class
TScalarType=double,
// Data type for scalars
37
unsigned
int
NDimensions=3>
// Number of dimensions in the input space
38
class
ITK_EXPORT
CenteredAffineTransform
:
public
AffineTransform
< TScalarType,
39
NDimensions >
40
{
41
public
:
43
typedef
CenteredAffineTransform
Self
;
44
typedef
AffineTransform< TScalarType, NDimensions >
Superclass
;
45
typedef
SmartPointer<Self>
Pointer
;
46
typedef
SmartPointer<const Self>
ConstPointer
;
47
49
itkTypeMacro(
CenteredAffineTransform
,
AffineTransform
);
50
52
itkNewMacro(
Self
);
53
55
itkStaticConstMacro(SpaceDimension,
unsigned
int
, NDimensions);
56
itkStaticConstMacro(ParametersDimension,
unsigned
int
,
57
NDimensions*(NDimensions+2));
58
59
61
typedef
typename
Superclass::ParametersType
ParametersType
;
62
typedef
typename
Superclass::ParametersValueType
ParametersValueType
;
63
typedef
typename
Superclass::JacobianType
JacobianType
;
64
typedef
typename
Superclass::ScalarType
ScalarType
;
65
typedef
typename
Superclass::InputVectorType
InputVectorType
;
66
typedef
typename
Superclass::OutputVectorType
OutputVectorType
;
67
typedef
typename
Superclass::InputCovariantVectorType
68
InputCovariantVectorType
;
69
typedef
typename
Superclass::OutputCovariantVectorType
70
OutputCovariantVectorType
;
71
72
typedef
typename
Superclass::InputVnlVectorType
InputVnlVectorType
;
73
typedef
typename
Superclass::OutputVnlVectorType
OutputVnlVectorType
;
74
typedef
typename
Superclass::InputPointType
InputPointType
;
75
typedef
typename
Superclass::InputPointValueType
InputPointValueType
;
76
typedef
typename
Superclass::OutputVectorValueType
OutputVectorValueType
;
77
typedef
typename
Superclass::OutputPointType
OutputPointType
;
78
typedef
typename
Superclass::MatrixType
MatrixType
;
79
typedef
typename
Superclass::MatrixValueType
MatrixValueType
;
80
typedef
typename
Superclass::OffsetType
OffsetType
;
81
84
typedef
typename
Superclass::InverseTransformBaseType
InverseTransformBaseType
;
85
typedef
typename
InverseTransformBaseType::Pointer
InverseTransformBasePointer
;
86
87
88
97
void
SetParameters(
const
ParametersType
& parameters );
98
const
ParametersType
& GetParameters(
void
)
const
;
99
106
const
JacobianType
& GetJacobian(
const
InputPointType
&point )
const
;
107
109
bool
GetInverse(
Self
* inverse)
const
;
110
112
virtual
InverseTransformBasePointer
GetInverseTransform()
const
;
113
114
protected
:
116
CenteredAffineTransform
();
117
119
virtual
~
CenteredAffineTransform
();
120
121
private
:
122
CenteredAffineTransform
(
const
Self
& other);
123
const
Self
& operator=(
const
Self
& );
124
125
};
//class CenteredAffineTransform
126
127
}
// namespace itk
128
130
#define ITK_TEMPLATE_CenteredAffineTransform(_, EXPORT, x, y) namespace itk { \
131
_(2(class EXPORT CenteredAffineTransform< ITK_TEMPLATE_2 x >)) \
132
namespace Templates { typedef CenteredAffineTransform< ITK_TEMPLATE_2 x > \
133
CenteredAffineTransform##y; } \
134
}
135
136
#if ITK_TEMPLATE_EXPLICIT
137
# include "Templates/itkCenteredAffineTransform+-.h"
138
#endif
139
140
#if ITK_TEMPLATE_TXX
141
# include "
itkCenteredAffineTransform.txx
"
142
#endif
143
144
145
#endif
/* __itkCenteredAffineTransform_h */
Generated at Sat Feb 2 2013 23:31:25 for
Orfeo Toolbox
with
doxygen 1.8.1.1