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