|
Regina Calculation Engine
|
Represents the dual graph of a 3-manifold triangulation. More...
#include <triangulation/facetpairing3.h>
Public Types | |
| typedef std::list< Isomorphism< dim > * > | IsoList |
| A list of isomorphisms on facet pairings. More... | |
| typedef void(* | Use) (const FacetPairing< dim > *, const IsoList *, void *) |
| A routine that can do arbitrary processing upon a facet pairing and its automorphisms. More... | |
Public Member Functions | |
| FacetPairing (const FacetPairing &cloneMe) | |
| Creates a new face pairing that is a clone of the given face pairing. More... | |
| FacetPairing (const Triangulation< 3 > &tri) | |
| Creates the face pairing of the given 3-manifold triangulation. More... | |
| void | followChain (size_t &tet, FacePair &faces) const |
| Follows a chain as far as possible from the given point. More... | |
| bool | hasTripleEdge () const |
| Determines whether this face pairing contains a triple edge. More... | |
| bool | hasBrokenDoubleEndedChain () const |
| Determines whether this face pairing contains a broken double-ended chain. More... | |
| bool | hasOneEndedChainWithDoubleHandle () const |
| Determines whether this face pairing contains a one-ended chain with a double handle. More... | |
| bool | hasWedgedDoubleEndedChain () const |
| Determines whether this face pairing contains a wedged double-ended chain. More... | |
| bool | hasOneEndedChainWithStrayBigon () const |
| Determines whether this face pairing contains a one-ended chain with a stray bigon. More... | |
| bool | hasTripleOneEndedChain () const |
| Determines whether this face pairing contains a triple one-ended chain. More... | |
| bool | hasSingleStar () const |
| Determines whether this face pairing contains a single-edged star. More... | |
| bool | hasDoubleStar () const |
| Determines whether this face pairing contains a double-edged star. More... | |
| bool | hasDoubleSquare () const |
| Determines whether this face pairing contains a double-edged square. More... | |
| void | writeTextLong (std::ostream &out) const |
| A default implementation for detailed output. More... | |
| std::string | str () const |
| Returns a short text representation of this object. More... | |
| std::string | utf8 () const |
| Returns a short text representation of this object using unicode characters. More... | |
| std::string | detail () const |
| Returns a detailed text representation of this object. More... | |
Basic Queries | |
| size_t | size () const |
| Returns the number of simplices whose facets are described by this facet pairing. More... | |
| const FacetSpec< dim > & | dest (const FacetSpec< dim > &source) const |
| Returns the other facet to which the given simplex facet is paired. More... | |
| const FacetSpec< dim > & | dest (size_t simp, unsigned facet) const |
| Returns the other facet to which the given simplex facet is paired. More... | |
| const FacetSpec< dim > & | operator[] (const FacetSpec< dim > &source) const |
| Returns the other facet to which the given simplex facet is paired. More... | |
| bool | isUnmatched (const FacetSpec< dim > &source) const |
| Determines whether the given simplex facet has been left deliberately unmatched. More... | |
| bool | isUnmatched (size_t simp, unsigned facet) const |
| Determines whether the given simplex facet has been left deliberately unmatched. More... | |
| bool | isClosed () const |
| Determines whether this facet pairing is closed. More... | |
Isomorphic Representations | |
| bool | isCanonical () const |
| Determines whether this facet pairing is in canonical form, i.e., is a lexicographically minimal representative of its isomorphism class. More... | |
| void | findAutomorphisms (IsoList &list) const |
| Fills the given list with the set of all combinatorial automorphisms of this facet pairing. More... | |
Basic Queries | |
| size_t | size () const |
| Returns the number of simplices whose facets are described by this facet pairing. More... | |
| const FacetSpec< dim > & | dest (const FacetSpec< dim > &source) const |
| Returns the other facet to which the given simplex facet is paired. More... | |
| const FacetSpec< dim > & | dest (size_t simp, unsigned facet) const |
| Returns the other facet to which the given simplex facet is paired. More... | |
| const FacetSpec< dim > & | operator[] (const FacetSpec< dim > &source) const |
| Returns the other facet to which the given simplex facet is paired. More... | |
| bool | isUnmatched (const FacetSpec< dim > &source) const |
| Determines whether the given simplex facet has been left deliberately unmatched. More... | |
| bool | isUnmatched (size_t simp, unsigned facet) const |
| Determines whether the given simplex facet has been left deliberately unmatched. More... | |
| bool | isClosed () const |
| Determines whether this facet pairing is closed. More... | |
Isomorphic Representations | |
| bool | isCanonical () const |
| Determines whether this facet pairing is in canonical form, i.e., is a lexicographically minimal representative of its isomorphism class. More... | |
| void | findAutomorphisms (IsoList &list) const |
| Fills the given list with the set of all combinatorial automorphisms of this facet pairing. More... | |
Protected Attributes | |
| size_t | size_ |
| The number of simplices under consideration. More... | |
| FacetSpec< dim > * | pairs_ |
| The other facet to which each simplex facet is paired. More... | |
Friends | |
| class | detail::FacetPairingBase< 3 > |
Input and Output | |
| void | writeTextShort (std::ostream &out) const |
| Writes a human-readable representation of this facet pairing to the given output stream. More... | |
| std::string | toTextRep () const |
| Returns a text-based representation of this facet pairing that can be used to reconstruct the facet pairing. More... | |
| void | writeDot (std::ostream &out, const char *prefix=0, bool subgraph=false, bool labels=false) const |
| Writes the graph corresponding to this facet pairing in the Graphviz DOT language. More... | |
| std::string | dot (const char *prefix=0, bool subgraph=false, bool labels=false) const |
| Returns a Graphviz DOT representation of the graph that describes this facet pairing. More... | |
| FacetSpec< dim > & | dest (const FacetSpec< dim > &source) |
| Returns the other facet to which the given simplex facet is paired. More... | |
| FacetSpec< dim > & | dest (size_t simp, unsigned facet) |
| Returns the other facet to which the given simplex facet is paired. More... | |
| FacetSpec< dim > & | operator[] (const FacetSpec< dim > &source) |
| Returns the other facet to which the given simplex facet is paired. More... | |
| bool | noDest (const FacetSpec< dim > &source) const |
| Determines whether the matching for the given simplex facet has not yet been determined. More... | |
| bool | noDest (size_t simp, unsigned facet) const |
| Determines whether the matching for the given simplex facet has not yet been determined. More... | |
| bool | isCanonicalInternal (IsoList &list) const |
| Determines whether this facet pairing is in canonical (smallest lexicographical) form, given a small set of assumptions. More... | |
| static FacetPairing< dim > * | fromTextRep (const std::string &rep) |
| Reconstructs a facet pairing from a text-based representation. More... | |
| static void | writeDotHeader (std::ostream &out, const char *graphName=0) |
| Writes header information for a Graphviz DOT file that will describe the graphs for one or more facet pairings. More... | |
| static std::string | dotHeader (const char *graphName=0) |
| Returns header information for a Graphviz DOT file that will describe the graphs for one or more facet pairings. More... | |
| static void | findAllPairings (size_t nSimplices, BoolSet boundary, int nBdryFacets, Use use, void *useArgs=0) |
| Generates all possible facet pairings satisfying the given constraints. More... | |
Represents the dual graph of a 3-manifold triangulation.
This is a specialisation of the generic FacetPairing class template; see the FacetPairing documentation for an overview of how this class works.
This 3-dimensional specialisation contains some extra functionality. In particular, it provides routines for finding informative subgraphs within the dual graph.
|
inherited |
Returns a detailed text representation of this object.
This text may span many lines, and should provide the user with all the information they could want. It should be human-readable, should not contain extremely long lines (which cause problems for users reading the output in a terminal), and should end with a final newline. There are no restrictions on the underlying character set.
|
inherited |
Returns a short text representation of this object.
This text should be human-readable, should fit on a single line, and should not end with a newline. Where possible, it should use plain ASCII characters.
__str__().
|
inherited |
Returns a short text representation of this object using unicode characters.
Like str(), this text should be human-readable, should fit on a single line, and should not end with a newline. In addition, it may use unicode characters to make the output more pleasant to read. This string will be encoded in UTF-8.
|
inlineinherited |
A default implementation for detailed output.
This routine simply calls T::writeTextShort() and appends a final newline.
| out | the output stream to which to write. |