## SegmentVoronoiDiagramVertexBase_2

### Definition

The concept SegmentVoronoiDiagramVertexBase_2 describes the requirements for the vertex base class of the SegmentVoronoiDiagramDataStructure_2 concept. A vertex stores a site of the segment Voronoi diagram and provides access to one of its incident faces through a Face_handle.

### Refines

DefaultConstructible
CopyConstructible
Assignable

### Types

SegmentVoronoiDiagramVertexBase_2::Geom_traits
| A type for the geometric traits that defines the site. Precondition: The type Geom_traits must define the type Site_2.
SegmentVoronoiDiagramVertexBase_2::Site_2
| A type for the site. This type must coincide with the type Geom_traits::Site_2.
SegmentVoronoiDiagramVertexBase_2::Storage_site_tag
| A type that indicates what kind of storage type to use. Storage_site_tag must either be CGAL::Tag_true or CGAL::Tag_false.
SegmentVoronoiDiagramVertexBase_2::Storage_site_2
| A type for the internal representation of sites. This type must satisfy the requirements of the concept SegmentVoronoiDiagramStorageSite_2.
SegmentVoronoiDiagramVertexBase_2::Data_structure
| A type for the underlying data structure, to which the vertex belongs to.
SegmentVoronoiDiagramVertexBase_2::Vertex_handle
| A type for the vertex handle of the segment Voronoi diagram data structure.
SegmentVoronoiDiagramVertexBase_2::Face_handle
| A type for the face handle of the segment Voronoi diagram data structure.

### Creation

In addition to the default and copy constructors and following constructors are required:

SegmentVoronoiDiagramVertexBase_2 v ( Storage_site_2 ss);
| Constructs a vertex associated with the site represented by the storage site ss.
SegmentVoronoiDiagramVertexBase_2 v ( Storage_site_2 ss, Face_handle f);
| Constructs a vertex associated with the site represented by the storage site ss, and pointing to the face associated with the face handle f.

### Access Functions

Storage_site_2 | v.storage_site () | Returns the storage site representing the site.
Site_2 | v.site () | Returns the site.
Face_handle | v.face () | Returns a handle to an incident face.

### Setting

void | v.set_site ( Storage_site_2 ss)
|  | Sets the storage site.
void | v.set_face ( Face_handle f)
|  | Sets the incident face.

### Checking

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

### Has Models

CGAL::Segment_Voronoi_diagram_vertex_base_2<Gt>.

### See Also

SegmentVoronoiDiagramDataStructure_2
SegmentVoronoiDiagramTraits_2
SegmentVoronoiDiagramSite_2
SegmentVoronoiDiagramStorageSite_2
CGAL::Segment_Voronoi_diagram_vertex_base_2<Gt>
CGAL::Segment_Voronoi_diagram_site_2<K>
CGAL::Segment_Voronoi_diagram_storage_site_2<Gt,SSTag>
CGAL::Triangulation_data_structure_2<Vb,Fb>