\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 5.0 - CGAL and the Boost Graph Library
HalfedgeListGraph Concept Reference

Definition

The concept HalfedgeListGraph refines the concept HalfedgeGraph and adds the requirements for traversal of all halfedges in the graph.

Associated Types
boost::graph_traits<HalfedgeListGraph>::halfedge_iterator

A halfedge iterator (obtained via halfedges(g)) provides access to all of the halfedges in a graph. A halfedge iterator type must meet the requirements of MultiPassInputIterator. The value type of the halfedge iterator must be the same as the halfedge descriptor of the graph.

Refines:
HalfedgeGraph
Has Models:
See Boost Graph Traits Specializations
See also
Graph Concepts

Related Functions

(Note that these are not member functions.)

template<typename HalfedgeListGraph >
std::pair< boost::graph_traits< HalfedgeListGraph >::halfedge_iterator, boost::graph_traits< HalfedgeListGraph >::halfedge_iterator > halfedges (const HalfedgeListGraph &g)
 
template<typename HalfedgeListGraph >
boost::graph_traits< HalfedgeListGraph >::halfedge_size_type num_halfedges (const HalfedgeListGraph &g)
 

Friends And Related Function Documentation

◆ halfedges()

template<typename HalfedgeListGraph >
std::pair< boost::graph_traits< HalfedgeListGraph >::halfedge_iterator, boost::graph_traits< HalfedgeListGraph >::halfedge_iterator > halfedges ( const HalfedgeListGraph g)
related

returns an iterator range over all halfedges.

Examples:
BGL_surface_mesh/seam_mesh.cpp, and Property_map/dynamic_properties.cpp.

◆ num_halfedges()

template<typename HalfedgeListGraph >
boost::graph_traits< HalfedgeListGraph >::halfedge_size_type num_halfedges ( const HalfedgeListGraph g)
related

returns an upper bound of the number of halfedges of the graph.

Attention
num_halfedges() may return a number larger than std::distance(halfedges(g).first, halfedges(g).second). This is the case for implementations only marking halfedges deleted in the halfedge container.
Examples:
BGL_surface_mesh/seam_mesh.cpp.