ITK
4.2.0
Insight Segmentation and Registration Toolkit
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
ITK
Modules
Core
Mesh
include
itkSimplexMeshGeometry.h
Go to the documentation of this file.
1
/*=========================================================================
2
*
3
* Copyright Insight Software Consortium
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0.txt
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*
17
*=========================================================================*/
18
#ifndef __itkSimplexMeshGeometry_h
19
#define __itkSimplexMeshGeometry_h
20
21
22
#include "
itkIntTypes.h
"
23
#include "
itkPoint.h
"
24
#include "
itkCovariantVector.h
"
25
#include <set>
26
27
namespace
itk
28
{
43
class
ITK_EXPORT
SimplexMeshGeometry
44
{
45
public
:
46
47
typedef
itk::Point< double, 3 >
PointType
;
48
typedef
itk::Vector< double, 3 >
VectorType
;
49
typedef
itk::CovariantVector< double, 3 >
CovariantVectorType
;
50
typedef
itk::FixedArray< IdentifierType, 3 >
IndexArray
;
51
typedef
itk::FixedArray< PointType, 3 >
PointArray
;
52
typedef
std::set< IdentifierType >
NeighborSetType
;
53
54
SimplexMeshGeometry
();
55
56
~
SimplexMeshGeometry
();
57
58
void
CopyFrom(
const
SimplexMeshGeometry
& input );
59
60
void
CopyNeigborSet(
const
NeighborSetType
* nset );
61
66
/* stores the indices of the three direct neighbors */
67
IndexArray
neighborIndices
;
68
69
/* stores the coordinates of the three direct neighbors */
70
PointArray
neighbors
;
71
72
/* stores the mean curvature of the mesh in the point */
73
double
meanCurvature
;
74
75
/* coordinates of the corresponding point */
76
PointType
pos
;
77
78
/* coordinates of the corresponding point in previous iteration */
79
PointType
oldPos
;
80
84
PointType
eps
;
85
89
PointType
referenceMetrics
;
90
91
/* normal vector of corresponding point */
92
CovariantVectorType
normal
;
93
97
VectorType
externalForce
;
98
102
VectorType
internalForce
;
103
107
PointType
closestAttractor
;
108
112
IdentifierType
closestAttractorIndex
;
113
114
/* stores circum circle radius */
115
double
circleRadius
;
116
117
/* stores circum circle center */
118
PointType
circleCenter
;
119
120
/* stores circum sphere radius */
121
double
sphereRadius
;
122
123
/* stores circum sphere center */
124
// PointType sphereCenter;
125
126
/* stores distance to foot point */
127
double
distance
;
128
129
/* stores angle */
130
double
phi
;
131
132
/* stores the neighbor set */
133
NeighborSetType
*
neighborSet
;
134
135
/* stores multiplier for interactive deformable model filter */
136
double
multiplier
;
137
138
IdentifierType
forceIndex
;
139
144
void
ComputeGeometry();
145
146
protected
:
147
};
// end of class __itkSimplexMeshGeometry
148
}
//end of namespace itk
149
150
#endif
151
Generated on Tue Jul 10 2012 23:44:33 for ITK by
1.8.1