BALL
1.4.79
|
#include <BALL/STRUCTURE/graphEdge.h>
Public Member Functions | |
Constructors and Destructors | |
GraphEdge () | |
GraphEdge (const GraphEdge< Vertex, Edge, Face > &edge, bool deep=false) | |
GraphEdge (Vertex *vertex1, Vertex *vertex2, Face *face1, Face *face2, Index index) | |
virtual | ~GraphEdge () |
Assignment | |
void | set (const GraphEdge< Vertex, Edge, Face > &edge, bool deep=false) |
GraphEdge< Vertex, Edge, Face > & | operator= (const GraphEdge< Vertex, Edge, Face > &edge) |
void | set (Vertex *vertex0, Vertex *vertex1, Face *face0, Face *face1, Index index) |
Accessors | |
void | setVertex (Position i, Vertex *vertex) |
Vertex * | getVertex (Position i) const |
void | setFace (Position i, Face *face) |
Face * | getFace (Position i) const |
void | setIndex (Index index) |
Index | getIndex () const |
Vertex * | other (const Vertex *vertex) const throw (Exception::GeneralException) |
Face * | other (const Face *face) const throw (Exception::GeneralException) |
bool | substitute (const Vertex *old_vertex, Vertex *new_vertex) |
bool | substitute (const Face *old_vertex, Face *new_vertex) |
Face * | remove (const Face *face) |
void | revert () |
Predicates | |
virtual bool | operator== (const Edge &) const |
virtual bool | operator!= (const Edge &) const |
virtual bool | operator*= (const Edge &) const |
Protected Attributes | |
Vertex * | vertex_ [2] |
Face * | face_ [2] |
Index | index_ |
Friends | |
Class friends | |
| |
class | GraphVertex< Vertex, Edge, Face > |
class | GraphFace< Vertex, Edge, Face > |
class | GraphTriangle< Vertex, Edge, Face > |
Generic GraphEdge Class.
Definition at line 30 of file graphEdge.h.
BALL::GraphEdge< Vertex, Edge, Face >::GraphEdge | ( | ) |
Default constructor. This method creates a new GraphEdge object.
Definition at line 255 of file graphEdge.h.
BALL::GraphEdge< Vertex, Edge, Face >::GraphEdge | ( | const GraphEdge< Vertex, Edge, Face > & | edge, |
bool | deep = false |
||
) |
Copy constructor. Create a new GraphEdge object from another.
edge | the GraphEdge object to be copied |
deep | if deep = false, all pointers are set to NULL (default). Otherwise the new GraphEdge object is linked to the neighbours of the old GraphEdge object. |
Definition at line 267 of file graphEdge.h.
BALL::GraphEdge< Vertex, Edge, Face >::GraphEdge | ( | Vertex * | vertex1, |
Vertex * | vertex2, | ||
Face * | face1, | ||
Face * | face2, | ||
Index | index | ||
) |
Detailled constructor. Create a new GraphEdge object from a lot of nice objects
vertex1 | assigned to the first vertex |
vertex2 | assigned to the second vertex |
face1 | assigned to the first face |
face2 | assigned to the second face |
index | assigned to the index |
Definition at line 289 of file graphEdge.h.
|
virtual |
Destructor. Destructs the GraphEdge object. The neighboured faces and vertices are {/bf not} destructed.
Definition at line 304 of file graphEdge.h.
Face * BALL::GraphEdge< Vertex, Edge, Face >::getFace | ( | Position | i | ) | const |
Return one of the two faces of the GraphEdge.
i |
Definition at line 409 of file graphEdge.h.
Index BALL::GraphEdge< Vertex, Edge, Face >::getIndex | ( | ) | const |
Return the index of the GraphEdge.
Definition at line 430 of file graphEdge.h.
Vertex * BALL::GraphEdge< Vertex, Edge, Face >::getVertex | ( | Position | i | ) | const |
Return one of the two vertices of the GraphEdge.
i |
Definition at line 381 of file graphEdge.h.
|
virtual |
Inequality operator.
Reimplemented in BALL::RSEdge, BALL::SESEdge, BALL::SASEdge, and BALL::TriangleEdge.
Definition at line 562 of file graphEdge.h.
|
virtual |
Similarity operator.
Reimplemented in BALL::RSEdge, BALL::SESEdge, BALL::SASEdge, and BALL::TriangleEdge.
Definition at line 569 of file graphEdge.h.
|
virtual |
Equality operator.
Reimplemented in BALL::RSEdge, BALL::SESEdge, BALL::SASEdge, and BALL::TriangleEdge.
Definition at line 555 of file graphEdge.h.
Vertex * BALL::GraphEdge< Vertex, Edge, Face >::other | ( | const Vertex * | vertex | ) | const |
throw | ( | Exception::GeneralException | |||
) |
Return a pointer to the other vertex of the GraphEdge. If the given vertex is not incident to the GraphEdge, an exception is thrown.
vertex | one of the vertices of the GraphEdge |
Definition at line 437 of file graphEdge.h.
Face * BALL::GraphEdge< Vertex, Edge, Face >::other | ( | const Face * | face | ) | const |
throw | ( | Exception::GeneralException | |||
) |
Return a pointer to the other face of the GraphEdge. If the given face is not neighboured to the GraphEdge, an exception is thrown.
face | one of the faces of the GraphEdge |
Definition at line 459 of file graphEdge.h.
Face * BALL::GraphEdge< Vertex, Edge, Face >::remove | ( | const Face * | face | ) |
Delete a face of the GraphEdge. If the second face of the GraphEdge should be deleted, it is set to NULL. If the first one should be deleted, the second one is copied to first position and then set to NULL.
face | the face to delete |
Definition at line 527 of file graphEdge.h.
void BALL::GraphEdge< Vertex, Edge, Face >::revert | ( | ) |
Definition at line 546 of file graphEdge.h.
void BALL::GraphEdge< Vertex, Edge, Face >::set | ( | const GraphEdge< Vertex, Edge, Face > & | edge, |
bool | deep = false |
||
) |
void BALL::GraphEdge< Vertex, Edge, Face >::set | ( | Vertex * | vertex0, |
Vertex * | vertex1, | ||
Face * | face0, | ||
Face * | face1, | ||
Index | index | ||
) |
Assign from a lot of nice objects
vertex0 | assigned to the first vertex |
vertex1 | assigned to the second vertex |
face0 | assigned to the first face |
face1 | assigned to the second face |
index | assigned to the index |
Definition at line 352 of file graphEdge.h.
void BALL::GraphEdge< Vertex, Edge, Face >::setFace | ( | Position | i, |
Face * | face | ||
) |
Set one of the two faces of the GraphEdge.
i | change the first face, if i = 0, the second otherwise |
face | a pointer to the new face |
Definition at line 395 of file graphEdge.h.
void BALL::GraphEdge< Vertex, Edge, Face >::setIndex | ( | Index | index | ) |
Set the index of the GraphEdge.
index | the new index |
Definition at line 423 of file graphEdge.h.
void BALL::GraphEdge< Vertex, Edge, Face >::setVertex | ( | Position | i, |
Vertex * | vertex | ||
) |
Set one of the two vertices of the GraphEdge.
i | the first vertex is changed if i = 0, the second otherwise |
vertex | a pointer to the new vertex |
Definition at line 367 of file graphEdge.h.
bool BALL::GraphEdge< Vertex, Edge, Face >::substitute | ( | const Vertex * | old_vertex, |
Vertex * | new_vertex | ||
) |
Substitute a vertex by an other one.
old_vertex | the vertex that has to be substituted |
new_vertex | the new vertex |
Definition at line 482 of file graphEdge.h.
bool BALL::GraphEdge< Vertex, Edge, Face >::substitute | ( | const Face * | old_vertex, |
Face * | new_vertex | ||
) |
Substitute a face by an other one.
old_vertex | the face that has to be substituted |
new_vertex | the new face |
Definition at line 505 of file graphEdge.h.
|
friend |
Definition at line 42 of file graphEdge.h.
|
friend |
Definition at line 43 of file graphEdge.h.
|
friend |
Definition at line 41 of file graphEdge.h.
|
protected |
Definition at line 243 of file graphEdge.h.
|
protected |
Definition at line 246 of file graphEdge.h.
|
protected |
Definition at line 240 of file graphEdge.h.