Orfeo Toolbox
3.16
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
OTB
Utilities
ITK
Code
Review
itkQuadEdgeMeshTraits.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Insight Segmentation & Registration Toolkit
4
Module: $RCSfile: itkQuadEdgeMeshTraits.h,v $
5
Language: C++
6
Date: $Date: 2010-06-14 15:03:36 $
7
Version: $Revision: 1.12 $
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 __itkQuadEdgeMeshTraits_h
19
#define __itkQuadEdgeMeshTraits_h
20
21
#include <set>
22
#include <
itkCellInterface.h
>
23
#include <
itkMapContainer.h
>
24
#include "
itkQuadEdgeMeshPoint.h
"
25
#include "
itkGeometricalQuadEdge.h
"
26
#include "
itkQuadEdgeCellTraitsInfo.h
"
27
28
namespace
itk
29
{
44
template
<
typename
TPixel,
unsigned
int
VPointDimension,
45
typename
TPData,
typename
TDData,
46
typename
TCoordRep=float,
typename
TInterpolationWeight=
float
>
47
class
QuadEdgeMeshTraits
48
{
49
public
:
51
typedef
QuadEdgeMeshTraits
Self
;
52
typedef
TPixel
PixelType
;
53
typedef
TPixel
CellPixelType
;
54
typedef
TCoordRep
CoordRepType
;
55
typedef
TInterpolationWeight
InterpolationWeightType
;
56
57
itkStaticConstMacro(
PointDimension
,
unsigned
int
, VPointDimension );
58
itkStaticConstMacro(
MaxTopologicalDimension
,
unsigned
int
,
59
VPointDimension );
60
61
typedef
unsigned
long
PointIdentifier
;
62
typedef
unsigned
long
CellIdentifier
;
63
typedef
unsigned
char
CellFeatureIdentifier
;
// made small in purpose
64
65
typedef
std::set< CellIdentifier >
UsingCellsContainer
;
66
typedef
std::set< CellIdentifier >
PointCellLinksContainer
;
67
69
typedef
TPData
PrimalDataType
;
70
typedef
TDData
DualDataType
;
71
typedef
GeometricalQuadEdge
<
PointIdentifier
,
CellIdentifier
,
72
PrimalDataType
,
DualDataType
>
QEPrimal
;
73
//typedef QEPrimal QEType;
74
typedef
typename
QEPrimal::DualType
QEDual
;
75
// FOR LEO typedef typename QEPrimal::Superclass QEType;
76
// FOR LEO typedef typename QEPrimal::Dual QEDual;
77
typedef
typename
QEPrimal::OriginRefType
VertexRefType
;
78
typedef
typename
QEPrimal::DualOriginRefType
FaceRefType
;
79
82
typedef
Point< CoordRepType, VPointDimension >
PointHashType
;
83
85
typedef
QuadEdgeMeshPoint
<
86
CoordRepType
, VPointDimension,
QEPrimal
>
PointType
;
87
typedef
MapContainer< PointIdentifier, PointType >
PointsContainer
;
88
90
typedef
QuadEdgeMeshCellTraitsInfo
<
91
VPointDimension,
CoordRepType
,
92
InterpolationWeightType
,
PointIdentifier
,
93
CellIdentifier
,
CellFeatureIdentifier
,
94
PointType
,
PointsContainer
,
95
UsingCellsContainer
,
QEPrimal
>
CellTraits
;
96
typedef
CellInterface< CellPixelType, CellTraits >
CellType
;
97
typedef
typename
CellType::CellAutoPointer
CellAutoPointer
;
98
100
typedef
MapContainer
<
PointIdentifier
,
101
PointCellLinksContainer
>
CellLinksContainer
;
102
typedef
MapContainer< CellIdentifier, CellType* >
CellsContainer
;
103
typedef
MapContainer< PointIdentifier, PixelType >
PointDataContainer
;
104
typedef
MapContainer< CellIdentifier, CellPixelType >
CellDataContainer
;
105
107
typedef
typename
PointType::VectorType
VectorType
;
108
};
109
110
}
111
112
#endif
Generated at Sun Feb 3 2013 00:01:02 for
Orfeo Toolbox
with
doxygen 1.8.1.1