00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef CONTROLER_GMAP_TYPES_HH
00026 #define CONTROLER_GMAP_TYPES_HH
00027
00028 #include "controler-types.hh"
00029
00030 namespace GMap3d
00031 {
00032
00033
00035 #define NB_PREDEFINED_OBJECTS (6)
00036
00037 typedef int TObject;
00038
00039 enum
00040 {
00041 FIRST_OBJECT_CONTROLER_GMAP = 0,
00042
00043 OBJECT_POLYGON = FIRST_OBJECT_CONTROLER_GMAP,
00044 OBJECT_MESH,
00045 OBJECT_SPHERE,
00046 OBJECT_CYLINDER,
00047 OBJECT_PYRAMID,
00048 OBJECT_TORUS,
00049
00050 LAST_OBJECT_CONTROLER_GMAP
00051 };
00053
00054 enum
00055 {
00056 FIRST_MODE_CONTROLER_GMAP = LAST_MODE_CONTROLER,
00057
00058 MODE_CREATION_POLYLINE = FIRST_MODE_CONTROLER_GMAP,
00059 MODE_CREATION_POLYGON,
00060 MODE_CREATION_MESH,
00061 MODE_CREATION_SPHERE,
00062 MODE_CREATION_CYLINDER,
00063 MODE_CREATION_PYRAMID,
00064 MODE_CREATION_TORUS,
00065
00066 MODE_TRANSLATION,
00067 MODE_ROTATION,
00068 MODE_SCALE,
00069
00070 MODE_ROUNDING,
00071
00072 LAST_MODE_CONTROLER_GMAP
00073 };
00074
00075 enum
00076 {
00077 FIRST_MODE_OPERATION_CONTROLER_GMAP = LAST_MODE_OPERATION_CONTROLER,
00078
00079 MODE_OPERATION_CREATION_POLYLINE = FIRST_MODE_OPERATION_CONTROLER_GMAP,
00080 MODE_OPERATION_CREATION_POLYGON,
00081 MODE_OPERATION_CREATION_MESH,
00082 MODE_OPERATION_CREATION_SPHERE,
00083 MODE_OPERATION_CREATION_CYLINDER,
00084 MODE_OPERATION_CREATION_PYRAMID,
00085 MODE_OPERATION_CREATION_TORUS,
00086
00087 MODE_OPERATION_TRANSLATION,
00088 MODE_OPERATION_ROTATION,
00089 MODE_OPERATION_SCALE,
00090
00091 MODE_OPERATION_ROUNDING,
00092
00093 LAST_MODE_OPERATION_CONTROLER_GMAP
00094 };
00095
00096
00098 enum
00099 {
00100 FIRST_PRECOMPILE_CONTROLER_GMAP = LAST_PRECOMPILE_CONTROLER,
00101
00102 PRECOMPILE_DART = FIRST_PRECOMPILE_CONTROLER_GMAP,
00103 PRECOMPILE_FACE,
00104 PRECOMPILE_NORMAL_VECTOR,
00105 PRECOMPILE_OBJECT_TRANSFORMATION,
00106 PRECOMPILE_PREVIEW,
00107 PRECOMPILE_SEW,
00108 #ifdef MODULE_SPAMOD
00109 PRECOMPILE_SPAMOD,
00110 #endif // MODULE_SPAMOD
00111 PRECOMPILE_VERTEX,
00112
00113 LAST_PRECOMPILE_CONTROLER_GMAP
00114 };
00116
00117
00118 typedef int TParameter;
00119
00120 enum
00121 {
00122 FIRST_PARAMETER_CONTROLER_GMAP = LAST_PARAMETER_CONTROLER,
00123
00124
00125 PARAMETER_DART = FIRST_PARAMETER_CONTROLER_GMAP,
00126 PARAMETER_FACE,
00127 PARAMETER_GRID,
00128 PARAMETER_NORMAL_VECTOR,
00129 PARAMETER_OBJECT_TRANSFORMATION,
00130 PARAMETER_PREVIEW,
00131 PARAMETER_SEW,
00132 #ifdef MODULE_SPAMOD
00133 PARAMETER_SPAMOD,
00134 #endif // MODULE_SPAMOD
00135 PARAMETER_VERTEX,
00136
00137
00138 PARAMETER_GMAP_VERTEX,
00139 PARAMETER_CREATION,
00140 PARAMETER_SELECTION,
00141 PARAMETER_OBJECT_POSITION,
00142 PARAMETER_POLYLINE_POSITION,
00143 PARAMETER_OBJECT_TRANSLATION,
00144 PARAMETER_OBJECT_ROTATION,
00145 PARAMETER_OBJECT_SCALE,
00146 PARAMETER_OBJECT_PONDERATION,
00147 PARAMETER_OPERATIONS,
00148
00149 LAST_PARAMETER_CONTROLER_GMAP
00150 };
00151
00152
00153 typedef int TScaleType;
00154
00155 enum
00156 {
00157 SCALE_POINT,
00158 SCALE_AXE,
00159 SCALE_PLANE
00160 };
00161
00162
00163 typedef int TPonderationType;
00164
00165 enum
00166 {
00167 PONDERATION_POINT,
00168 PONDERATION_AXE,
00169 PONDERATION_PLANE
00170 };
00171
00172
00173 typedef int TSmoothType;
00174
00175 enum
00176 {
00177 HERMITE_SMOOTH,
00178 BEZIER_SMOOTH,
00179 OVERHAUSER_SMOOTH,
00180 SPLINE_SMOOTH,
00181 COONS_SMOOTH
00182 };
00183
00184
00185 enum
00186 {
00187 FIRST_OPERATION_CONTROLER_GMAP = LAST_OPERATION_CONTROLER,
00188
00189 OPERATION_INVERT_LAST_OPERATION = FIRST_OPERATION_CONTROLER_GMAP,
00190
00191 OPERATION_SELECT,
00192
00193 OPERATION_CREATE,
00194 OPERATION_SEW,
00195 OPERATION_UNSEW,
00196 OPERATION_MERGE,
00197 OPERATION_MERGE_COLINEAR,
00198 OPERATION_MERGE_FACE_NODISCONNECTION,
00199 OPERATION_REMOVE_FACES_KEEP_BALLS,
00200 OPERATION_SHIFT_EDGES_INCIDENT_TO_VERTEX,
00201 OPERATION_REMOVE_DANGLING_EDGES,
00202 OPERATION_CONTRACT,
00203 OPERATION_DEL_FLAT_FACES,
00204 OPERATION_DEL_FLAT_VOLUMES,
00205 OPERATION_DELETE_DARTS,
00206 OPERATION_DUPLICATE_DARTS,
00207 OPERATION_DEL_NULL_EDGE,
00208 OPERATION_INSERT,
00209 OPERATION_STOP_UP,
00210 OPERATION_TRIANGULATE,
00211 OPERATION_QUADRANGULATE,
00212 OPERATION_EXTRUDE,
00213 OPERATION_THICKEN,
00214 OPERATION_MESH,
00215 OPERATION_SMOOTH,
00216 OPERATION_ROUND,
00217 OPERATION_TRIANGULATION,
00218 OPERATION_COREFINE,
00219 OPERATION_GEOLOGY,
00220 OPERATION_PLATE,
00221 OPERATION_DEFORM,
00222 OPERATION_MATERIALIZE,
00223 OPERATION_LOAD,
00224 OPERATION_SAVE,
00225 OPERATION_EXPORT,
00226 OPERATION_DUAL,
00227 OPERATION_EXTRACT_IMAGE,
00228 OPERATION_FIND_MOTIF_OFF,
00229 OPERATION_FIND_MOTIF_MOKA,
00230
00231 LAST_OPERATION_CONTROLER_GMAP
00232 };
00233
00234 enum
00235 {
00236 FIRST_SUB_OPERATION_CONTROLER_GMAP = LAST_SUB_OPERATION_CONTROLER,
00237
00238 SUB_OPERATION_INVERT_LAST_ORIENTATION,
00239 SUB_OPERATION_INVERT_LAST_GEOMETRY,
00240
00241 SUB_OPERATION_CREATE_POLYLINE,
00242 SUB_OPERATION_CREATE_POLYGON,
00243 SUB_OPERATION_CREATE_MESH,
00244 SUB_OPERATION_CREATE_CYLINDER,
00245 SUB_OPERATION_CREATE_PYRAMID,
00246 SUB_OPERATION_CREATE_SPHERE,
00247 SUB_OPERATION_CREATE_TORUS,
00248
00249 SUB_OPERATION_INTUITIVE,
00250 SUB_OPERATION_INTUITIVE_TOPO,
00251 SUB_OPERATION_INTUITIVE_GEO,
00252 SUB_OPERATION_TOPO,
00253 SUB_OPERATION_GEO,
00254
00255 SUB_OPERATION_INTUITIVE_BORDER,
00256 SUB_OPERATION_INTUITIVE_GEO_BORDER,
00257 SUB_OPERATION_INTUITIVE_TOPO_BORDER,
00258 SUB_OPERATION_BORDERS,
00259 SUB_OPERATION_GEO_BORDERS,
00260 SUB_OPERATION_TOPO_BORDERS,
00261
00262 SUB_OPERATION_QUADRANGULATE_FACES,
00263 SUB_OPERATION_QUADRANGULATE_FACES_BASIC,
00264
00265 SUB_OPERATION_EXTRUDE_BY_PATH,
00266 SUB_OPERATION_EXTRUDE_BY_NORMAL,
00267 SUB_OPERATION_EXTRUDE_BY_REVOLUTION,
00268 SUB_OPERATION_INTUITIVE_EXTRUDE_BY_NORMAL,
00269
00270 SUB_OPERATION_TRIANGULATION_SWAP_EDGE,
00271 SUB_OPERATION_TRIANGULATION_GEO_FACES,
00272 SUB_OPERATION_TRIANGULATION_TOPO_FACES,
00273 SUB_OPERATION_TRIANGULATION_MARK_NON_UNIFORM_FACES,
00274 SUB_OPERATION_TRIANGULATION_OPTIMIZE,
00275 SUB_OPERATION_TRIANGULATION_DELAUNAY,
00276 SUB_OPERATION_TRIANGULATION_OPTIMIZED_DELAUNAY,
00277
00278 SUB_OPERATION_COREFINE2D_LINES,
00279 SUB_OPERATION_COREFINE2D_SWEEPING,
00280 SUB_OPERATION_COREFINE2D_PROPAGATION,
00281 SUB_OPERATION_COREFINE_BOOL_OPS2D,
00282 SUB_OPERATION_COREFINE3D,
00283 SUB_OPERATION_COREFINE3D_MARKED_FACES,
00284 SUB_OPERATION_COREFINE3D_MARKED_MESHES,
00285 SUB_OPERATION_COREFINE_BOOL_OPS3D,
00286
00287 SUB_OPERATION_GEOLOGY_UNCERTAIN_ZONE,
00288 SUB_OPERATION_GEOLOGY_EXTEND,
00289 SUB_OPERATION_GEOLOGY_EXTEND_TO,
00290 SUB_OPERATION_GEOLOGY_SMOOTH,
00291 SUB_OPERATION_GEOLOGY_SIMPLIFY,
00292 SUB_OPERATION_GEOLOGY_RELAX,
00293 SUB_OPERATION_GEOLOGY_CENTER,
00294 SUB_OPERATION_GEOLOGY_PLATE_ON_FACES,
00295 SUB_OPERATION_GEOLOGY_PLATE_ON_EDGES,
00296 SUB_OPERATION_GEOLOGY_PLATE_ON_VERTICES,
00297 SUB_OPERATION_GEOLOGY_SELECT_VERTICES,
00298 SUB_OPERATION_GEOLOGY_SELECT_ALL_EDGES,
00299 SUB_OPERATION_GEOLOGY_SELECT_EDGES,
00300 SUB_OPERATION_GEOLOGY_SELECT_FACES,
00301 SUB_OPERATION_GEOLOGY_SELECT_BORDERS,
00302 SUB_OPERATION_GEOLOGY_IMPORT_GR2D,
00303 SUB_OPERATION_GEOLOGY_IMPORT_XYZ,
00304 SUB_OPERATION_GEOLOGY_IMPORT_TS,
00305 SUB_OPERATION_GEOLOGY_IMPORT_CLOUD,
00307 SUB_OPERATION_GEOLOGY_TRIANG_HOLES,
00308 SUB_OPERATION_GEOLOGY_HOLES_REFINEMENT,
00309 SUB_OPERATION_GEOLOGY_FILL_HOLES,
00310 SUB_OPERATION_GEOLOGY_FAILLE_DETECTION,
00311 SUB_OPERATION_GEOLOGY_EXTENSION_FAILLE,
00312 SUB_OPERATION_GEOLOGY_EXTRACT_FAILLE,
00313 SUB_OPERATION_GEOLOGY_MESH_SIMPLIFICATION,
00314 SUB_OPERATION_GEOLOGY_IMPORT_VRML,
00315 SUB_OPERATION_GEOLOGY_EXPORT_TS,
00317
00318 SUB_OPERATION_TRANSLATE,
00319 SUB_OPERATION_ROTATE,
00320 SUB_OPERATION_SCALE,
00321
00322 SUB_OPERATION_MATERIALIZE_BARYCENTER,
00323 SUB_OPERATION_MATERIALIZE_AXE,
00324 SUB_OPERATION_MATERIALIZE_PLANE,
00325 SUB_OPERATION_MATERIALIZE_NORMAL_VECTOR,
00326 SUB_OPERATION_MATERIALIZE_ORTHO_PLANE,
00327 SUB_OPERATION_MATERIALIZE_REFERENTIAL,
00328
00329 SUB_OPERATION_SELECT_ORBIT,
00330 SUB_OPERATION_SET_SELECTION_LEVEL,
00331 SUB_OPERATION_SELECT_INCIDENTS,
00332 SUB_OPERATION_SELECT_INTERIOR,
00333 SUB_OPERATION_SELECT_INTERSECTION,
00334 SUB_OPERATION_REINIT_SELECTION,
00335 SUB_OPERATION_NEGATE_SELECTION,
00336 SUB_OPERATION_SWAP_SELECTIONS,
00337 SUB_OPERATION_EXTEND_SELECTION,
00338 SUB_OPERATION_SELECT_NON_PLANAR_FACES,
00339 SUB_OPERATION_MOVE_SELECTION,
00340
00341 SUB_OPERATION_LOAD_MAP,
00342 SUB_OPERATION_ADD_MAP,
00343
00344 LAST_SUB_OPERATION_CONTROLER_GMAP
00345 };
00346
00347 }
00348
00349 #endif // CONTROLER_TYPES_HH
00350