a48
2.0.2
|
Base type for a halfedge. More...
#include <halfedget.hh>
Public Types | |
typedef Traits::vertex_type | vertex_type |
vertex definition | |
typedef Traits::halfedge_type | halfedge_type |
halfedge definition | |
typedef Traits::face_type | face_type |
face definition | |
typedef std::pair< const vertex_type *, const vertex_type * > | edge_type |
edge definition | |
Public Member Functions | |
HalfedgeT () | |
Default Constructor. | |
HalfedgeT (vertex_type *_v, halfedge_type *_n=0, halfedge_type *_o=0, face_type *_f=0) | |
bool | is_boundary (void) const |
Verifies if this halfedge belongs to the mesh boundary. | |
bool | is_consistent (void) const |
Verifies if this halfedge and its opposite is going in opposed directions. | |
const vertex_type * | from_vertex (void) const |
vertex_type * | from_vertex (void) |
Gets vertex where this halfedge comes from. | |
const vertex_type * | vertex (void) const |
vertex_type * | vertex (void) |
Gets incident vertex of this halfedge. | |
const halfedge_type * | next (void) const |
halfedge_type * | next (void) |
Gets next halfedge of this halfedge. | |
const halfedge_type * | previous (void) const |
halfedge_type * | previous (void) |
Gets previous halfedge of this halfedge. | |
const halfedge_type * | opposite (void) const |
halfedge_type * | opposite (void) |
Gets opposite halfedge of this halfedge. | |
const face_type * | face (void) const |
face_type * | face (void) |
Gets incident face of this halfedge. | |
unsigned int | adjacent_faces (void) const |
Gets the number of adjacent faces to this halfedge. | |
edge_type | edge (void) const |
void | edge (edge_type &e) const |
Gets the edge of this halfedge. | |
bool | is_flip_ok (void) const |
Verifies if this halfedge can be flipped. | |
void | set_vertex (vertex_type *_v) |
Sets incident vertex of this halfedge. | |
void | set_next (halfedge_type *_n) |
Sets next halfedge of this halfedge. | |
void | set_opposite (halfedge_type *_o) |
Sets opposite halfedge of this halfedge. | |
void | set_face (face_type *_f) |
Sets incident face of this halfedge. | |
void | set (vertex_type *_v, halfedge_type *_n, halfedge_type *_o) |
void | set (vertex_type *_v, halfedge_type *_n, face_type *_f) |
void | set (vertex_type *_v, halfedge_type *_n) |
void | set (halfedge_type *_n, face_type *_f) |
void | set (halfedge_type *_n, face_type *_f, halfedge_type *_o) |
void | set (face_type *_f, halfedge_type *_o) |
void | set (vertex_type *_v, halfedge_type *_n, halfedge_type *_o, face_type *_f) |
Sets halfedge information. | |
Related Functions | |
(Note that these are not member functions.) | |
template<class halfedge_type > | |
void | flip_orientation (halfedge_type *h) |
Flip halfedge orientation. |
Base type for a halfedge.
Traits | Template argument to access mesh-base definitions |
Definition at line 27 of file halfedget.hh.
typedef Traits::vertex_type a48::HalfedgeT< Traits >::vertex_type |
vertex definition
Reimplemented in a48::AdaptiveHalfedgeT< Traits >.
Definition at line 31 of file halfedget.hh.
typedef Traits::halfedge_type a48::HalfedgeT< Traits >::halfedge_type |
halfedge definition
Reimplemented in a48::AdaptiveHalfedgeT< Traits >.
Definition at line 32 of file halfedget.hh.
typedef Traits::face_type a48::HalfedgeT< Traits >::face_type |
face definition
Reimplemented in a48::AdaptiveHalfedgeT< Traits >.
Definition at line 33 of file halfedget.hh.
typedef std::pair< const vertex_type*, const vertex_type* > a48::HalfedgeT< Traits >::edge_type |
edge definition
Definition at line 35 of file halfedget.hh.
a48::HalfedgeT< Traits >::HalfedgeT | ( | ) | [inline] |
Default Constructor.
Definition at line 38 of file halfedget.hh.
a48::HalfedgeT< Traits >::HalfedgeT | ( | vertex_type * | _v, |
halfedge_type * | _n = 0 , |
||
halfedge_type * | _o = 0 , |
||
face_type * | _f = 0 |
||
) | [inline] |
Constructor
[in] | _v | Vertex this halfedge will point to |
[in] | _n | Next halfedge this halfedge will point to |
[in] | _o | Opposite halfedge this halfedge will point to |
[in] | _f | Face this halfedge will point to |
Definition at line 46 of file halfedget.hh.
bool a48::HalfedgeT< Traits >::is_boundary | ( | void | ) | const [inline] |
Verifies if this halfedge belongs to the mesh boundary.
Definition at line 54 of file halfedget.hh.
bool a48::HalfedgeT< Traits >::is_consistent | ( | void | ) | const [inline] |
Verifies if this halfedge and its opposite is going in opposed directions.
Definition at line 59 of file halfedget.hh.
const vertex_type * a48::HalfedgeT< Traits >::from_vertex | ( | void | ) | const [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 67 of file halfedget.hh.
References a48::HalfedgeT< Traits >::previous().
vertex_type* a48::HalfedgeT< Traits >::from_vertex | ( | void | ) | [inline] |
Gets vertex where this halfedge comes from.
Definition at line 71 of file halfedget.hh.
References a48::HalfedgeT< Traits >::previous().
const vertex_type * a48::HalfedgeT< Traits >::vertex | ( | void | ) | const [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 76 of file halfedget.hh.
vertex_type* a48::HalfedgeT< Traits >::vertex | ( | void | ) | [inline] |
Gets incident vertex of this halfedge.
Definition at line 80 of file halfedget.hh.
const halfedge_type * a48::HalfedgeT< Traits >::next | ( | void | ) | const [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 85 of file halfedget.hh.
halfedge_type* a48::HalfedgeT< Traits >::next | ( | void | ) | [inline] |
Gets next halfedge of this halfedge.
Definition at line 89 of file halfedget.hh.
const halfedge_type * a48::HalfedgeT< Traits >::previous | ( | void | ) | const [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 94 of file halfedget.hh.
halfedge_type* a48::HalfedgeT< Traits >::previous | ( | void | ) | [inline] |
Gets previous halfedge of this halfedge.
Definition at line 102 of file halfedget.hh.
const halfedge_type * a48::HalfedgeT< Traits >::opposite | ( | void | ) | const [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 111 of file halfedget.hh.
halfedge_type* a48::HalfedgeT< Traits >::opposite | ( | void | ) | [inline] |
Gets opposite halfedge of this halfedge.
Definition at line 115 of file halfedget.hh.
const face_type * a48::HalfedgeT< Traits >::face | ( | void | ) | const [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 120 of file halfedget.hh.
face_type* a48::HalfedgeT< Traits >::face | ( | void | ) | [inline] |
Gets incident face of this halfedge.
Definition at line 124 of file halfedget.hh.
unsigned int a48::HalfedgeT< Traits >::adjacent_faces | ( | void | ) | const [inline] |
Gets the number of adjacent faces to this halfedge.
Definition at line 129 of file halfedget.hh.
References a48::HalfedgeT< Traits >::is_boundary().
edge_type a48::HalfedgeT< Traits >::edge | ( | void | ) | const [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 134 of file halfedget.hh.
void a48::HalfedgeT< Traits >::edge | ( | edge_type & | e | ) | const [inline] |
Gets the edge of this halfedge.
An edge is a pair of vertex pointers (from lower to higher pointer value).
[out] | e | Edge to be returned |
Definition at line 146 of file halfedget.hh.
References a48::HalfedgeT< Traits >::from_vertex(), and a48::HalfedgeT< Traits >::vertex().
bool a48::HalfedgeT< Traits >::is_flip_ok | ( | void | ) | const [inline] |
Verifies if this halfedge can be flipped.
Definition at line 156 of file halfedget.hh.
References a48::HalfedgeT< Traits >::from_vertex(), and a48::HalfedgeT< Traits >::vertex().
void a48::HalfedgeT< Traits >::set_vertex | ( | vertex_type * | _v | ) | [inline] |
Sets incident vertex of this halfedge.
[in] | _v | Vertex pointer |
Definition at line 170 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set_next | ( | halfedge_type * | _n | ) | [inline] |
Sets next halfedge of this halfedge.
[in] | _n | Halfedge pointer |
Definition at line 175 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set_opposite | ( | halfedge_type * | _o | ) | [inline] |
Sets opposite halfedge of this halfedge.
[in] | _o | Halfedge pointer |
Definition at line 180 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set_face | ( | face_type * | _f | ) | [inline] |
Sets incident face of this halfedge.
[in] | _f | Face pointer |
Definition at line 185 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set | ( | vertex_type * | _v, |
halfedge_type * | _n, | ||
halfedge_type * | _o | ||
) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | _v | Vertex this halfedge will point to |
[in] | _n | Next halfedge this halfedge will point to |
[in] | _o | Opposite halfedge this halfedge will point to |
Definition at line 192 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set | ( | vertex_type * | _v, |
halfedge_type * | _n, | ||
face_type * | _f | ||
) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | _v | Vertex this halfedge will point to |
[in] | _n | Next halfedge this halfedge will point to |
[in] | _f | Face this halfedge will point to |
Definition at line 198 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set | ( | vertex_type * | _v, |
halfedge_type * | _n | ||
) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | _v | Vertex this halfedge will point to |
[in] | _n | Next halfedge this halfedge will point to |
Definition at line 203 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set | ( | halfedge_type * | _n, |
face_type * | _f | ||
) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | _n | Next halfedge this halfedge will point to |
[in] | _f | Face this halfedge will point to |
Definition at line 208 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set | ( | halfedge_type * | _n, |
face_type * | _f, | ||
halfedge_type * | _o | ||
) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | _n | Next halfedge this halfedge will point to |
[in] | _f | Face this halfedge will point to |
[in] | _o | Opposite halfedge this halfedge will point to |
Definition at line 214 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set | ( | face_type * | _f, |
halfedge_type * | _o | ||
) | [inline] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | _f | Face this halfedge will point to |
[in] | _o | Opposite halfedge this halfedge will point to |
Definition at line 219 of file halfedget.hh.
void a48::HalfedgeT< Traits >::set | ( | vertex_type * | _v, |
halfedge_type * | _n, | ||
halfedge_type * | _o, | ||
face_type * | _f | ||
) | [inline] |
Sets halfedge information.
[in] | _v | Vertex this halfedge will point to |
[in] | _n | Next halfedge this halfedge will point to |
[in] | _o | Opposite halfedge this halfedge will point to |
[in] | _f | Face this halfedge will point to |
Definition at line 226 of file halfedget.hh.
void flip_orientation | ( | halfedge_type * | h | ) | [related] |
Flip halfedge orientation.
[in,out] | h | Halfedge to be flipped (first and all the next) |
halfedge_type | Base halfedge class must be derived from |