Line | |
---|
1 | #ifndef _TRIANGLEADJACENT_H_
|
---|
2 | #define _TRIANGLEADJACENT_H_
|
---|
3 |
|
---|
4 | #include "./include.h"
|
---|
5 | #include "./BamgVertex.h"
|
---|
6 |
|
---|
7 | namespace bamg {
|
---|
8 |
|
---|
9 | class Triangle;
|
---|
10 | class Triangle;
|
---|
11 |
|
---|
12 | class AdjacentTriangle {
|
---|
13 |
|
---|
14 | public:
|
---|
15 | Triangle* t; //pointer toward the triangle
|
---|
16 | int a; //Edge number
|
---|
17 |
|
---|
18 | //Constructors
|
---|
19 | AdjacentTriangle():a(0),t(NULL) {};
|
---|
20 | AdjacentTriangle(Triangle* tt,int aa): t(tt),a(aa &3) {};
|
---|
21 |
|
---|
22 | //Operators
|
---|
23 | operator Triangle * () const {return t;}
|
---|
24 | operator Triangle & () const {return *t;}
|
---|
25 | operator int() const {return a;}
|
---|
26 | AdjacentTriangle & operator++(){ a= NextEdge[a]; return *this; }
|
---|
27 | AdjacentTriangle operator--(){ a= PreviousEdge[a]; return *this; }
|
---|
28 |
|
---|
29 | //Methods
|
---|
30 |
|
---|
31 | //Methods
|
---|
32 | int Locked() const;
|
---|
33 | int MarkUnSwap() const;
|
---|
34 | int GetAllFlag_UnSwap() const;
|
---|
35 | void SetLock();
|
---|
36 | void SetAdj2(const AdjacentTriangle &ta, int l=0);
|
---|
37 | int swap();
|
---|
38 | AdjacentTriangle Adj() const;
|
---|
39 | BamgVertex* EdgeVertex(const int & i) const;
|
---|
40 | Icoor2& det() const;
|
---|
41 | };
|
---|
42 | }
|
---|
43 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.