#include <nedge.h>
Public Member Functions | |
NEdge (NComponent *myComponent) | |
Creates a new edge and specifies it as belonging to the given triangulation component. | |
~NEdge () | |
Default destructor. | |
const std::deque < NEdgeEmbedding > & | getEmbeddings () const |
Returns the list of descriptors of how this edge forms a part of various tetrahedra in the triangulation. | |
unsigned long | getNumberOfEmbeddings () const |
Returns the number of descriptors in the list returned by getEmbeddings(). | |
const NEdgeEmbedding & | getEmbedding (unsigned long index) const |
Returns the requested descriptor from the list returned by getEmbeddings(). | |
NComponent * | getComponent () const |
Returns the component of the triangulation to which this edge belongs. | |
NBoundaryComponent * | getBoundaryComponent () const |
Returns the boundary component of the triangulation to which this edge belongs. | |
NVertex * | getVertex (int vertex) const |
Returns the vertex in the triangulation skeleton corresponding to the given vertex of this edge. | |
unsigned long | getDegree () const |
Returns the degree of this edge. | |
bool | isBoundary () const |
Determines if this edge lies entirely on the boundary of the triangulation. | |
bool | isValid () const |
Determines if this edge is valid. | |
void | writeTextShort (std::ostream &out) const |
Writes this object in short text format to the given output stream. | |
Friends | |
class | NTriangulation |
Allow access to private members. |
Edges are highly temporary; once a triangulation changes, all its edge objects will be deleted and new ones will be created.
regina::NEdge::NEdge | ( | NComponent * | myComponent | ) | [inline] |
Creates a new edge and specifies it as belonging to the given triangulation component.
myComponent | the triangulation component to which this edge belongs. |
regina::NEdge::~NEdge | ( | ) | [inline] |
Default destructor.
const std::deque< NEdgeEmbedding > & regina::NEdge::getEmbeddings | ( | ) | const [inline] |
Returns the list of descriptors of how this edge forms a part of various tetrahedra in the triangulation.
Note that if this edge represents multiple edges of a particular tetrahedron, there will be multiple embedding descriptors in the list regarding that tetrahedron.
These embedding descriptors will be stored in order in the list, so that running through the list and following in turn the edges defined by the images of (2,3) under the edge embedding permutations for each tetrahedron will produce an ordered chain circling the edge.
unsigned long regina::NEdge::getNumberOfEmbeddings | ( | ) | const [inline] |
Returns the number of descriptors in the list returned by getEmbeddings().
Note that this is identical to getDegree().
const NEdgeEmbedding & regina::NEdge::getEmbedding | ( | unsigned long | index | ) | const [inline] |
Returns the requested descriptor from the list returned by getEmbeddings().
index | the index of the requested descriptor. This should be between 0 and getNumberOfEmbeddings()-1 inclusive. |
NComponent * regina::NEdge::getComponent | ( | ) | const [inline] |
Returns the component of the triangulation to which this edge belongs.
NBoundaryComponent * regina::NEdge::getBoundaryComponent | ( | ) | const [inline] |
Returns the boundary component of the triangulation to which this edge belongs.
NVertex * regina::NEdge::getVertex | ( | int | vertex | ) | const [inline] |
Returns the vertex in the triangulation skeleton corresponding to the given vertex of this edge.
vertex | the vertex of this edge to examine. This should be 0 or 1. |
unsigned long regina::NEdge::getDegree | ( | ) | const [inline] |
Returns the degree of this edge.
Note that this is identical to getNumberOfEmbeddings().
bool regina::NEdge::isBoundary | ( | ) | const [inline] |
Determines if this edge lies entirely on the boundary of the triangulation.
true
if and only if this edge lies on the boundary. bool regina::NEdge::isValid | ( | ) | const [inline] |
Determines if this edge is valid.
An edge is valid if and only if it is not glued to itself in reverse.
true
if and only if this edge is valid. void regina::NEdge::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.
friend class NTriangulation [friend] |
Allow access to private members.