ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/CAD4FE/src/CAD4FE_OptimizeEdgeSwap.h
Revision: 1158
Committed: Thu Jun 13 22:18:49 2024 UTC (11 months ago) by francois
Content type: text/plain
File size: 2252 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     //####// CAD4FE_OptimizeEdgeSwap.h
15     //####//
16     //####//------------------------------------------------------------
17     //####//------------------------------------------------------------
18     //####// COPYRIGHT 2000-2024
19     //####// jeu 13 jun 2024 11:58:56 EDT
20     //####//------------------------------------------------------------
21     //####//------------------------------------------------------------
22 foucault 27
23     #ifndef CAD4FE_OptimizeEdgeSwapH
24     #define CAD4FE_OptimizeEdgeSwapH
25    
26     class MG_MAILLAGE;
27     class MG_FACE;
28     class MG_TRIANGLE;
29     class MG_SEGMENT;
30     class MG_NOEUD;
31    
32     namespace CAD4FE {
33    
34     class OptimizeEdgeSwap {
35     public:
36     OptimizeEdgeSwap(MG_MAILLAGE*);
37     double GetTriangleHeight(MG_TRIANGLE*,MG_SEGMENT*);
38     MG_SEGMENT* GetSegmentAfter(MG_TRIANGLE*,MG_SEGMENT*);
39     MG_SEGMENT* GetSegmentBefore(MG_TRIANGLE*,MG_SEGMENT*);
40     double GetTargetSize(MG_TRIANGLE*);
41     double GetArea(MG_TRIANGLE*);
42     MG_NOEUD * GetStartNode(MG_TRIANGLE *__t, MG_SEGMENT *__s);
43     MG_NOEUD * GetOppositeNode(MG_TRIANGLE *__t, MG_SEGMENT *__s);
44     double Swap(MG_SEGMENT*,bool);
45     double SwapScore(MG_SEGMENT *__segment);
46     double SwapSegment(MG_SEGMENT *__segment);
47     MG_NOEUD * GetNodeBefore(MG_TRIANGLE *__t, MG_NOEUD *__n);
48     MG_NOEUD * GetNodeAfter(MG_TRIANGLE *__t, MG_NOEUD *__n);
49     int OptimizeAllFaces();
50     int Optimize(MG_FACE * __face);
51     void RemoveVolumeMesh();
52     double maxDiedralAngle;
53     int CheckOverlapTriangle(MG_NOEUD * __tri[2][3]);
54     protected:
55     MG_MAILLAGE * _mesh;
56     MG_FACE * _face;
57     };
58    
59     }
60    
61     #endif
62