MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
mg_cg_forme_multi_volume.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 //####// mg_cg_forme_multi_volume.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:53 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef _MG_CG_FORME_MULTI_VOLUME_
23 #define _MG_CG_FORME_MULTI_VOLUME_
24 
25 
26 
27 #include <vector>
28 #include <map>
29 
30 #include "mg_cg_forme.h"
31 
32 class MG_CG_FORME;
33 class MG_VOLUME;
34 
36 {
37 public:
38 
39  MG_CG_FORME_MULTI_VOLUME(MG_CG_MODELE* mgcg_modele,int provenance);
40  MG_CG_FORME_MULTI_VOLUME(MG_CG_MODELE* mgcg_modele,int provenance,int etat, unsigned long num);
41  MG_CG_FORME_MULTI_VOLUME(MG_CG_MODELE* mgcg_modele,int provenance,std::vector<MG_VOLUME*> &vector_mg_volume);
42  MG_CG_FORME_MULTI_VOLUME(MG_CG_MODELE* mgcg_modele,int provenance,int etat, unsigned long num,std::vector<MG_VOLUME*> &vector_mg_volume);
43 
45  virtual ~MG_CG_FORME_MULTI_VOLUME();
46 
47  virtual long get_nb_mg_volume(void);
48  virtual int ajouter_mg_volume(MG_VOLUME* mg_volume);
49  virtual MG_VOLUME* get_premier_mg_volume(std::map<long,MG_VOLUME*>::iterator &it);
50  virtual MG_VOLUME* get_suivant_mg_volume(std::map<long,MG_VOLUME*>::iterator &it);
51  virtual int retirer_mg_volume(MG_VOLUME* mg_volume);
52  virtual void retirer_tout_mg_volume(void);
53 
54  virtual void get_mg_element(TPL_MAP_ENTITE<MG_ELEMENT_TOPOLOGIQUE*> *map_mg_element_topologique,
55  TPL_MAP_ENTITE<MG_ELEMENT_COTOPOLOGIQUE*> *map_mg_element_cotopologique,
56  TPL_MAP_ENTITE<MG_ELEMENT_GEOMETRIQUE*> *map_mg_element_geometrique);
57 
58  virtual BOITE_3D get_boite_3D(void);
59 
60  virtual int get_type_forme(void);
61  virtual void enregistrer(std::ostream& o,double version);
62  virtual int construire(void);
63  virtual int construire(bool fusionner_entite_similaire,
64  double precision,
65  bool importer_triangulation,
66  double epsilon_triangulation);
67 protected:
68  std::map<long,MG_VOLUME*> m_map_mg_volume;
69 };
70 
71 
72 #endif
mg_cg_forme.h
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * >
MG_CG_FORME_MULTI_VOLUME::ajouter_mg_volume
virtual int ajouter_mg_volume(MG_VOLUME *mg_volume)
Definition: mg_cg_forme_multi_volume.cpp:80
MG_CG_FORME_MULTI_VOLUME::get_suivant_mg_volume
virtual MG_VOLUME * get_suivant_mg_volume(std::map< long, MG_VOLUME * >::iterator &it)
Definition: mg_cg_forme_multi_volume.cpp:138
MG_CG_FORME_MULTI_VOLUME::get_nb_mg_volume
virtual long get_nb_mg_volume(void)
Definition: mg_cg_forme_multi_volume.cpp:75
MG_CG_FORME_MULTI_VOLUME::MG_CG_FORME_MULTI_VOLUME
MG_CG_FORME_MULTI_VOLUME(MG_CG_MODELE *mgcg_modele, int provenance)
Definition: mg_cg_forme_multi_volume.cpp:29
MG_CG_FORME_MULTI_VOLUME::retirer_tout_mg_volume
virtual void retirer_tout_mg_volume(void)
Definition: mg_cg_forme_multi_volume.cpp:99
MG_VOLUME
Definition: mg_volume.h:33
MG_CG_FORME_MULTI_VOLUME
Definition: mg_cg_forme_multi_volume.h:35
MG_CG_FORME_MULTI_VOLUME::retirer_mg_volume
virtual int retirer_mg_volume(MG_VOLUME *mg_volume)
Definition: mg_cg_forme_multi_volume.cpp:87
MG_CG_FORME_MULTI_VOLUME::get_premier_mg_volume
virtual MG_VOLUME * get_premier_mg_volume(std::map< long, MG_VOLUME * >::iterator &it)
Definition: mg_cg_forme_multi_volume.cpp:131
MG_CG_FORME_MULTI_VOLUME::get_boite_3D
virtual BOITE_3D get_boite_3D(void)
Definition: mg_cg_forme_multi_volume.cpp:119
MG_CG_FORME
Definition: mg_cg_forme.h:41
MG_CG_FORME_MULTI_VOLUME::m_map_mg_volume
std::map< long, MG_VOLUME * > m_map_mg_volume
Definition: mg_cg_forme_multi_volume.h:68
MG_CG_MODELE
Definition: mg_cg_modele.h:41
MG_CG_FORME_MULTI_VOLUME::get_mg_element
virtual void get_mg_element(TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > *map_mg_element_topologique, TPL_MAP_ENTITE< MG_ELEMENT_COTOPOLOGIQUE * > *map_mg_element_cotopologique, TPL_MAP_ENTITE< MG_ELEMENT_GEOMETRIQUE * > *map_mg_element_geometrique)
Definition: mg_cg_forme_multi_volume.cpp:104
BOITE_3D
Definition: ot_boite_3d.h:27
MG_CG_FORME_MULTI_VOLUME::construire
virtual int construire(void)
Definition: mg_cg_forme_multi_volume.cpp:150
MG_CG_FORME_MULTI_VOLUME::~MG_CG_FORME_MULTI_VOLUME
virtual ~MG_CG_FORME_MULTI_VOLUME()
Definition: mg_cg_forme_multi_volume.cpp:70
MG_CG_FORME_MULTI_VOLUME::get_type_forme
virtual int get_type_forme(void)
Definition: mg_cg_forme_multi_volume.cpp:145
MG_CG_FORME_MULTI_VOLUME::enregistrer
virtual void enregistrer(std::ostream &o, double version)
Definition: mg_cg_forme_multi_volume.cpp:167