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
QuadEdgeMesh
include
itkQuadEdgeMeshExtendedTraits.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 __itkQuadEdgeMeshExtendedTraits_h
19
#define __itkQuadEdgeMeshExtendedTraits_h
20
21
#include "
itkCellInterface.h
"
22
#include "
itkQuadEdgeCellTraitsInfo.h
"
23
#include <set>
24
25
namespace
itk
26
{
61
template
<
62
typename
TPixelType = float,
63
unsigned
int
VPointDimension = 3,
64
unsigned
int
VMaxTopologicalDimension = VPointDimension,
65
typename
TCoordRep = float,
66
typename
TInterpolationWeightType = float,
67
typename
TCellPixelType = TPixelType,
68
typename
TPData = bool,
69
typename
TDData =
bool
70
>
71
class
QuadEdgeMeshExtendedTraits
72
{
73
public
:
74
typedef
QuadEdgeMeshExtendedTraits
Self
;
75
77
typedef
TCoordRep
CoordRepType
;
78
typedef
TPixelType
PixelType
;
79
typedef
TPData
PrimalDataType
;
80
typedef
TDData
DualDataType
;
81
typedef
TCellPixelType
CellPixelType
;
82
84
itkStaticConstMacro(
PointDimension
,
unsigned
int
, VPointDimension);
85
itkStaticConstMacro(
MaxTopologicalDimension
,
unsigned
int
,
86
VPointDimension);
88
89
typedef
TInterpolationWeightType
InterpolationWeightType
;
90
93
typedef
IdentifierType
PointIdentifier
;
94
97
typedef
IdentifierType
CellIdentifier
;
98
102
typedef
IdentifierType
CellFeatureIdentifier
;
103
106
typedef
std::set< CellIdentifier >
UsingCellsContainer
;
107
110
typedef
std::set< CellIdentifier >
PointCellLinksContainer
;
111
113
typedef
GeometricalQuadEdge< PointIdentifier, CellIdentifier, PrimalDataType, DualDataType >
QEPrimal
;
114
typedef
typename
QEPrimal::DualType
QEDual
;
115
typedef
typename
QEPrimal::OriginRefType
VertexRefType
;
116
typedef
typename
QEPrimal::DualOriginRefType
FaceRefType
;
117
121
typedef
QuadEdgeMeshPoint
<
122
CoordRepType
, VPointDimension,
QEPrimal
>
PointType
;
123
124
typedef
Point< CoordRepType, VPointDimension >
PointHashType
;
125
128
typedef
MapContainer< PointIdentifier, PointType >
PointsContainer
;
129
131
typedef
QuadEdgeMeshCellTraitsInfo<
132
VPointDimension,
CoordRepType
,
133
InterpolationWeightType
,
PointIdentifier
,
134
CellIdentifier
,
CellFeatureIdentifier
,
135
PointType
,
PointsContainer
,
136
UsingCellsContainer
,
QEPrimal
>
CellTraits
;
137
139
typedef
CellInterface< CellPixelType, CellTraits >
CellType
;
140
typedef
typename
CellType::CellAutoPointer
CellAutoPointer
;
141
143
typedef
MapContainer< PointIdentifier, PointCellLinksContainer >
CellLinksContainer
;
144
typedef
MapContainer< CellIdentifier, CellType * >
CellsContainer
;
145
typedef
MapContainer< PointIdentifier, PixelType >
PointDataContainer
;
146
typedef
MapContainer< CellIdentifier, CellPixelType >
CellDataContainer
;
147
149
typedef
typename
PointType::VectorType
VectorType
;
150
};
151
}
// enamespace
152
153
#endif
154
155
// eof - itkQuadEdgeMeshExtendedTraits.h
156
Generated on Tue Jul 10 2012 23:40:36 for ITK by
1.8.1