ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/mg_noeud.h
Revision: 763
Committed: Wed Dec 2 19:55:53 2015 UTC (9 years, 5 months ago) by francois
Content type: text/plain
File size: 3937 byte(s)
Log Message:
Le fichier MAGiC est maintenant versionné. LA version actuelle est 2.0. L'ancienne version est 1.0.
Tout est transparent pour l'utilisateur. Les vieilles versions sont lisibles mais les nouveaux enregistrements sont dans la version la plus récente.
Changement des conditions aux limites : ajout d'un parametre pour dire si la condition numerique est une valeur ou une formule ou un lien vers une autre entité magic.
Les parametres pour saisir sont maintenant -ccf -ccfi -ccff -ccft -ccfit -ccfft

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