Navigation: Up, Table of Contents, Bibliography, Index, Title Page

The vertex stores a point and a pointer to an incident face.

Types

The class Tds::Vertex defines the same types as the triangulation data structure class Tds except the iterators.
begin of advanced section

Creation

Tds::Vertex v;
Introduces a variable v. The geometric information is initialized by the default constructor of class P. The pointer to the incident face is initialized with NULL.

Tds::Vertex v ( Point p);
Introduces a variable v, and initializes the geometric information. The pointer to the incident face is initialized with NULL.

Tds::Vertex v ( Point p, Face* f);
Introduces a variable v, and initializes the geometric information and the pointer to the incident face.


end of advanced section

Setting


begin of advanced section

void v.set_point ( Point p)
Sets the geometric information to p.
void v.set_face ( Face* f)
Sets the incident face to f.


end of advanced section

Access Functions

Point v.point () Returns the geometric information of v.
Face* v.face () Returns a face of the triangulation having v as vertex.

Traversal of the Adjacent Vertices, Incident Edges and Faces.

Three circulator classes allow to traverse the edges, and faces incident to a given vertex and vertices adjacent to a given vertices. Note that infinite as well as finite incident edges and faces are visited. These circulators ar bidirectional and their value types are respectively Vertex, Edge and Face. The operator++ moves the circulator counterclockwise around the vertex and the operator-- moves the circulator clockwise.

A face circulator is invalidated by any modification of the face it points to. An edge circulator is invalidated by any modification of the two faces that are incident to the edge pointed to. A vertex circulator that turns around vertex v and that has as value a pointer to vertex w, is invalidated by any modification of the two faces that are incident to v and w.

Vertex_circulator v.incident_vertices ( {Face_handle} f={Face_handle}())
Edge_circulator v.incident_edges ( {Face_handle} f={Face_handle}())
Face_circulator v.incident_faces ( {Face_handle} f={Face_handle}())

Miscellaneous

int v.ccw ( int i) Returns i+1 modulo 3.
Precondition: 0<=i <=2.
int v.cw ( int i) Returns i+2 modulo 3.
Precondition: 0<=i <=2.
int v.degree () Returns the degree of v in the triangulation.


Next: Class declaration of Tds::Face
Navigation: Up, Table of Contents, Bibliography, Index, Title Page
The CGAL Project. 22 January, 1999.