Moka kernel
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
g-map-vertex.hh
Go to the documentation of this file.
1
/*
2
* lib-gmapkernel : Un noyau de 3-G-cartes et des opérations.
3
* Copyright (C) 2004, Moka Team, Université de Poitiers, Laboratoire SIC
4
* http://www.sic.sp2mi.univ-poitiers.fr/
5
* Copyright (C) 2009, Guillaume Damiand, CNRS, LIRIS,
6
* guillaume.damiand@liris.cnrs.fr, http://liris.cnrs.fr/
7
*
8
* This file is part of lib-gmapkernel
9
*
10
* This program is free software: you can redistribute it and/or modify
11
* it under the terms of the GNU Lesser General Public License as published by
12
* the Free Software Foundation, either version 3 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU Lesser General Public License for more details.
19
*
20
* You should have received a copy of the GNU Lesser General Public License
21
* along with this program. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
24
//******************************************************************************
25
#ifndef G_MAP_VERTEX_HH
26
#define G_MAP_VERTEX_HH
27
//******************************************************************************
28
#include <cmath>
29
#include <cstdio>
30
#include <fstream>
31
#include <set>
// pour les méthodes auxiliaires de co-raffinement.
32
33
#include "
g-map-generic.hh
"
34
#include "
dart-vertex.hh
"
35
#include "
geometry.hh
"
36
#include "
vertex.hh
"
37
#include "
vector.hh
"
38
#include "
transformation-matrix.hh
"
39
#include "
mesh-diver.hh
"
40
41
#include "
alt-stdint.hh
"
42
#include "
inline-macro.hh
"
43
//******************************************************************************
44
namespace
GMap3d
45
{
46
enum
47
{
48
NONE
= 0,
49
FACE_REMOVAL
= 1,
50
EDGE_REMOVAL
= 2,
51
VERTEX_REMOVAL
= 4,
52
EDGE_CONTRACTION
= 8,
53
FACE_CONTRACTION
= 16,
54
VOLUME_CONTRACTION
= 32
55
};
56
57
63
class
CGMapVertex
:
public
CGMapGeneric
64
{
65
public
:
66
// @name Constructeur, destructeur et méthode d'initialisation
67
// @{
68
#include "
gmv-instance.hh
"
69
// @}
70
71
// @name Accesseurs
72
// @{
73
#include "
gmv-inline.hh
"
74
// @}
75
76
// @name Méthodes permettant de créer et plonger des maillages
77
// @{
78
#include "
gmv-primitive-mesh.hh
"
79
// @}
80
81
// @name Méthodes permettant la manipulation de polylignes
82
// @{
83
#include "
gmv-polyline.hh
"
84
// @}
85
86
// @name Méthodes de création des objets de base
87
// @{
88
#include "
gmv-primitive.hh
"
89
// @}
90
91
// @name Méthodes basiques pour les opérations géométriques
92
// @{
93
#include "
gmv-geometry.hh
"
94
// @}
95
96
// @name Méthodes de calcul d'une droite ou d'un plan de régression
97
// @{
98
#include "
gmv-regression.hh
"
99
// @}
100
101
// @name Méthodes de placage
102
// @{
103
#include "
gmv-plating.hh
"
104
// @}
105
106
// @name Coutures avec placages
107
// @{
108
#include "
gmv-geo-sew.hh
"
109
// @}
110
111
// @name Méthode d'insertion
112
// @{
113
#include "
gmv-insertion.hh
"
114
// @}
115
116
// @name Méthode de suppression des arêtes de longueur nulle
117
// @{
118
#include "
gmv-null-length-edge.hh
"
119
// @}
120
121
// @name Matérialisations
122
// @{
123
#include "
gmv-materialization.hh
"
124
// @}
125
126
// @name Chargement et sauvegarde
127
// @{
128
#include "
gmv-save.hh
"
129
// @}
130
131
// @name Import et export au format off
132
// @{
133
#include "
gmv-off.hh
"
134
// @}
135
136
// Calcul du dual d'une carte, en dimension 2 ou 3.
137
// @{
138
#include "
gmv-dual.hh
"
139
// @}
140
141
// @name Méthodes de mise à jour des plongements éclatés
142
// @{
143
#include "
gmv-burstview.hh
"
144
// @}
145
146
// @name Bouchage
147
// @{
148
#include "
gmv-stop-up.hh
"
149
// @}
150
151
// @name Triangulations et quadrangulations barycentriques
152
// @{
153
#include "
gmv-triangulation.hh
"
154
#include "
gmv-quadrangulation.hh
"
155
// @}
156
157
// @name Méthodes permettant l'allocation et la libération d'un paramètre de
158
// pondération pour les déformations
159
// @{
160
#include "
gmv-direct-info.hh
"
161
// @}
162
163
// @name Méthodes permettant de déformer les objets
164
// @{
165
#include "
gmv-deformation.hh
"
166
// @}
167
168
// @name Épaississement
169
// @{
170
#include "
gmv-thickening.hh
"
171
// @}
172
173
// @name Extrusions
174
// @{
175
#include "
gmv-extrusion.hh
"
176
// @}
177
178
// @name Fusion de cellules alignées
179
// @{
180
#include "
gmv-merge.hh
"
181
// @}
182
183
// Différents exports dans des formats plus ou moins exotiques
184
// @{
185
#include "
gmv-export-pov.hh
"
186
// @}
187
188
// Test d'isomorphismes de cartes
189
// @{
190
#include "
gmv-isomorphisme.hh
"
191
// @}
192
193
private
:
194
// @name Champs privés
195
// @{
196
198
TCoordinate
FBurstCoef[4];
199
201
TBurstMethod
FBurstMethod;
202
203
// @}
204
};
205
206
}
// namespace GMap3d
207
//******************************************************************************
208
#include INCLUDE_INLINE("gmv-inline.icc")
209
//******************************************************************************
210
#endif // G_MAP_VERTEX_HH
211
//******************************************************************************
lib-gmapkernel
g-map-vertex
g-map-vertex.hh
Generated on Tue Apr 9 2013 09:51:35 for Moka kernel by
1.8.2