Regina Calculation Engine
|
Provides core functionality for combinatorial isomorphisms between dim-manifold triangulations. More...
#include <triangulation/detail/isomorphism.h>
Public Member Functions | |
IsomorphismBase (unsigned nSimplices) | |
Creates a new isomorphism with no initialisation. More... | |
IsomorphismBase (const IsomorphismBase< dim > ©) | |
Creates a new copy of the given isomorphism. More... | |
~IsomorphismBase () | |
Destroys this isomorphism. More... | |
unsigned | size () const |
Returns the number of simplices in the source triangulation associated with this isomorphism. More... | |
int & | simpImage (unsigned sourceSimp) |
Determines the image of the given source simplex under this isomorphism. More... | |
int | simpImage (unsigned sourceSimp) const |
Determines the image of the given source simplex under this isomorphism. More... | |
Perm< dim+1 > & | facetPerm (unsigned sourceSimp) |
Returns a read-write reference to the permutation that is applied to the (dim + 1) facets of the given source simplex under this isomorphism. More... | |
Perm< dim+1 > | facetPerm (unsigned sourceSimp) const |
Determines the permutation that is applied to the (dim + 1) facets of the given source simplex under this isomorphism. More... | |
FacetSpec< dim > | operator[] (const FacetSpec< dim > &source) const |
Determines the image of the given source simplex facet under this isomorphism. More... | |
bool | isIdentity () const |
Determines whether or not this is an identity isomorphism. More... | |
Triangulation< dim > * | apply (const Triangulation< dim > *original) const |
Applies this isomorphism to the given triangulation, and returns the result as a new triangulation. More... | |
void | applyInPlace (Triangulation< dim > *tri) const |
Applies this isomorphism to the given triangulation, modifying the given triangulation directly. More... | |
void | writeTextShort (std::ostream &out) const |
Writes a short text representation of this object to the given output stream. More... | |
void | writeTextLong (std::ostream &out) const |
Writes a detailed text representation of this object to the given output stream. 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... | |
Static Public Member Functions | |
static Isomorphism< dim > * | identity (unsigned nSimplices) |
Returns the identity isomorphism for the given number of simplices. More... | |
static Isomorphism< dim > * | random (unsigned nSimplices) |
Returns a random isomorphism for the given number of simplices. More... | |
Protected Attributes | |
unsigned | nSimplices_ |
The number of simplices in the source triangulation. More... | |
int * | simpImage_ |
Stores the simplex of the destination triangulation that each simplex of the source triangulation maps to. More... | |
Perm< dim+1 > * | facetPerm_ |
The permutation applied to the facets of each source simplex. More... | |
Provides core functionality for combinatorial isomorphisms between dim-manifold triangulations.
Such an isomorphism is represented by the class Isomorphism<dim>, which uses this as a base class. End users should not need to refer to IsomorphismBase directly.
See the Isomorphism class notes for further information.
dim | the dimension of the triangulations that this isomorphism class works with. This must be between 2 and 15 inclusive. |
|
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.