#include <pos.h>
Public Types | |
typedef Pos< EDGETYPE > | POSTYPE |
typedef EDGETYPE::VertexType | VertexType |
Public Member Functions | |
EDGETYPE *& | E () |
void | FlipE () |
Changes edge maintaining the vertex. | |
void | FlipV () |
Changes vertex maintaining the edge. | |
bool | IsBorder () |
Checks if the half-edge is of border. | |
bool | IsManifold () |
bool | IsNull () const |
Check if the half-edge is null. | |
void | NextE () |
It advances the current Pos along the edge chain. | |
bool | operator!= (POSTYPE const &p) const |
Operator to compare two edge pos. | |
bool | operator<= (POSTYPE const &p) const |
Operator to order half-edge; it's compare at the first the face pointers, then the index of the edge and finally the vertex pointers. | |
POSTYPE & | operator= (const POSTYPE &h) |
Assignment operator. | |
bool | operator== (POSTYPE const &p) const |
Operator to compare two edge pos. | |
Pos () | |
Default constructor. | |
Pos (EDGETYPE *ep, int zp) | |
Constructor which associates the half-edge elementet with a face, its edge and its vertex. | |
Pos (EDGETYPE *ep, VertexType *vp) | |
void | Set (EDGETYPE *const ep, VertexType *const vp) |
void | SetNull () |
Set to null the half-edge. | |
VertexType *& | V () |
VertexType * | VFlip () |
int | VInd () |
Public Attributes | |
EDGETYPE * | e |
Pointer to the edge. | |
VertexType * | v |
Pointer to the vertex. |
Class Pos. This structure is equivalent to a half-edge.
MFTYPE | (Template-Parameter) Specifies the type of the edges |
Definition at line 89 of file vcg/simplex/edge/pos.h.
typedef Pos< EDGETYPE> vcg::edge::Pos< EDGETYPE >::POSTYPE |
Definition at line 94 of file vcg/simplex/edge/pos.h.
typedef EDGETYPE::VertexType vcg::edge::Pos< EDGETYPE >::VertexType |
Definition at line 93 of file vcg/simplex/edge/pos.h.
vcg::edge::Pos< EDGETYPE >::Pos | ( | ) | [inline] |
Default constructor.
Definition at line 102 of file vcg/simplex/edge/pos.h.
vcg::edge::Pos< EDGETYPE >::Pos | ( | EDGETYPE * | ep, |
int | zp | ||
) | [inline] |
Constructor which associates the half-edge elementet with a face, its edge and its vertex.
Definition at line 104 of file vcg/simplex/edge/pos.h.
vcg::edge::Pos< EDGETYPE >::Pos | ( | EDGETYPE * | ep, |
VertexType * | vp | ||
) | [inline] |
Definition at line 105 of file vcg/simplex/edge/pos.h.
EDGETYPE*& vcg::edge::Pos< EDGETYPE >::E | ( | ) | [inline] |
Definition at line 110 of file vcg/simplex/edge/pos.h.
void vcg::edge::Pos< EDGETYPE >::FlipE | ( | ) | [inline] |
Changes edge maintaining the vertex.
Definition at line 172 of file vcg/simplex/edge/pos.h.
void vcg::edge::Pos< EDGETYPE >::FlipV | ( | ) | [inline] |
Changes vertex maintaining the edge.
Definition at line 167 of file vcg/simplex/edge/pos.h.
bool vcg::edge::Pos< EDGETYPE >::IsBorder | ( | ) | [inline] |
Checks if the half-edge is of border.
Definition at line 197 of file vcg/simplex/edge/pos.h.
bool vcg::edge::Pos< EDGETYPE >::IsManifold | ( | ) | [inline] |
Definition at line 202 of file vcg/simplex/edge/pos.h.
bool vcg::edge::Pos< EDGETYPE >::IsNull | ( | ) | const [inline] |
Check if the half-edge is null.
Definition at line 142 of file vcg/simplex/edge/pos.h.
void vcg::edge::Pos< EDGETYPE >::NextE | ( | ) | [inline] |
It advances the current Pos along the edge chain.
Note that a Pos implicitly encode an ordering in the chain: the one denoted by the classical arrow shaped icon of a pos. In other words
o---------o | / |/
Meaningful only for 1-manifold edge chain.
Definition at line 160 of file vcg/simplex/edge/pos.h.
bool vcg::edge::Pos< EDGETYPE >::operator!= | ( | POSTYPE const & | p | ) | const [inline] |
Operator to compare two edge pos.
Definition at line 121 of file vcg/simplex/edge/pos.h.
bool vcg::edge::Pos< EDGETYPE >::operator<= | ( | POSTYPE const & | p | ) | const [inline] |
Operator to order half-edge; it's compare at the first the face pointers, then the index of the edge and finally the vertex pointers.
Definition at line 125 of file vcg/simplex/edge/pos.h.
POSTYPE& vcg::edge::Pos< EDGETYPE >::operator= | ( | const POSTYPE & | h | ) | [inline] |
Assignment operator.
Definition at line 131 of file vcg/simplex/edge/pos.h.
bool vcg::edge::Pos< EDGETYPE >::operator== | ( | POSTYPE const & | p | ) | const [inline] |
Operator to compare two edge pos.
Definition at line 116 of file vcg/simplex/edge/pos.h.
void vcg::edge::Pos< EDGETYPE >::Set | ( | EDGETYPE *const | ep, |
VertexType *const | vp | ||
) | [inline] |
Function to inizialize an half-edge.
fp | Puntatore alla faccia |
zp | Indice dell'edge |
vp | Puntatore al vertice |
Definition at line 213 of file vcg/simplex/edge/pos.h.
void vcg::edge::Pos< EDGETYPE >::SetNull | ( | ) | [inline] |
Set to null the half-edge.
Definition at line 137 of file vcg/simplex/edge/pos.h.
VertexType*& vcg::edge::Pos< EDGETYPE >::V | ( | ) | [inline] |
Definition at line 109 of file vcg/simplex/edge/pos.h.
VertexType* vcg::edge::Pos< EDGETYPE >::VFlip | ( | ) | [inline] |
Definition at line 178 of file vcg/simplex/edge/pos.h.
int vcg::edge::Pos< EDGETYPE >::VInd | ( | ) | [inline] |
Definition at line 111 of file vcg/simplex/edge/pos.h.
EDGETYPE* vcg::edge::Pos< EDGETYPE >::e |
Pointer to the edge.
Definition at line 97 of file vcg/simplex/edge/pos.h.
VertexType* vcg::edge::Pos< EDGETYPE >::v |
Pointer to the vertex.
Definition at line 99 of file vcg/simplex/edge/pos.h.