ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/mg_volume.h
Revision: 881
Committed: Wed Apr 12 23:14:07 2017 UTC (8 years, 1 month ago) by francois
Content type: text/plain
File size: 2848 byte(s)
Log Message:
Changement de strategie pour le mailleur couche.
Il fonctionne maintenant avec des volumes minces et non des coquilles
mince est une propriète de volume et ne change pas son nom.
cela necessite un changement de version de fichier -> maintenant 2.3 compatible en arrière
valider sur ancien exemple plus sphere creuse

File Contents

# User Rev Content
1 francois 283 //------------------------------------------------------------
2     //------------------------------------------------------------
3     // MAGiC
4     // Jean Christophe Cuilli�re et Vincent FRANCOIS
5     // D�partement de G�nie M�canique - UQTR
6     //------------------------------------------------------------
7     // Le projet MAGIC est un projet de recherche du d�partement
8     // de g�nie m�canique de l'Universit� du Qu�bec �
9     // Trois Rivi�res
10     // Les librairies ne peuvent �tre utilis�es sans l'accord
11     // des auteurs (contact : francois@uqtr.ca)
12     //------------------------------------------------------------
13     //------------------------------------------------------------
14     //
15     // mg_volume.h
16     //
17     //------------------------------------------------------------
18     //------------------------------------------------------------
19     // COPYRIGHT 2000
20     // Version du 02/03/2006 � 11H22
21     //------------------------------------------------------------
22     //------------------------------------------------------------
23     #ifndef __MGVOLUME_
24     #define __MGVOLUME_
25    
26    
27     #ifdef WINDOWS_VERSION
28     #ifdef BUILT_DLL_GEOMETRIE
29     #define DLLPORTGEOMETRIE __declspec(dllexport)
30     #else
31     #define DLLPORTGEOMETRIE __declspec(dllimport)
32     #endif
33     #else
34     #define DLLPORTGEOMETRIE
35     #endif
36    
37    
38     #include <vector>
39     #include "mg_element_topologique.h"
40     #include "mg_coquille.h"
41    
42     class DLLPORTGEOMETRIE MG_VOLUME:public MG_ELEMENT_TOPOLOGIQUE
43     {
44     public:
45     MG_VOLUME(std::string idori,unsigned long num);
46     MG_VOLUME(std::string idori);
47     MG_VOLUME(MG_VOLUME& mdd);
48     virtual ~MG_VOLUME();
49    
50     virtual void ajouter_mg_coquille(class MG_COQUILLE* mgcoq);
51     virtual void supprimer_mg_coquille(class MG_COQUILLE* mgcoq);
52     virtual int get_nb_mg_coquille(void);
53     virtual MG_COQUILLE* get_mg_coquille(int num);
54     virtual VCT& get_vectorisation(void);
55     virtual void get_propriete_massique(class MG_MAILLAGE* mai,double& volume,class OT_VECTEUR_3D& cdm,class OT_MATRICE_3D& inertieglobale,class OT_MATRICE_3D& inertiecdm,double dens=1.);
56    
57     virtual int get_dimension(void);
58 francois 763 virtual void enregistrer(std::ostream& o,double version);
59 francois 283 virtual void get_topologie_sousjacente(TPL_MAP_ENTITE<MG_ELEMENT_TOPOLOGIQUE*> *lst);
60    
61 francois 576 virtual void change_num_materiau(int num);
62     virtual int get_num_materiau(void);
63     virtual bool est_un_volume_element(void);
64 francois 632 virtual BOITE_3D get_boite_3D(int pas_echantillon=20);
65 francois 881
66     virtual void ajouter_face_correspondante(MG_FACE* face1,MG_FACE* face2);
67     virtual void get_face_correspondante(int num,MG_FACE** face1,MG_FACE** face2);
68     virtual int get_nb_face_correspondante(void);
69     virtual bool est_mince(void);
70 francois 876
71 francois 881
72 francois 876 protected:
73 francois 283 std::vector<MG_COQUILLE*> lst_coquille;
74     int num_materiau;
75     class VCT_VOLUME* vect;
76 francois 881 bool mince;
77     std::vector<MG_FACE*> lst_base;
78     std::vector<MG_FACE*> lst_extrude;
79    
80 francois 283 };
81    
82    
83    
84     #endif
85    
86