ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/CAD4FE/src/CAD4FE_OptimizeEdgeSwap.h
Revision: 253
Committed: Tue Jul 13 19:40:46 2010 UTC (14 years, 10 months ago) by francois
Content type: text/plain
File size: 1324 byte(s)
Log Message:
changement de hiearchie et utilisation de ccmake + mise a jour

File Contents

# User Rev Content
1 foucault 27 //---------------------------------------------------------------------------
2    
3     #ifndef CAD4FE_OptimizeEdgeSwapH
4     #define CAD4FE_OptimizeEdgeSwapH
5     //---------------------------------------------------------------------------
6    
7     class MG_MAILLAGE;
8     class MG_FACE;
9     class MG_TRIANGLE;
10     class MG_SEGMENT;
11     class MG_NOEUD;
12    
13     namespace CAD4FE {
14    
15     class OptimizeEdgeSwap {
16     public:
17     OptimizeEdgeSwap(MG_MAILLAGE*);
18     double GetTriangleHeight(MG_TRIANGLE*,MG_SEGMENT*);
19     MG_SEGMENT* GetSegmentAfter(MG_TRIANGLE*,MG_SEGMENT*);
20     MG_SEGMENT* GetSegmentBefore(MG_TRIANGLE*,MG_SEGMENT*);
21     double GetTargetSize(MG_TRIANGLE*);
22     double GetArea(MG_TRIANGLE*);
23     MG_NOEUD * GetStartNode(MG_TRIANGLE *__t, MG_SEGMENT *__s);
24     MG_NOEUD * GetOppositeNode(MG_TRIANGLE *__t, MG_SEGMENT *__s);
25     double Swap(MG_SEGMENT*,bool);
26     double SwapScore(MG_SEGMENT *__segment);
27     double SwapSegment(MG_SEGMENT *__segment);
28     MG_NOEUD * GetNodeBefore(MG_TRIANGLE *__t, MG_NOEUD *__n);
29     MG_NOEUD * GetNodeAfter(MG_TRIANGLE *__t, MG_NOEUD *__n);
30     int OptimizeAllFaces();
31     int Optimize(MG_FACE * __face);
32     void RemoveVolumeMesh();
33     double maxDiedralAngle;
34     int CheckOverlapTriangle(MG_NOEUD * __tri[2][3]);
35     protected:
36     MG_MAILLAGE * _mesh;
37     MG_FACE * _face;
38     };
39    
40     }
41    
42     #endif
43