\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)

CGAL 4.8 - 2D Straight Skeleton and Polygon Offsetting

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
StraightSkeletonHalfedge_2 Concept Reference
Concepts

## Definition

The concept `StraightSkeletonHalfedge_2` describes the requirements for the halfedge type of the `StraightSkeleton_2` concept. It is a refinement of the `HalfedgeDSHalfedge` concept. The `StraightSkeletonHalfedge_2` concept requires no geometric embedding at all. The only geometric embedding used by the Straight Skeleton Data Structure are the 2D points in the contour and skeleton vertices. However, for any halfedge, there is a 2D segment implicitly given by its `source` and `target` vertices.

Refines:
  `HalfedgeDSHalfedge`

Has Models:
  CGAL::Straight_skeleton_halfedge_base_2

See Also
  `StraightSkeleton_2`
  `StraightSkeletonHalfedge_2`
  `CGAL::Straight_skeleton_vertex_base_2<Refs,Point,FT>`
  `CGAL::Straight_skeleton_halfedge_base_2<Refs>`

## Creation
| StraightSkeletonHalfedge_2 ()
| Default Constructor.
| StraightSkeletonHalfedge_2 (int id)
| Constructs a halfedge with ID `id`. More...

## Access Functions
Halfedge_handle | defining_contour_edge ()
Halfedge_const_handle | defining_contour_edge () const
| If this is a bisector halfedge, returns a handle to the inward-facing (non-border) contour halfedge corresponding to the defining contour edge which is to its left; if this is a contour halfedge, returns a handle to itself if `is\_border()` is `false`, or to its opposite if it is `true`.

## Queries
bool | is_bisector () const
| Returns `true` iff this is a bisector (or skeleton) halfedge (i.e. is not a contour halfedge).
bool | is_inner_bisector () const
| Returns `true` iff this is a bisector and is inner (i.e. is not incident upon a contour vertex).

## Constructor & Destructor Documentation

StraightSkeletonHalfedge_2::StraightSkeletonHalfedge_2 | ( | int | id) |  |

Constructs a halfedge with ID `id`.

It is the links to other halfedges what determines if this is a contour edge, a contour-skeleton edge or an inner-skeleton edge.