Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

regina::NEdge Class Reference
[Triangulations]

Represents an edge in the skeleton of a triangulation. More...

#include <nedge.h>

Inheritance diagram for regina::NEdge:

regina::ShareableObject regina::boost::noncopyable List of all members.

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 NEdgeEmbeddinggetEmbedding (unsigned long index) const
 Returns the requested descriptor from the list returned by getEmbeddings().
NComponentgetComponent () const
 Returns the component of the triangulation to which this edge belongs.
NBoundaryComponentgetBoundaryComponent () const
 Returns the boundary component of the triangulation to which this edge belongs.
NVertexgetVertex (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.

Detailed Description

Represents an edge in the skeleton of a triangulation.

Edges are highly temporary; once a triangulation changes, all its edge objects will be deleted and new ones will be created.


Constructor & Destructor Documentation

regina::NEdge::NEdge NComponent myComponent  )  [inline]
 

Creates a new edge and specifies it as belonging to the given triangulation component.

Python:
Not present.
Parameters:
myComponent the triangulation component to which this edge belongs.

regina::NEdge::~NEdge  )  [inline]
 

Default destructor.


Member Function Documentation

NBoundaryComponent * regina::NEdge::getBoundaryComponent  )  const [inline]
 

Returns the boundary component of the triangulation to which this edge belongs.

Returns:
the boundary component containing this edge, or 0 if this edge is not on the boundary of the triangulation.

NComponent * regina::NEdge::getComponent  )  const [inline]
 

Returns the component of the triangulation to which this edge belongs.

Returns:
the component containing this edge.

unsigned long regina::NEdge::getDegree  )  const [inline]
 

Returns the degree of this edge.

Note that this is identical to getNumberOfEmbeddings().

Returns:
the degree of this edge.

const NEdgeEmbedding & regina::NEdge::getEmbedding unsigned long  index  )  const [inline]
 

Returns the requested descriptor from the list returned by getEmbeddings().

Parameters:
index the index of the requested descriptor. This should be between 0 and getNumberOfEmbeddings()-1 inclusive.
Returns:
the requested embedding descriptor.

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.

Python:
This routine returns a python list.
Returns:
the list of embedding descriptors.
See also:
NEdgeEmbedding

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().

Returns:
the number of embedding descriptors.

NVertex * regina::NEdge::getVertex int  vertex  )  const [inline]
 

Returns the vertex in the triangulation skeleton corresponding to the given vertex of this edge.

Parameters:
vertex the vertex of this edge to examine. This should be 0 or 1.
Returns:
the vertex of the skeleton corresponding to the requested edge vertex.

bool regina::NEdge::isBoundary  )  const [inline]
 

Determines if this edge lies entirely on the boundary of the triangulation.

Returns:
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.

Returns:
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.

Python:
The parameter out does not exist; standard output will be used.
Parameters:
out the output stream to which to write.

Implements regina::ShareableObject.


Friends And Related Function Documentation

friend class NTriangulation [friend]
 

Allow access to private members.


The documentation for this class was generated from the following file:
Copyright © 1999-2004, Ben Burton
This software is released under the GNU General Public License.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).