Represents a 2-sphere made from two snapped 3-balls in a triangulation. More...
#include <nsnappedtwosphere.h>
Public Member Functions | |
virtual | ~NSnappedTwoSphere () |
Destroys this snapped 2-sphere; note that the corresponding snapped 3-balls will also be destroyed. | |
NSnappedTwoSphere * | clone () const |
Returns a newly created clone of this structure. | |
const NSnappedBall * | getSnappedBall (int index) const |
Returns one of the two snapped 3-balls whose equators are joined. | |
void | writeTextShort (std::ostream &out) const |
Writes this object in short text format to the given output stream. | |
Static Public Member Functions | |
static NSnappedTwoSphere * | formsSnappedTwoSphere (NTetrahedron *tet1, NTetrahedron *tet2) |
Determines if the two given tetrahedra together form a snapped 2-sphere. | |
static NSnappedTwoSphere * | formsSnappedTwoSphere (NSnappedBall *ball1, NSnappedBall *ball2) |
Determines if the two given snapped 3-balls together form a snapped 2-sphere. |
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 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.
regina::NSnappedTwoSphere::~NSnappedTwoSphere | ( | ) | [inline, virtual] |
Destroys this snapped 2-sphere; note that the corresponding snapped 3-balls will also be destroyed.
NSnappedTwoSphere* regina::NSnappedTwoSphere::clone | ( | ) | const |
Returns a newly created clone of this structure.
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.
ball1 | the first snapped 3-ball to examine. |
ball2 | the second snapped 3-ball to examine. |
null
if the given snapped 3-balls do not form a snapped 2-sphere. static NSnappedTwoSphere* regina::NSnappedTwoSphere::formsSnappedTwoSphere | ( | NTetrahedron * | tet1, |
NTetrahedron * | tet2 | ||
) | [static] |
Determines if the two given tetrahedra together form a snapped 2-sphere.
tet1 | the first tetrahedron to examine. |
tet2 | the second tetrahedron to examine. |
null
if the given tetrahedra 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.
index | specifies which of the two 3-balls to return; this must be either 0 or 1. |
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 fit on a single line and no newline should be written.
out | the output stream to which to write. |
Implements regina::ShareableObject.