CGAL 5.1.3 - 2D Envelopes
EnvelopeDiagramVertex Concept Reference

## Definition

A vertex record in an envelope diagram. It is always associated with a point on the lower (upper) envelope of a non-empty set of curves. A vertex is also associated with a set of $$x$$-monotone curves that induce the envelope over this point. It is incident to two edges, one lying to its left and the other to its right.

EnvelopeDiagram_1
EnvelopeDiagramEdge

## Types

typedef unspecified_type Size
the size type (convertible to size_t).

typedef unspecified_type Edge
the corresponding diagram-edge type.

typedef unspecified_type Point_2
the point type associated with the vertex.

typedef unspecified_type X_monotone_curve_2
the $$x$$-monotone curve type.

## Creation

EnvelopeDiagramVertex ()
default constructor.

EnvelopeDiagramVertex (const EnvelopeDiagramVertex &other)
copy constructor.

EnvelopeDiagramVertex (const Point_2 &p)
constructs a vertex associated with the given point p.

## Access Functions

const Point_2point () const
returns the point associated with v.

Size number_of_curves () const
returns the number of $$x$$-monotone curves associated with v.

Curve_const_iterator curves_begin () const
returns an iterator for the first $$x$$-monotone curve associated with v.

Curve_const_iterator curves_end () const
returns a past-the-end iterator for the $$x$$-monotone curves associated with v.

Edge_const_handle left () const
returns the edge lying to v's left.

Edge_const_handle right () const
returns the edge lying to v's right.

## Modifiers

void set_point (const Point_2 &p)
associates the point p with v.

void clear_curves ()
clears the set of curves associated with v.

adds the $$x$$-monotone curve cv to the set of curves associated with v.
adds the given range of $$x$$-monotone curves to the set of curves associated with v.
sets the edge lying to the left of v to be e.
sets the edge lying to the right of v to be e.