#include <nisomorphism.h>
Inheritance diagram for regina::NIsomorphism:
Public Member Functions | |
virtual | ~NIsomorphism () |
Destroys this isomorphism. | |
unsigned | getSourceTetrahedra () const |
Returns the number of tetrahedra in the source triangulation associated with this isomorphism. | |
int & | tetImage (unsigned sourceTet) |
Determines the image of the given source tetrahedron under this isomorphism. | |
int | tetImage (unsigned sourceTet) const |
Determines the image of the given source tetrahedron under this isomorphism. | |
virtual NPerm | facePerm (unsigned sourceTet) const =0 |
Determines the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism. | |
NTetFace | operator[] (const NTetFace &source) const |
Determines the image of the given source tetrahedron face under this isomorphism. | |
void | writeTextShort (std::ostream &out) const |
Writes this object in short text format to the given output stream. | |
void | writeTextLong (std::ostream &out) const |
Writes this object in long text format to the given output stream. | |
Protected Member Functions | |
NIsomorphism (unsigned newSourceTetrahedra) | |
Creates a new isomorphism with no initialisation. | |
Protected Attributes | |
unsigned | nTetrahedra |
The number of tetrahedra in the source triangulation. | |
int * | mTetImage |
The tetrahedron of the destination triangulation that each tetrahedron of the source triangulation maps to. |
A combinatorial isomorphism from triangulation T to triangulation U is a one-to-one map f from the individual tetrahedron faces of T to the individual tetrahedron faces of U for which the following conditions hold:
Isomorphisms can be boundary complete or boundary incomplete. A boundary complete isomorphism satisfies the additional condition:
A boundary complete isomorphism thus indicates that a copy of triangulation T is present as an entire component (or components) of U, whereas a boundary incomplete isomorphism represents an embedding of a copy of triangulation T as a subcomplex of some possibly larger component (or components) of U.
Note that in all cases triangulation U may contain more tetrahedra than triangulation T.
This class cannot be directly instantiated; the individual subclasses correspond to different methods of storing the face permutations associated with each tetrahedron.
|
Destroys this isomorphism.
|
|
Creates a new isomorphism with no initialisation.
|
|
Determines the permutation that is applied to the four faces of the given source tetrahedron under this isomorphism.
Face i of source tetrahedron sourceTet will be mapped to face
Implemented in regina::NIsomorphismDirect, and regina::NIsomorphismIndexed. |
|
Returns the number of tetrahedra in the source triangulation associated with this isomorphism. Note that this is always less than or equal to the number of tetrahedra in the destination triangulation.
|
|
Determines the image of the given source tetrahedron face under this isomorphism. Note that a value only is returned; this routine cannot be used to alter the isomorphism.
|
|
Determines the image of the given source tetrahedron under this isomorphism.
|
|
Determines the image of the given source tetrahedron under this isomorphism.
|
|
Writes this object in long text format to the given output stream. The output should provided the user with all the information they could want. The output should end with a newline. The default implementation of this routine merely calls writeTextShort() and adds a newline.
Reimplemented from regina::ShareableObject. |
|
Writes this object in short text format to the given output stream. The output should fit on a single line and no newline should be written.
Implements regina::ShareableObject. |
|
The tetrahedron of the destination triangulation that each tetrahedron of the source triangulation maps to.
|
|
The number of tetrahedra in the source triangulation.
|