ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/mtu/src/mg_triangle.h
Revision: 1158
Committed: Thu Jun 13 22:18:49 2024 UTC (11 months, 1 week ago) by francois
Content type: text/plain
File size: 3239 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_triangle.h
15     //####//
16     //####//------------------------------------------------------------
17     //####//------------------------------------------------------------
18     //####// COPYRIGHT 2000-2024
19     //####// jeu 13 jun 2024 11:58:55 EDT
20     //####//------------------------------------------------------------
21     //####//------------------------------------------------------------
22 francois 283 #ifndef _MGTRIANGLE_
23     #define _MGTRIANGLE_
24    
25    
26    
27    
28     #include "mg_element_maillage.h"
29     #include "mg_segment.h"
30     #include "mg_noeud.h"
31     #include "ot_reference.h"
32 francois 481 #include "ot_boite_2d.h"
33     #include "ot_boite_3d.h"
34 francois 283
35    
36    
37    
38 francois 1158 class MG_TRIANGLE : public MG_ELEMENT_MAILLAGE , public OT_REFERENCE
39 francois 283 {
40     public:
41     MG_TRIANGLE(unsigned long num,MG_ELEMENT_TOPOLOGIQUE* topo,class MG_NOEUD *mgnoeud1,class MG_NOEUD *mgnoeud2,class MG_NOEUD *mgnoeud3,class MG_SEGMENT* mgsegment1,class MG_SEGMENT* mgsegment2,class MG_SEGMENT* mgsegment3,int origine );
42     MG_TRIANGLE(MG_ELEMENT_TOPOLOGIQUE* topo,class MG_NOEUD *mgnoeud1,class MG_NOEUD *mgnoeud2,class MG_NOEUD *mgnoeud3,class MG_SEGMENT* mgsegment1,class MG_SEGMENT* mgsegment2,class MG_SEGMENT* mgsegment3,int origine);
43     MG_TRIANGLE(MG_TRIANGLE& mdd);
44     virtual ~MG_TRIANGLE();
45     virtual MG_TRIANGLE* dupliquer(class MG_MAILLAGE *mgmai,long decalage);
46    
47    
48     virtual int get_type_entite(void);
49    
50     virtual MG_NOEUD* get_noeud1(void);
51     virtual MG_NOEUD* get_noeud2(void);
52     virtual MG_NOEUD* get_noeud3(void);
53     virtual MG_SEGMENT* get_segment1(void);
54     virtual MG_SEGMENT* get_segment2(void);
55     virtual MG_SEGMENT* get_segment3(void);
56    
57 francois 702 virtual void inverse_sens(void);
58    
59 francois 283 virtual class BOITE_2D get_boite_2D(double periodeu,double periodev);
60     virtual class BOITE_3D get_boite_3D(void);
61     virtual int get_dimension(void);
62 francois 763 virtual void enregistrer(std::ostream& o,double version);
63 francois 283
64     virtual double get_longueur(void);
65     TPL_LISTE_ENTITE<class MG_TETRA*> *get_lien_tetra(void);
66 francois 876 TPL_LISTE_ENTITE<class MG_PENTA*> *get_lien_penta(void);
67 francois 1123 TPL_LISTE_ENTITE<class MG_PYRAMIDE*> *get_lien_pyramide(void);
68 francois 283
69     virtual void extrapoler_solution_noeud(void);
70 francois 1036 virtual void normal(double *n);
71 francois 283 protected:
72    
73     void init_triangle(void);
74     class MG_NOEUD* noeud1;
75     class MG_NOEUD* noeud2;
76     class MG_NOEUD* noeud3;
77    
78     class MG_SEGMENT* segment1;
79     class MG_SEGMENT* segment2;
80     class MG_SEGMENT* segment3;
81    
82     double longueur;
83     TPL_LISTE_ENTITE<class MG_TETRA*> tetra;
84 francois 876 TPL_LISTE_ENTITE<class MG_PENTA*> penta;
85 francois 1123 TPL_LISTE_ENTITE<class MG_PYRAMIDE*> pyramide;
86 francois 283
87     };
88    
89    
90    
91    
92    
93    
94     #endif
95    
96