Home
|
Main Page
|
Modules
|
Namespace List
|
Class Hierarchy
|
Alphabetical List
|
Data Structures
|
File List
|
Namespace Members
|
Data Fields
|
Globals
|
Related Pages
src
Common
Transforms
itkAdvancedRigid3DTransform.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Insight Segmentation & Registration Toolkit
4
Module: $RCSfile: itkAdvancedRigid3DTransform.h,v $
5
Language: C++
6
Date: $Date: 2007-02-13 21:46:04 $
7
Version: $Revision: 1.38 $
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
#ifndef __itkAdvancedRigid3DTransform_h
18
#define __itkAdvancedRigid3DTransform_h
19
20
#include <iostream>
21
#include "
itkAdvancedMatrixOffsetTransformBase.h
"
22
#include "itkExceptionObject.h"
23
#include "itkMatrix.h"
24
#include "itkVersor.h"
25
26
namespace
itk
27
{
28
48
template
<
class
TScalarType =
double
>
49
// type for scalars (float or double)
50
class
AdvancedRigid3DTransform
:
51
public
AdvancedMatrixOffsetTransformBase
< TScalarType, 3, 3 >
52
{
53
public
:
54
56
typedef
AdvancedRigid3DTransform
Self
;
57
typedef
AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >
Superclass
;
58
typedef
SmartPointer< Self >
Pointer
;
59
typedef
SmartPointer< const Self >
ConstPointer
;
60
62
itkTypeMacro(
AdvancedRigid3DTransform
,
AdvancedMatrixOffsetTransformBase
);
63
65
itkNewMacro(
Self
);
66
68
itkStaticConstMacro
( SpaceDimension,
unsigned
int
, 3 );
69
itkStaticConstMacro
( InputSpaceDimension,
unsigned
int
, 3 );
70
itkStaticConstMacro
( OutputSpaceDimension,
unsigned
int
, 3 );
71
itkStaticConstMacro
( ParametersDimension,
unsigned
int
, 12 );
72
73
typedef
typename
Superclass::ParametersType
ParametersType
;
74
typedef
typename
Superclass::NumberOfParametersType
NumberOfParametersType
;
75
typedef
typename
Superclass::JacobianType
JacobianType
;
76
typedef
typename
Superclass::ScalarType
ScalarType
;
77
typedef
typename
Superclass::InputVectorType
InputVectorType
;
78
typedef
typename
Superclass::OutputVectorType
OutputVectorType
;
79
typedef
typename
Superclass::InputCovariantVectorType
80
InputCovariantVectorType
;
81
typedef
typename
Superclass::OutputCovariantVectorType
82
OutputCovariantVectorType
;
83
typedef
typename
Superclass::InputVnlVectorType
InputVnlVectorType
;
84
typedef
typename
Superclass::OutputVnlVectorType
OutputVnlVectorType
;
85
typedef
typename
Superclass::InputPointType
InputPointType
;
86
typedef
typename
Superclass::OutputPointType
OutputPointType
;
87
typedef
typename
Superclass::MatrixType
MatrixType
;
88
typedef
typename
Superclass::InverseMatrixType
InverseMatrixType
;
89
typedef
typename
Superclass::CenterType
CenterType
;
90
typedef
typename
Superclass::TranslationType
TranslationType
;
91
typedef
typename
Superclass::OffsetType
OffsetType
;
92
93
typedef
typename
Superclass
94
::NonZeroJacobianIndicesType
NonZeroJacobianIndicesType
;
95
typedef
typename
Superclass::SpatialJacobianType
SpatialJacobianType
;
96
typedef
typename
Superclass
97
::JacobianOfSpatialJacobianType
JacobianOfSpatialJacobianType
;
98
typedef
typename
Superclass::SpatialHessianType
SpatialHessianType
;
99
typedef
typename
Superclass
100
::JacobianOfSpatialHessianType
JacobianOfSpatialHessianType
;
101
typedef
typename
Superclass::InternalMatrixType
InternalMatrixType
;
102
113
virtual
void
SetParameters
(
const
ParametersType
& parameters );
114
120
virtual
void
SetMatrix
(
const
MatrixType
& matrix );
121
130
const
MatrixType
&
GetRotationMatrix
()
131
{
return
this->
GetMatrix
(); }
132
143
virtual
void
SetRotationMatrix
(
const
MatrixType
& matrix )
144
{ this->
SetMatrix
( matrix ); }
145
153
void
Translate
(
const
OffsetType
& offset,
bool
pre =
false
);
154
166
InputPointType
BackTransform
(
const
OutputPointType
167
& point )
const
;
168
169
InputVectorType
BackTransform
(
const
OutputVectorType
170
& vector )
const
;
171
172
InputVnlVectorType
BackTransform
(
const
OutputVnlVectorType
173
& vector )
const
;
174
175
InputCovariantVectorType
BackTransform
(
const
OutputCovariantVectorType
176
& vector )
const
;
177
182
bool
MatrixIsOrthogonal
(
const
MatrixType
& matrix,
double
tol = 1e-10 );
183
184
protected
:
185
186
AdvancedRigid3DTransform
(
unsigned
int
paramDim );
187
AdvancedRigid3DTransform
(
const
MatrixType
& matrix,
188
const
OutputVectorType
& offset );
189
AdvancedRigid3DTransform
();
190
~AdvancedRigid3DTransform
();
191
195
void
PrintSelf
( std::ostream & os, Indent indent )
const
;
196
197
private
:
198
199
AdvancedRigid3DTransform
(
const
Self
& );
// purposely not implemented
200
void
operator=
(
const
Self
& );
// purposely not implemented
201
202
};
203
204
}
// namespace itk
205
206
#ifndef ITK_MANUAL_INSTANTIATION
207
#include "itkAdvancedRigid3DTransform.hxx"
208
#endif
209
210
#endif
/* __itkAdvancedRigid3DTransform_h */
itk::AdvancedRigid3DTransform::SetParameters
virtual void SetParameters(const ParametersType ¶meters)
itk::AdvancedRigid3DTransform::NonZeroJacobianIndicesType
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Definition:
itkAdvancedRigid3DTransform.h:94
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::ScalarType
Superclass::ScalarType ScalarType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:118
itk::AdvancedRigid3DTransform::SpatialHessianType
Superclass::SpatialHessianType SpatialHessianType
Definition:
itkAdvancedRigid3DTransform.h:98
itk::AdvancedRigid3DTransform::ConstPointer
SmartPointer< const Self > ConstPointer
Definition:
itkAdvancedRigid3DTransform.h:59
itk::AdvancedRigid3DTransform::SpatialJacobianType
Superclass::SpatialJacobianType SpatialJacobianType
Definition:
itkAdvancedRigid3DTransform.h:95
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::SpatialHessianType
Superclass::SpatialHessianType SpatialHessianType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:139
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::InternalMatrixType
Superclass::InternalMatrixType InternalMatrixType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:142
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::OutputVectorType
Superclass::OutputVectorType OutputVectorType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:123
itk::AdvancedRigid3DTransform::ScalarType
Superclass::ScalarType ScalarType
Definition:
itkAdvancedRigid3DTransform.h:76
itk::AdvancedRigid3DTransform::AdvancedRigid3DTransform
AdvancedRigid3DTransform()
itk::AdvancedRigid3DTransform::TranslationType
Superclass::TranslationType TranslationType
Definition:
itkAdvancedRigid3DTransform.h:90
itk::AdvancedRigid3DTransform::OutputVnlVectorType
Superclass::OutputVnlVectorType OutputVnlVectorType
Definition:
itkAdvancedRigid3DTransform.h:84
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::NonZeroJacobianIndicesType
Superclass::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:135
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::OffsetType
OutputVectorType OffsetType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:156
itk::AdvancedRigid3DTransform::GetRotationMatrix
const MatrixType & GetRotationMatrix()
Definition:
itkAdvancedRigid3DTransform.h:130
itk::AdvancedRigid3DTransform::JacobianOfSpatialJacobianType
Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Definition:
itkAdvancedRigid3DTransform.h:97
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::SpatialJacobianType
Superclass::SpatialJacobianType SpatialJacobianType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:136
itk::AdvancedRigid3DTransform::OutputVectorType
Superclass::OutputVectorType OutputVectorType
Definition:
itkAdvancedRigid3DTransform.h:78
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::InputVnlVectorType
Superclass::InputVnlVectorType InputVnlVectorType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:128
itk::AdvancedRigid3DTransform::OffsetType
Superclass::OffsetType OffsetType
Definition:
itkAdvancedRigid3DTransform.h:91
itk::AdvancedRigid3DTransform
AdvancedRigid3DTransform of a vector space (e.g. space coordinates)
Definition:
itkAdvancedRigid3DTransform.h:50
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::NumberOfParametersType
Superclass::NumberOfParametersType NumberOfParametersType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:120
itk::AdvancedRigid3DTransform::InternalMatrixType
Superclass::InternalMatrixType InternalMatrixType
Definition:
itkAdvancedRigid3DTransform.h:101
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::InputCovariantVectorType
Superclass::InputCovariantVectorType InputCovariantVectorType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:125
itk::AdvancedRigid3DTransform::JacobianOfSpatialHessianType
Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Definition:
itkAdvancedRigid3DTransform.h:100
itk::AdvancedRigid3DTransform::SetMatrix
virtual void SetMatrix(const MatrixType &matrix)
itk::AdvancedRigid3DTransform::operator=
void operator=(const Self &)
itk::AdvancedRigid3DTransform::InputCovariantVectorType
Superclass::InputCovariantVectorType InputCovariantVectorType
Definition:
itkAdvancedRigid3DTransform.h:80
itk::AdvancedRigid3DTransform::Translate
void Translate(const OffsetType &offset, bool pre=false)
itk::AdvancedRigid3DTransform::InputVectorType
Superclass::InputVectorType InputVectorType
Definition:
itkAdvancedRigid3DTransform.h:77
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::OutputCovariantVectorType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:127
itk::AdvancedRigid3DTransform::SetRotationMatrix
virtual void SetRotationMatrix(const MatrixType &matrix)
Definition:
itkAdvancedRigid3DTransform.h:143
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::OutputVnlVectorType
Superclass::OutputVnlVectorType OutputVnlVectorType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:129
itkAdvancedMatrixOffsetTransformBase.h
itk::AdvancedRigid3DTransform::Superclass
AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 > Superclass
Definition:
itkAdvancedRigid3DTransform.h:57
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::OutputPointType
Superclass::OutputPointType OutputPointType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:131
itk::AdvancedRigid3DTransform::PrintSelf
void PrintSelf(std::ostream &os, Indent indent) const
itk::AdvancedRigid3DTransform::JacobianType
Superclass::JacobianType JacobianType
Definition:
itkAdvancedRigid3DTransform.h:75
itk::AdvancedRigid3DTransform::NumberOfParametersType
Superclass::NumberOfParametersType NumberOfParametersType
Definition:
itkAdvancedRigid3DTransform.h:74
itk::AdvancedRigid3DTransform::OutputCovariantVectorType
Superclass::OutputCovariantVectorType OutputCovariantVectorType
Definition:
itkAdvancedRigid3DTransform.h:82
itk::AdvancedRigid3DTransform::ParametersType
Superclass::ParametersType ParametersType
Definition:
itkAdvancedRigid3DTransform.h:73
itk::AdvancedRigid3DTransform::Pointer
SmartPointer< Self > Pointer
Definition:
itkAdvancedRigid3DTransform.h:58
itk::AdvancedRigid3DTransform::MatrixType
Superclass::MatrixType MatrixType
Definition:
itkAdvancedRigid3DTransform.h:87
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::TranslationType
OutputVectorType TranslationType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:157
itk::AdvancedRigid3DTransform::itkStaticConstMacro
itkStaticConstMacro(SpaceDimension, unsigned int, 3)
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::JacobianType
Superclass::JacobianType JacobianType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:121
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::JacobianOfSpatialHessianType
Superclass::JacobianOfSpatialHessianType JacobianOfSpatialHessianType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:141
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::JacobianOfSpatialJacobianType
Superclass::JacobianOfSpatialJacobianType JacobianOfSpatialJacobianType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:138
Matrix< TScalarType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension) >
itk::AdvancedRigid3DTransform::BackTransform
InputPointType BackTransform(const OutputPointType &point) const
itk::AdvancedMatrixOffsetTransformBase
Definition:
itkAdvancedMatrixOffsetTransformBase.h:93
itk::AdvancedRigid3DTransform::MatrixIsOrthogonal
bool MatrixIsOrthogonal(const MatrixType &matrix, double tol=1e-10)
itk::AdvancedRigid3DTransform::~AdvancedRigid3DTransform
~AdvancedRigid3DTransform()
Matrix< TScalarType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension) >
itk::AdvancedRigid3DTransform::OutputPointType
Superclass::OutputPointType OutputPointType
Definition:
itkAdvancedRigid3DTransform.h:86
itk::AdvancedRigid3DTransform::InputPointType
Superclass::InputPointType InputPointType
Definition:
itkAdvancedRigid3DTransform.h:85
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::GetMatrix
const MatrixType & GetMatrix(void) const
Definition:
itkAdvancedMatrixOffsetTransformBase.h:193
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::InputPointType
Superclass::InputPointType InputPointType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:130
itk::AdvancedRigid3DTransform::CenterType
Superclass::CenterType CenterType
Definition:
itkAdvancedRigid3DTransform.h:89
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::InputVectorType
Superclass::InputVectorType InputVectorType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:122
itk::AdvancedRigid3DTransform::InverseMatrixType
Superclass::InverseMatrixType InverseMatrixType
Definition:
itkAdvancedRigid3DTransform.h:88
itk::AdvancedRigid3DTransform::Self
AdvancedRigid3DTransform Self
Definition:
itkAdvancedRigid3DTransform.h:56
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::ParametersType
Superclass::ParametersType ParametersType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:119
itk::AdvancedRigid3DTransform::InputVnlVectorType
Superclass::InputVnlVectorType InputVnlVectorType
Definition:
itkAdvancedRigid3DTransform.h:83
itk::AdvancedMatrixOffsetTransformBase< TScalarType, 3, 3 >::CenterType
InputPointType CenterType
Definition:
itkAdvancedMatrixOffsetTransformBase.h:155
Generated on 11-03-2014 for elastix by
1.8.6