ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/mtu/src/mg_noeud.h
Revision: 1158
Committed: Thu Jun 13 22:18:49 2024 UTC (11 months, 4 weeks ago) by francois
Content type: text/plain
File size: 4301 byte(s)
Log Message:
compatibilité Ubuntu 22.04
Suppression des refeences à Windows
Ajout d'une banière

File Contents

# User Rev Content
1 francois 1158 //####//------------------------------------------------------------
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_noeud.h
15     //####//
16     //####//------------------------------------------------------------
17     //####//------------------------------------------------------------
18     //####// COPYRIGHT 2000-2024
19     //####// jeu 13 jun 2024 11:58:53 EDT
20     //####//------------------------------------------------------------
21     //####//------------------------------------------------------------
22 francois 283 #ifndef _MGNOEUD_
23     #define _MGNOEUD_
24    
25    
26 francois 1158
27 francois 283 #include "mg_element_maillage.h"
28     #include "mg_segment.h"
29     #include "mg_triangle.h"
30 francois 308 #include "mg_quadrangle.h"
31 francois 283 #include "mg_tetra.h"
32 francois 308 #include "mg_hexa.h"
33 francois 283 #include "tpl_liste_entite.h"
34     #include "ot_reference.h"
35 gervaislavoie 332 #include "ot_mathematique.h"
36 francois 283
37    
38    
39    
40    
41 francois 1158 class MG_NOEUD : public MG_ELEMENT_MAILLAGE, public OT_REFERENCE
42 francois 283 {
43     public:
44     MG_NOEUD(unsigned long num,MG_ELEMENT_TOPOLOGIQUE* topo,double xx,double yy,double zz,int origine);
45     MG_NOEUD(MG_ELEMENT_TOPOLOGIQUE* topo,double xx,double yy,double zz,int origine);
46     MG_NOEUD(MG_NOEUD& mdd);
47     virtual MG_NOEUD* dupliquer(class MG_MAILLAGE *mgmai,long decalage);
48     virtual ~MG_NOEUD();
49    
50    
51     virtual int get_type_entite();
52    
53    
54     virtual double get_x(void);
55     virtual double get_y(void);
56     virtual double get_z(void);
57     virtual double* get_coord(void);
58    
59     virtual void change_x(double xx);
60     virtual void change_y(double yy);
61     virtual void change_z(double zz);
62     virtual void change_coord(double *coo);
63     virtual int get_dimension(void);
64    
65 francois 763 virtual void enregistrer(std::ostream& o,double version);
66 francois 283
67     virtual class BOITE_2D get_boite_2D(double periodeu,double periodev);
68     virtual class BOITE_3D get_boite_3D(void);
69    
70     virtual void change_u(double uu);
71     virtual void change_v(double vv);
72     virtual double get_u(void);
73     virtual double get_v(void);
74    
75    
76     TPL_LISTE_ENTITE<class MG_SEGMENT*> *get_lien_segment(void);
77     TPL_LISTE_ENTITE<class MG_SEGMENT*> *get_lien_petit_segment(void);
78    
79     TPL_LISTE_ENTITE<class MG_TRIANGLE*> *get_lien_triangle(void);
80     TPL_LISTE_ENTITE<class MG_TRIANGLE*> *get_lien_petit_triangle(void);
81 francois 308
82    
83     TPL_LISTE_ENTITE<class MG_QUADRANGLE*> *get_lien_quadrangle(void);
84     TPL_LISTE_ENTITE<class MG_QUADRANGLE*> *get_lien_petit_quadrangle(void);
85 francois 283
86     TPL_LISTE_ENTITE<class MG_TETRA*> *get_lien_tetra(void);
87     TPL_LISTE_ENTITE<class MG_TETRA*> *get_lien_petit_tetra(void);
88 francois 308
89    
90     TPL_LISTE_ENTITE<class MG_HEXA*> *get_lien_hexa(void);
91     TPL_LISTE_ENTITE<class MG_HEXA*> *get_lien_petit_hexa(void);
92 francois 876
93     TPL_LISTE_ENTITE<class MG_PENTA*> *get_lien_penta(void);
94     TPL_LISTE_ENTITE<class MG_PENTA*> *get_lien_petit_penta(void);
95 francois 1123
96     TPL_LISTE_ENTITE<class MG_PYRAMIDE*> *get_lien_pyramide(void);
97     TPL_LISTE_ENTITE<class MG_PYRAMIDE*> *get_lien_petit_pyramide(void);
98 francois 283
99 francois 1142 bool operator== (const MG_NOEUD& mdd) const;
100    
101 francois 283
102     protected:
103 francois 1142
104 francois 283 double xyz[3];
105    
106     double u;
107     double v;
108    
109     TPL_LISTE_ENTITE<class MG_SEGMENT*> segment;
110     TPL_LISTE_ENTITE<class MG_SEGMENT*> petit_segment;
111    
112     TPL_LISTE_ENTITE<class MG_TRIANGLE*> triangle;
113     TPL_LISTE_ENTITE<class MG_TRIANGLE*> petit_triangle;
114 francois 308
115     TPL_LISTE_ENTITE<class MG_QUADRANGLE*> quadrangle;
116     TPL_LISTE_ENTITE<class MG_QUADRANGLE*> petit_quadrangle;
117 francois 283
118     TPL_LISTE_ENTITE<class MG_TETRA*> tetra;
119     TPL_LISTE_ENTITE<class MG_TETRA*> petit_tetra;
120 francois 308
121     TPL_LISTE_ENTITE<class MG_HEXA*> hexa;
122     TPL_LISTE_ENTITE<class MG_HEXA*> petit_hexa;
123 francois 876
124     TPL_LISTE_ENTITE<class MG_PENTA*> penta;
125     TPL_LISTE_ENTITE<class MG_PENTA*> petit_penta;
126 francois 1123
127     TPL_LISTE_ENTITE<class MG_PYRAMIDE*> pyramide;
128     TPL_LISTE_ENTITE<class MG_PYRAMIDE*> petit_pyramide;
129 francois 283
130    
131    
132     };
133    
134    
135    
136    
137    
138    
139     #endif
140    
141