The concept ApolloniusGraphVertexBase_2 describes the requirements for the vertex base class of the ApolloniusGraphDataStructure_2 concept. A vertex stores an Apollonius site and provides access to one of its incident faces through a Face_handle. In addition, it maintains a container of sites. The container stores the hidden sites related to the vertex.


A type for the geometric traits that defines the site stored.
Precondition: The type Geom_traits must define the type Site_2.

A Boolean that indicates if hidden sites are actually stored or not. Its value is true if hidden sites are stored, false otherwise.

A type for the site stored.
Precondition: This type must coincide with the type Geom_traits::Site_2.

A type for the Apollonius graph data structure, to which the vertex belongs to.

A type for the vertex handle of the Apollonius graph data structure.

A type for the face handle of the Apollonius graph data structure.

An iterator that iterates over the hidden sites in the hidden sites container of the vertex.
Precondition: Must be a model of Iterator.


ApolloniusGraphVertexBase_2 v;
Default constructor.

ApolloniusGraphVertexBase_2 v ( Site_2 s);
Constructs a vertex associated with the Apollonius site s and embedded at the center of s.

ApolloniusGraphVertexBase_2 v ( Site_2 s, Face_handle f);
Constructs a vertex associated with the site s, embedded at the center of s, and pointing to the face associated with the face handle f.

Access Functions

Site_2 v.site () Returns the Apollonius site.
Face_handle v.face () Returns a handle to an incident face.
unsigned int v.number_of_hidden_sites () Returns the number of hidden sites in the hidden sites container.
Hidden_sites_iterator v.hidden_sites_begin () Starts at an arbitrary hidden site.
Hidden_sites_iterator v.hidden_sites_end () Past-the-end iterator.

Setting and unsetting

void v.set_site ( Site_2 s) Sets the Apollonius site.
void v.set_face ( Face_handle f) Sets the incident face.
void v.add_hidden_site ( Site_2 s) Adds a hidden site to the container of hidden sites.
void v.clear_hidden_sites_container () Clears the container of hidden sites.


bool v.is_valid ( bool verbose, int level)
Performs any required tests on a vertex.

Has Models


See Also