regina::TxICore Class Referenceabstract
Standard Triangulations and Subcomplexes

Provides a triangulation of the product `T x I` (the product of the torus and the interval). More...

`#include <subcomplex/txicore.h>`

Inheritance diagram for regina::TxICore:

## Public Member Functions

virtual | ~TxICore ()
| Destroys this object. More...
const Triangulation< 3 > & | core () const
| Returns a full copy of the `T x I` triangulation that this object describes. More...
unsigned | bdryTet (unsigned whichBdry, unsigned whichTri) const
| Determines which tetrahedron provides the requested boundary triangle. More...
Perm< 4 > | bdryRoles (unsigned whichBdry, unsigned whichTri) const
| Describes which tetrahedron vertices play which roles in the upper and lower boundary triangles. More...
const Matrix2 & | bdryReln (unsigned whichBdry) const
| Returns a 2-by-2 matrix describing the alpha and beta curves on a torus boundary in terms of specific tetrahedron edges. More...
const Matrix2 & | parallelReln () const
| Returns a 2-by-2 matrix describing the parallel relationship between the upper and lower boundary curves. More...
std::string | name () const
| Returns the name of this specific triangulation of `T x I` as a human-readable string. More...
std::string | TeXName () const
| Returns the name of this specific triangulation of `T x I` in TeX format. More...
virtual std::ostream & | writeName (std::ostream &out) const =0
| Writes the name of this specific triangulation of `T x I` to the given output stream. More...
virtual std::ostream & | writeTeXName (std::ostream &out) const =0
| Writes the name of this specific triangulation of `T x I` in TeX format to the given output stream. 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...

## Protected Member Functions

| TxICore ()
| Default constructor that performs no initialisation. More...

## Protected Attributes

Triangulation< 3 > | core_
| A full copy of the `T x I` triangulation that is described. More...
unsigned | bdryTet_ [2][2]
| The tetrahedra that provide the upper and lower boundary triangles. More...
Perm< 4 > | bdryRoles_ [2][2]
| Describes which tetrahedron vertices play which roles in the upper and lower boundary triangles. More...
Matrix2 | bdryReln_ [2]
| Expresses the alpha and beta curves for each torus boundary in terms of specific tetrahedron edges and vertices. More...
Matrix2 | parallelReln_
| Expresses the lower alpha and beta curves in terms of the upper alpha and beta curves. More...

## Detailed Description

Provides a triangulation of the product `T x I` (the product of the torus and the interval).

Generally these triangulations are only one tetrahedron thick (i.e., a "thin I-bundle"), though this is not a strict requirement of this class. Triangulations of this type are generally used as components of larger triangulations (such as layered surface bundles).

This product has two torus boundaries, called the upper and lower boundaries. Each of these boundary tori must be formed from precisely two triangles. This class tracks the mappings between parallel curves on the upper and lower boundaries, as well as mappings from boundary curves to specific tetrahedron edges.

For each of the two torus boundaries, two curves are chosen as generators of the fundamental group; these curves are called alpha and beta. Note that there is no requirement that the upper alpha and beta be parallel to the lower alpha and beta. The parallelReln() routine can be called to establish the precise relationship between these upper and lower curves.

Every object of this class contains a full copy of the triangulation that it describes (so you should not create excessive objects of this class without reason). This triangulation can be accessed through the core() routine.

## Member Function Documentation

## detail()

std::string regina::Output< TxICore , false >::detail | ( |  | ) | const

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.

Returns
  a detailed text representation of this object.

## str()

std::string regina::Output< TxICore , false >::str | ( |  | ) | const

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.

Python:\n In addition to str(), this is also used as the
  Python "stringification" function `__str__()`.

Returns
  a short text representation of this object.

## utf8()

std::string regina::Output< TxICore , false >::utf8 | ( |  | ) | const

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.

Returns
  a short text representation of this object.

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

- subcomplex/txicore.h

Copyright © 1999-2016, 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).