Navigation: Up, Table of Contents, Bibliography, Index, Title Page

Concept HalfedgeDSVertex

Definition

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  reference arrow 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.)

Types

HalfedgeDSVertex::HalfedgeDS
instantiated HalfedgeDS ( Refs).

HalfedgeDSVertex::Base
base class that allows modifications.

HalfedgeDSVertex::Halfedge
model of HalfedgeDSHalfedge.

HalfedgeDSVertex::Face
model of HalfedgeDSFace.

HalfedgeDSVertex::Vertex_handle
handle to vertex.

HalfedgeDSVertex::Halfedge_handle
handle to halfedge.

HalfedgeDSVertex::Face_handle
handle to face.

HalfedgeDSVertex::Vertex_const_handle
HalfedgeDSVertex::Halfedge_const_handle
HalfedgeDSVertex::Face_const_handle
HalfedgeDSVertex::Supports_vertex_halfedge
CGAL::Tag_true or CGAL::Tag_false.

Creation

HalfedgeDSVertex v;
default constructor.

Operations available if Supports_vertex_halfedge CGAL::Tag_true

Halfedge_handle v.halfedge ()
Halfedge_const_handle
v.halfedge () const
incident halfedge that points to v.
void v.set_halfedge ( Halfedge_handle h)
sets incident halfedge to h.

Has Models

CGAL::HalfedgeDS_vertex_base<Refs>
CGAL::HalfedgeDS_vertex_min_base<Refs>

See Also

HalfedgeDS<Traits,Items,Alloc>
HalfedgeDSItems
HalfedgeDSHalfedge
HalfedgeDSFace


Next: HalfedgeDS_const_decorator<HDS>
Navigation: Up, Table of Contents, Bibliography, Index, Title Page
www.cgal.org. Aug 13, 2001.