MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
mailleur_bloc.h
Aller à la documentation de ce fichier.
1 //####//------------------------------------------------------------
2 //####//------------------------------------------------------------
3 //####// MAGiC
4 //####// Jean Christophe Cuilliere et Vincent FRANCOIS
5 //####// Departement de Genie Mecanique - UQTR
6 //####//------------------------------------------------------------
7 //####// MAGIC est un projet de recherche de l equipe ERICCA
8 //####// du departement de genie mecanique de l Universite du Quebec a Trois Rivieres
9 //####// http://www.uqtr.ca/ericca
10 //####// http://www.uqtr.ca/
11 //####//------------------------------------------------------------
12 //####//------------------------------------------------------------
13 //####//
14 //####// mailleur_bloc.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:55 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 
23 #ifndef mailleur_blocH
24 #define mailleur_blocH
25 
26 
27 
28 
29 
30 #include "mailleur.h"
31 #include "tpl_octree.h"
32 #include "tpl_quadtree.h"
33 #include "mg_segment_frontiere.h"
34 #include "mg_geometrie_outils.h"
35 #include <map>
36 
37 
38 class MAILLEUR_BLOC:public MAILLEUR
39 {
40 public:
41  MAILLEUR_BLOC(class MG_GESTIONNAIRE* gentier,MG_GESTIONNAIRE* gbloc,int numgeoentier,int numgeobloc,class FCT_TAILLE* fct_taille,bool save);
43 
44  int maille(int etape);
45  int maille(MG_GROUPE_TOPOLOGIQUE* mggt=NULL);
46 
47 private:
48  class MG_SOMMET* verif_noeud_sur_sommet(double *xyz, class MG_GEOMETRIE *geo);
49  class MG_ARETE* verif_noeud_sur_arete(double *xyz, MG_GEOMETRIE *geo,int *num, double *t);
50 
52 
54 
55 
56  class MG_NOEUD* chercher(double *xyz,TPL_OCTREE<MG_NOEUD*,MG_NOEUD*> &octree);
57  class MG_FACE* seg_sur_face(class MG_SEGMENT* seg,MG_GEOMETRIE* geo,int *num);//,TPL_QUADTREE<MG_SEGMENT_FRONTIERE*,MG_NOEUD*> **quad);
58  MG_FACE* tri_sur_face(class MG_TRIANGLE* tri,MG_GEOMETRIE* geo,int *num);//TPL_QUADTREE<MG_SEGMENT_FRONTIERE*,MG_NOEUD*> **quad);
59 
60 
63  class FCT_TAILLE* carte;
65  class TPL_OCTREE<class MG_NOEUD*,class MG_NOEUD*> *octreebloc;
66  class TPL_OCTREE<class MG_NOEUD*,class MG_NOEUD*> *octreeentier;
67 
70 
71 };
72 
73 
75 {
76 public:
77  class MG_NOEUD* noeud;
78  double t;
79 };
80 
81 
82 
83 typedef std::map<double,MG_NOEUD_ADDITIONNEL_ARETE,std::less<double> > LISTE_NOEUD_ADD_ARETE;
84 typedef std::map<double,MG_NOEUD_ADDITIONNEL_ARETE,std::less<double> >::iterator IT_LISTE_NOEUD_ADD_ARETE;
85 
86 
87 #endif
MG_SEGMENT
Definition: mg_segment.h:38
MG_NOEUD_ADDITIONNEL_ARETE::noeud
class MG_NOEUD * noeud
Definition: mailleur_bloc.h:77
MG_NOEUD_ADDITIONNEL_ARETE
Definition: mailleur_bloc.h:74
MAILLEUR_BLOC::chercher
class MG_NOEUD * chercher(double *xyz, TPL_OCTREE< MG_NOEUD *, MG_NOEUD * > &octree)
Definition: mailleur_bloc.cpp:405
MAILLEUR_BLOC::gestbloc
class MG_GESTIONNAIRE * gestbloc
Definition: mailleur_bloc.h:61
MAILLEUR_BLOC::maientier
class MG_MAILLAGE * maientier
Definition: mailleur_bloc.h:64
MAILLEUR_BLOC::otentier
MG_GEOMETRIE_OUTILS otentier
Definition: mailleur_bloc.h:68
MG_TRIANGLE
Definition: mg_triangle.h:38
FCT_TAILLE
Definition: fct_taille.h:30
MG_GESTIONNAIRE
Definition: mg_gestionnaire.h:57
MAILLEUR_BLOC::octreebloc
class TPL_OCTREE< class MG_NOEUD *, class MG_NOEUD * > * octreebloc
Definition: mailleur_bloc.h:65
MAILLEUR_BLOC::verif_noeud_sur_sommet
class MG_SOMMET * verif_noeud_sur_sommet(double *xyz, class MG_GEOMETRIE *geo)
Definition: mailleur_bloc.cpp:422
mailleur.h
MAILLEUR_BLOC::gestentier
class MG_GESTIONNAIRE * gestentier
Definition: mailleur_bloc.h:61
mg_segment_frontiere.h
MAILLEUR_BLOC::~MAILLEUR_BLOC
~MAILLEUR_BLOC()
Definition: mailleur_bloc.cpp:50
MAILLEUR_BLOC
Definition: mailleur_bloc.h:38
MAILLEUR_BLOC::maitemp
class MG_MAILLAGE * maitemp
Definition: mailleur_bloc.h:64
MAILLEUR_BLOC::carte
class FCT_TAILLE * carte
Definition: mailleur_bloc.h:63
MG_NOEUD
Definition: mg_noeud.h:41
MAILLEUR_BLOC::geoentier
class MG_GEOMETRIE * geoentier
Definition: mailleur_bloc.h:62
MAILLEUR_BLOC::geobloc
class MG_GEOMETRIE * geobloc
Definition: mailleur_bloc.h:62
IT_LISTE_NOEUD_ADD_ARETE
std::map< double, MG_NOEUD_ADDITIONNEL_ARETE, std::less< double > >::iterator IT_LISTE_NOEUD_ADD_ARETE
Definition: mailleur_bloc.h:84
MAILLEUR_BLOC::otbloc
MG_GEOMETRIE_OUTILS otbloc
Definition: mailleur_bloc.h:69
LISTE_NOEUD_ADD_ARETE
std::map< double, MG_NOEUD_ADDITIONNEL_ARETE, std::less< double > > LISTE_NOEUD_ADD_ARETE
Definition: mailleur_bloc.h:83
tpl_octree.h
MG_NOEUD_ADDITIONNEL_ARETE::t
double t
Definition: mailleur_bloc.h:78
MAILLEUR_BLOC::maille
int maille(int etape)
Definition: mailleur_bloc.cpp:74
MG_NOEUD::xyz
double xyz[3]
Definition: mg_noeud.h:104
MAILLEUR_BLOC::MAILLEUR_BLOC
MAILLEUR_BLOC(class MG_GESTIONNAIRE *gentier, MG_GESTIONNAIRE *gbloc, int numgeoentier, int numgeobloc, class FCT_TAILLE *fct_taille, bool save)
Definition: mailleur_bloc.cpp:42
MG_GROUPE_TOPOLOGIQUE
Definition: mg_groupe_topologique.h:31
MAILLEUR_BLOC::cree_octree
void cree_octree(class MG_MAILLAGE *mai, TPL_OCTREE< class MG_NOEUD *, MG_NOEUD * > **octree)
Definition: mailleur_bloc.cpp:552
mg_geometrie_outils.h
tpl_quadtree.h
MAILLEUR
Definition: mailleur.h:33
MG_GEOMETRIE
Definition: mg_geometrie.h:84
MG_MAILLAGE
Definition: mg_maillage.h:62
MAILLEUR_BLOC::verif_noeud_sur_arete
class MG_ARETE * verif_noeud_sur_arete(double *xyz, MG_GEOMETRIE *geo, int *num, double *t)
Definition: mailleur_bloc.cpp:440
MG_ARETE
Definition: mg_arete.h:36
MG_FACE
Definition: mg_face.h:34
MG_SOMMET
Definition: mg_sommet.h:35
MG_GEOMETRIE_OUTILS
Definition: mg_geometrie_outils.h:37
MAILLEUR_BLOC::tri_sur_face
MG_FACE * tri_sur_face(class MG_TRIANGLE *tri, MG_GEOMETRIE *geo, int *num)
Definition: mailleur_bloc.cpp:502
MAILLEUR_BLOC::octreeentier
class TPL_OCTREE< class MG_NOEUD *, class MG_NOEUD * > * octreeentier
Definition: mailleur_bloc.h:66
TPL_OCTREE
Definition: tpl_octree.h:344
MAILLEUR_BLOC::seg_sur_face
class MG_FACE * seg_sur_face(class MG_SEGMENT *seg, MG_GEOMETRIE *geo, int *num)
Definition: mailleur_bloc.cpp:465
MAILLEUR_BLOC::maibloc
class MG_MAILLAGE * maibloc
Definition: mailleur_bloc.h:64