\( \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 4.8 - CGAL and the Boost Graph Library

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
FaceGraph Concept Reference
Concepts

## Definition

The concept `FaceGraph` refines the concept `HalfedgeGraph`. It adds the requirements for a graph to explicitly maintain faces described by halfedges, to provide access from a face to an incident halfedge, and to provide access from a halfedge to its incident face.

Refines:
  `HalfedgeGraph`

Has Models:

  `CGAL::Polyhedron_3`

  `CGAL::Surface_mesh`

Notations

`G`
  A type that is a model of `FaceGraph`.
`g`
  An object of type `G`.
`e`
  An edge descriptor.
`f`
  A face descriptor.
`h`
  A halfedge descriptor.

Associated Types

Type | Description
--- | ---
`boost::graph_traits<G>::face_descriptor` | A `face_descriptor` corresponds to a unique face in a graph. Must be `DefaultConstructible`, `Assignable`, `EqualityComparable` and `LessThanComparable`.

Valid Expressions

Expression | Returns | Description
--- | --- | ---
`face(h, g)` | `face_descriptor` | The face incident to halfedge `h`.
`halfedge(f, g)` | `halfedge_descriptor` | A halfedge incident to face `f`.
`degree(f,g)` | `degree_size_type` | The number of halfedges, incident to face `f`.
`boost::graph_traits<G>::null_face()` | `face_descriptor` | Returns a special face that is not equal to any other face.