|
CGAL 6.1 - Halfedge Data Structures
|
The concept HalfedgeDSVertex defines the requirements for the local Vertex type in the HalfedgeDS concept. It is also required in the Vertex_wrapper<Refs,Traits> member class template of an items class, see the HalfedgeDSItems concept.
A vertex optionally stores a reference to an incident halfedge that points to the vertex. A type tag indicates whether the related member functions are supported. Figure figureHalfedgeDSOptionalMethods depicts the relationship between a halfedge and its incident halfedges, vertices, and faces.
For the protection of the integrity of the data structure classes such as CGAL::Polyhedron_3 are allowed to redefine the modifying member functions to be private. In order to make them accessible for the halfedge data structure they must be derived from a base class Base where the modifying member functions are still public. (The protection could be bypassed by an user, but not by accident.)
CGAL::HalfedgeDS_vertex_base<Refs> CGAL::HalfedgeDS_vertex_min_base<Refs> HalfedgeDS<Traits,Items,Alloc> HalfedgeDSItems HalfedgeDSHalfedge HalfedgeDSFace Types | |
| typedef unspecified_type | HalfedgeDS |
instantiated HalfedgeDS ( \( \equiv\) Refs). | |
| typedef unspecified_type | Base |
| base class that allows modifications. | |
| typedef unspecified_type | Halfedge |
model of HalfedgeDSHalfedge. | |
| typedef unspecified_type | Face |
model of HalfedgeDSFace. | |
| typedef unspecified_type | Vertex_handle |
| handle to vertex. | |
| typedef unspecified_type | Halfedge_handle |
| handle to halfedge. | |
| typedef unspecified_type | Face_handle |
| handle to face. | |
| typedef unspecified_type | Vertex_const_handle |
| typedef unspecified_type | Halfedge_const_handle |
| typedef unspecified_type | Face_const_handle |
| typedef unspecified_type | Supports_vertex_halfedge |
CGAL::Tag_true or CGAL::Tag_false. | |
Creation | |
| Vertex () | |
| default constructor. | |
Operations available if Supports_vertex_halfedge == CGAL::Tag_true | |
| Halfedge_handle | halfedge () |
| Halfedge_const_handle | halfedge () const |
| incident halfedge that points to the vertex. | |
| void | set_halfedge (Halfedge_handle h) |
sets incident halfedge to h. | |