Regina Calculation Engine
Protected Member Functions | Friends | List of all members
regina::Face< dim, subdim > Class Template Reference

Represents a subdim-face in the skeleton of a dim-dimensional triangulation. More...

#include <triangulation/generic.h>

Protected Member Functions

 Face (Component< dim > *component)
 Creates a new face. More...
 

Friends

class Triangulation< dim >
 
class detail::TriangulationBase< dim >
 

Detailed Description

template<int dim, int subdim>
class regina::Face< dim, subdim >

Represents a subdim-face in the skeleton of a dim-dimensional triangulation.

There are two substantially different cases:

For small-dimensional faces, this class is typically described using dimension-specific type aliases: Vertex<dim>, Edge<dim>, Triangle<dim>, Tetrahedron<dim> and Pentachoron<dim> refer to the cases subdim = 0, 1, 2, 3 and 4 respectively.

A given subdim-face F of the triangulation may appear many times within the various top-dimensional simplices of the underlying triangulation. As an extreme example, in a 1-vertex triangulation of a 3-manifold, the single vertex makes 4n such appearances, where n is the total number of tetrahedra.

Each such appearance is described by a single FaceEmbedding object. You can iterate through these appearances using begin() and end(), or using a C++11 range-based for loop:

for (auto& emb : face) { ... }

You can count these appearances by calling degree(), and you can also examine them using routines such as front(), back() and embedding().

Warning
Face objects are highly temporary: whenever a triangulation changes, all its face objects will be deleted and new ones will be created in their place.

For some types of faces in dimensions dim = 3 and 4, this template is specialised to offer additional functionality. In order to use these specialised classes, you will need to include the corresponding triangulation headers (triangulation/dim3.h or triangulation/dim4.h respectively).

Python:\n Python does not support templates. Instead
this class can be used by appending dimensions dim and subdim as suffices (e.g., Face2_1 and Face3_0 for the two examples above).
Template Parameters
dimthe dimension of the underlying triangulation. This must be between 2 and 15 inclusive.
subdimthe dimension of the faces that this class represents. This must be between 0 and dim inclusive.

The documentation for this class was generated from the following files:

Copyright © 1999-2018, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@maths.uq.edu.au).