regina::NSnappedTwoSphere Class Reference
Standard Triangulations and Subcomplexes

Represents a 2-sphere made from two snapped 3-balls in a triangulation. More...

`#include <subcomplex/nsnappedtwosphere.h>`

Inheritance diagram for regina::NSnappedTwoSphere:

## Public Member Functions

virtual | ~NSnappedTwoSphere ()
| Destroys this snapped 2-sphere; note that the corresponding snapped 3-balls will also be destroyed. More...
NSnappedTwoSphere * | clone () const
| Returns a newly created clone of this structure. More...
const NSnappedBall * | getSnappedBall (int index) const
| Returns one of the two snapped 3-balls whose equators are joined. More...
void | writeTextShort (std::ostream &out) const
| Writes this object in short text format to the given output stream. More...
Public Member Functions inherited from regina::ShareableObject
| ShareableObject ()
| Default constructor that does nothing. More...
virtual | ~ShareableObject ()
| Default destructor that does nothing. More...
virtual void | writeTextLong (std::ostream &out) const
| Writes this object in long text format to the given output stream. More...
std::string | str () const
| Returns the output from writeTextShort() as a string. More...
std::string | toString () const
| A deprecated alias for str(), which returns the output from writeTextShort() as a string. More...
std::string | detail () const
| Returns the output from writeTextLong() as a string. More...
std::string | toStringLong () const
| A deprecated alias for detail(), which returns the output from writeTextLong() as a string. More...

## Static Public Member Functions

static NSnappedTwoSphere * | formsSnappedTwoSphere (NTetrahedron *tet1, NTetrahedron *tet2)
| Determines if the two given tetrahedra together form a snapped 2-sphere. More...
static NSnappedTwoSphere * | formsSnappedTwoSphere (NSnappedBall *ball1, NSnappedBall *ball2)
| Determines if the two given snapped 3-balls together form a snapped 2-sphere. More...

## Additional Inherited Members

Protected Member Functions inherited from regina::boost::noncopyable
| noncopyable ()
| A constructor which does nothing. More...
| ~noncopyable ()
| A destructor which does nothing. More...

## Detailed Description

Represents a 2-sphere made from two snapped 3-balls in a triangulation.

This occurs when two snapped 3-balls are glued together at their equators (note that this gluing does not have to extend to triangular faces). Each 3-ball has a central disc (bounded by the 3-ball's equator and bisecting its internal edge), and these two discs together form an embedded 2-sphere in the triangulation.

This 2-sphere can be cut along and the two resulting 2-sphere boundaries filled in with 3-balls, and the resulting triangulation has the same number of tetrahedra as the original. If the snapped 2-sphere was separating, the resulting triangulation will contain the two terms of the corresponding connected sum.

## Constructor & Destructor Documentation

regina::NSnappedTwoSphere::~NSnappedTwoSphere | ( |  | ) |

inline virtual

Destroys this snapped 2-sphere; note that the corresponding snapped 3-balls will also be destroyed.

## Member Function Documentation

NSnappedTwoSphere* regina::NSnappedTwoSphere::clone | ( |  | ) | const

Returns a newly created clone of this structure.

Returns
  a newly created clone.

static NSnappedTwoSphere* regina::NSnappedTwoSphere::formsSnappedTwoSphere | ( | NTetrahedron * | tet1,
|  | NTetrahedron * | tet2
| ) |  |

static

Determines if the two given tetrahedra together form a snapped 2-sphere.

Precondition
  The two given tetrahedra are distinct.

Parameters

  tet1 | the first tetrahedron to examine.
  tet2 | the second tetrahedron to examine.

Returns
  a newly created structure containing details of the snapped 2-sphere, or `null` if the given tetrahedra do not form a snapped 2-sphere.

static NSnappedTwoSphere* regina::NSnappedTwoSphere::formsSnappedTwoSphere | ( | NSnappedBall * | ball1,
|  | NSnappedBall * | ball2
| ) |  |

static

Determines if the two given snapped 3-balls together form a snapped 2-sphere.

If this is the case, the snapped 3-balls stored in the structure returned will be clones of the original 3-balls, not the original 3-balls themselves.

Precondition
  The two given snapped 3-balls use distinct tetrahedra.

Parameters

  ball1 | the first snapped 3-ball to examine.
  ball2 | the second snapped 3-ball to examine.

Returns
  a newly created structure containing details of the snapped 2-sphere, or `null` if the given snapped 3-balls do not form a snapped 2-sphere.

const NSnappedBall * regina::NSnappedTwoSphere::getSnappedBall | ( | int | index | ) | const

inline

Returns one of the two snapped 3-balls whose equators are joined.

Parameters

  index | specifies which of the two 3-balls to return; this must be either 0 or 1.

Returns
  the corresponding snapped 3-ball.

void regina::NSnappedTwoSphere::writeTextShort | ( | std::ostream & | out | ) | const

inline virtual

Writes this object in short text format to the given output stream.

The output should be human-readable, should fit on a single line, and should not end with a newline.

Python:
  The parameter out does not exist; standard output will be used.

Parameters

  out | the output stream to which to write.

Implements regina::ShareableObject.

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

- subcomplex/nsnappedtwosphere.h

Copyright © 1999-2013, 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@debian.org).