#include <BALL/STRUCTURE/graphVertex.h>
Public Types | |
Type definitions | |
typedef HashSet< Edge * >::Iterator | EdgeIterator |
typedef HashSet< Edge * > ::ConstIterator | ConstEdgeIterator |
typedef HashSet< Face * >::Iterator | FaceIterator |
typedef HashSet< Face * > ::ConstIterator | ConstFaceIterator |
Public Member Functions | |
Constructors and Destructors | |
GraphVertex () | |
GraphVertex (const GraphVertex< Vertex, Edge, Face > &vertex, bool deep=false) | |
virtual | ~GraphVertex () |
Assignment | |
void | set (const GraphVertex< Vertex, Edge, Face > &vertex, bool deep=false) |
GraphVertex< Vertex, Edge, Face > & | operator= (const GraphVertex< Vertex, Edge, Face > &vertex) |
Accessors | |
void | insert (Edge *edge) |
void | insert (Face *face) |
void | remove (Edge *edge) |
void | remove (Face *face) |
Position | numberOfEdges () const |
Position | numberOfFaces () const |
void | setIndex (Index index) |
Index | getIndex () const |
bool | join (const Vertex &vertex) |
bool | substitute (Vertex *vertex) |
Predicates | |
virtual bool | operator== (const Vertex &) const |
virtual bool | operator!= (const Vertex &) const |
virtual bool | operator*= (const Vertex &) const |
Face * | has (Face *face) const |
Edge * | has (Edge *edge) const |
bool | hasEdges () const |
bool | hasFaces () const |
Friends | |
Class friends | |
class | GraphEdge< Vertex, Edge, Face > |
class | GraphFace< Vertex, Edge, Face > |
class | GraphTriangle< Vertex, Edge, Face > |
External Iterators | |
| |
HashSet< Edge * > | edges_ |
HashSet< Face * > | faces_ |
Index | index_ |
EdgeIterator | beginEdge () |
ConstEdgeIterator | beginEdge () const |
EdgeIterator | endEdge () |
ConstEdgeIterator | endEdge () const |
FaceIterator | beginFace () |
ConstFaceIterator | beginFace () const |
FaceIterator | endFace () |
ConstFaceIterator | endFace () const |
Generic GraphVertex Class.
Definition at line 32 of file graphVertex.h.
typedef HashSet<Edge*>::ConstIterator BALL::GraphVertex< Vertex, Edge, Face >::ConstEdgeIterator |
Definition at line 54 of file graphVertex.h.
typedef HashSet<Face*>::ConstIterator BALL::GraphVertex< Vertex, Edge, Face >::ConstFaceIterator |
Definition at line 56 of file graphVertex.h.
typedef HashSet<Edge*>::Iterator BALL::GraphVertex< Vertex, Edge, Face >::EdgeIterator |
Definition at line 53 of file graphVertex.h.
typedef HashSet<Face*>::Iterator BALL::GraphVertex< Vertex, Edge, Face >::FaceIterator |
Definition at line 55 of file graphVertex.h.
BALL::GraphVertex< Vertex, Edge, Face >::GraphVertex | ( | ) | [inline] |
Default constructor. This method creates a new GraphVertex object.
Definition at line 275 of file graphVertex.h.
BALL::GraphVertex< Vertex, Edge, Face >::GraphVertex | ( | const GraphVertex< Vertex, Edge, Face > & | vertex, | |
bool | deep = false | |||
) | [inline] |
Copy constructor. Create a new GraphVertex object from another.
vertex | the GraphVertex object to be copied | |
deep | if deep = false, all pointers are set to NULL (default). Otherwise the new GraphVertex object is linked to the neighbours of the old GraphVertex object. |
Definition at line 286 of file graphVertex.h.
BALL::GraphVertex< Vertex, Edge, Face >::~GraphVertex | ( | ) | [inline, virtual] |
Destructor. Destructs the GraphVertex object.
Definition at line 301 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::ConstEdgeIterator BALL::GraphVertex< Vertex, Edge, Face >::beginEdge | ( | ) | const [inline] |
Definition at line 509 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::EdgeIterator BALL::GraphVertex< Vertex, Edge, Face >::beginEdge | ( | ) | [inline] |
Definition at line 500 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::ConstFaceIterator BALL::GraphVertex< Vertex, Edge, Face >::beginFace | ( | ) | const [inline] |
Definition at line 545 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::FaceIterator BALL::GraphVertex< Vertex, Edge, Face >::beginFace | ( | ) | [inline] |
Definition at line 536 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::ConstEdgeIterator BALL::GraphVertex< Vertex, Edge, Face >::endEdge | ( | ) | const [inline] |
Definition at line 527 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::EdgeIterator BALL::GraphVertex< Vertex, Edge, Face >::endEdge | ( | ) | [inline] |
Definition at line 518 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::ConstFaceIterator BALL::GraphVertex< Vertex, Edge, Face >::endFace | ( | ) | const [inline] |
Definition at line 563 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face >::FaceIterator BALL::GraphVertex< Vertex, Edge, Face >::endFace | ( | ) | [inline] |
Definition at line 554 of file graphVertex.h.
Index BALL::GraphVertex< Vertex, Edge, Face >::getIndex | ( | ) | const [inline] |
Return the index of the vertex.
Definition at line 396 of file graphVertex.h.
Edge * BALL::GraphVertex< Vertex, Edge, Face >::has | ( | Edge * | edge | ) | const [inline] |
Test whether the vertex is meber of a given edge.
edge | a pointer to the edge to be tested |
Definition at line 467 of file graphVertex.h.
Face * BALL::GraphVertex< Vertex, Edge, Face >::has | ( | Face * | face | ) | const [inline] |
Test whether the vertex is meber of a given face.
face | a pointer to the the face to be tested |
Definition at line 451 of file graphVertex.h.
bool BALL::GraphVertex< Vertex, Edge, Face >::hasEdges | ( | ) | const [inline] |
Test whether the vertex has edges.
Definition at line 483 of file graphVertex.h.
bool BALL::GraphVertex< Vertex, Edge, Face >::hasFaces | ( | ) | const [inline] |
Test whether the vertex has faces.
Definition at line 491 of file graphVertex.h.
void BALL::GraphVertex< Vertex, Edge, Face >::insert | ( | Face * | face | ) | [inline] |
Insert a new face into the HashSet of faces the GraphVertex belongs to.
face | a pointer to the new face |
Definition at line 348 of file graphVertex.h.
void BALL::GraphVertex< Vertex, Edge, Face >::insert | ( | Edge * | edge | ) | [inline] |
Insert a new edge into the HashSet of edges the GraphVertex belongs to.
edge | a pointer to the new edge |
Definition at line 340 of file graphVertex.h.
bool BALL::GraphVertex< Vertex, Edge, Face >::join | ( | const Vertex & | vertex | ) | [inline] |
Join two GraphVertices if they are similar. All edges and faces of the given Vertex are inserted.
vertex | the Vertex to join with |
Definition at line 426 of file graphVertex.h.
Position BALL::GraphVertex< Vertex, Edge, Face >::numberOfEdges | ( | ) | const [inline] |
Return the number of edges the GraphVertex belongs to.
Definition at line 372 of file graphVertex.h.
Position BALL::GraphVertex< Vertex, Edge, Face >::numberOfFaces | ( | ) | const [inline] |
Return the number of faces the GraphVertex belongs to.
Definition at line 380 of file graphVertex.h.
bool BALL::GraphVertex< Vertex, Edge, Face >::operator!= | ( | const Vertex & | ) | const [inline, virtual] |
Inequality operator.
Reimplemented in BALL::RSVertex, BALL::SASVertex, BALL::SESVertex, and BALL::TrianglePoint.
Definition at line 579 of file graphVertex.h.
bool BALL::GraphVertex< Vertex, Edge, Face >::operator*= | ( | const Vertex & | ) | const [inline, virtual] |
Similarity operator.
Reimplemented in BALL::RSVertex, BALL::SASVertex, BALL::SESVertex, and BALL::TrianglePoint.
Definition at line 587 of file graphVertex.h.
GraphVertex< Vertex, Edge, Face > & BALL::GraphVertex< Vertex, Edge, Face >::operator= | ( | const GraphVertex< Vertex, Edge, Face > & | vertex | ) | [inline] |
Assign from another GraphVertex. The GraphVertex object is linked to the neighbours of the GraphVertex object to assign from.
vertex | the GraphVertex object to assign from |
Definition at line 326 of file graphVertex.h.
bool BALL::GraphVertex< Vertex, Edge, Face >::operator== | ( | const Vertex & | ) | const [inline, virtual] |
Equality operator.
Reimplemented in BALL::RSVertex, BALL::SASVertex, BALL::SESVertex, and BALL::TrianglePoint.
Definition at line 571 of file graphVertex.h.
void BALL::GraphVertex< Vertex, Edge, Face >::remove | ( | Face * | face | ) | [inline] |
Remove a face from the HashSet of faces the GraphVertex belongs to.
face | a pointer to the face to remove |
Definition at line 364 of file graphVertex.h.
void BALL::GraphVertex< Vertex, Edge, Face >::remove | ( | Edge * | edge | ) | [inline] |
Remove an edge from the HashSet of edges the GraphVertex belongs to.
edge | a pointer to the edge to remove |
Definition at line 356 of file graphVertex.h.
void BALL::GraphVertex< Vertex, Edge, Face >::set | ( | const GraphVertex< Vertex, Edge, Face > & | vertex, | |
bool | deep = false | |||
) | [inline] |
Assign from another GraphVertex.
vertex | the GraphVertex object to assign from | |
deep | if deep = false, all pointers are set to NULL (default). Otherwise the GraphVertex object is linked to the neighbours of the GraphVertex object to assign from. |
Definition at line 309 of file graphVertex.h.
void BALL::GraphVertex< Vertex, Edge, Face >::setIndex | ( | Index | index | ) | [inline] |
Set the index of the vertex.
index | the new index |
Definition at line 388 of file graphVertex.h.
bool BALL::GraphVertex< Vertex, Edge, Face >::substitute | ( | Vertex * | vertex | ) | [inline] |
Subsitute the GraphVertex by a similar one. The GraphVertex is substituted in all his Edges and Faces.
vertex | a pointer to the vertex to substitute |
Definition at line 404 of file graphVertex.h.
friend class GraphEdge< Vertex, Edge, Face > [friend] |
Definition at line 43 of file graphVertex.h.
friend class GraphFace< Vertex, Edge, Face > [friend] |
Definition at line 44 of file graphVertex.h.
friend class GraphTriangle< Vertex, Edge, Face > [friend] |
Definition at line 45 of file graphVertex.h.
HashSet<Edge*> BALL::GraphVertex< Vertex, Edge, Face >::edges_ [protected] |
Definition at line 260 of file graphVertex.h.
HashSet<Face*> BALL::GraphVertex< Vertex, Edge, Face >::faces_ [protected] |
Definition at line 263 of file graphVertex.h.
Index BALL::GraphVertex< Vertex, Edge, Face >::index_ [protected] |
Definition at line 266 of file graphVertex.h.