CGAL 5.0 - Halfedge Data Structures
|
The concept HalfedgeDSItems
wraps the three item types - vertex, halfedge, and face - for a halfedge data structure. A HalfedgeDSItems
contains three member class templates named Vertex_wrapper
, Halfedge_wrapper
, and Face_wrapper
, each with two template parameters, Refs
and Traits
. Refs
requires an instantiated halfedge data structure HalfedgeDS
as argument, Traits
is a geometric traits class supplied by the class that uses the halfedge data structure as internal representation. Traits
is not used by the halfedge data structure itself. These three member class templates provide a local type named Vertex
, Halfedge
, and Face
respectively. The requirements on these types are described on the manual pages of the concepts HalfedgeDSVertex
, HalfedgeDSHalfedge
, and HalfedgeDSFace
respectively.
HalfedgeDS<Traits,Items,Alloc>
HalfedgeDSVertex
HalfedgeDSHalfedge
HalfedgeDSFace
PolyhedronItems_3
CGAL::HalfedgeDS_vertex_base<Refs>
CGAL::HalfedgeDS_halfedge_base<Refs>
CGAL::HalfedgeDS_face_base<Refs>
Example
The following example shows the canonical implementation of the CGAL::HalfedgeDS_min_items
class. It uses the base classes for the item types that are provided in the library.
See CGAL::HalfedgeDS_items_2
for an example implementation.
Types | |
typedef Vertex_wrapper< Refs, Traits >::Vertex | Vertex |
model of HalfedgeDSVertex . | |
typedef Halfedge_wrapper< Refs, Traits >::Halfedge | Halfedge |
model of HalfedgeDSHalfedge . | |
typedef Face_wrapper< Refs, Traits >::Face | Face |
model of HalfedgeDSFace . | |