CGAL 4.14 - 2D Convex Hulls and Extreme Points

## Functions

template<class ForwardIterator , class Traits >
bool CGAL::is_ccw_strongly_convex_2 (ForwardIterator first, ForwardIterator beyond, const Traits &ch_traits=Default_traits)
The function is_ccw_strongly_convex_2() determines if a given sequence of points defines a counterclockwise-oriented, strongly convex polygon. More...

template<class ForwardIterator , class Traits >
bool CGAL::is_cw_strongly_convex_2 (ForwardIterator first, ForwardIterator beyond, const Traits &ch_traits=Default_traits)
The function is_cw_strongly_convex_2() determines if a given sequence of points defines a clockwise-oriented, strongly convex polygon. More...

## ◆ is_ccw_strongly_convex_2()

template<class ForwardIterator , class Traits >
 bool CGAL::is_ccw_strongly_convex_2 ( ForwardIterator first, ForwardIterator beyond, const Traits & ch_traits = Default_traits )

#include <CGAL/convexity_check_2.h>

The function is_ccw_strongly_convex_2() determines if a given sequence of points defines a counterclockwise-oriented, strongly convex polygon.

It returns true, iff the point elements in [first,beyond) form a counterclockwise-oriented strongly convex polygon.

A set of points is said to be strongly convex if it consists of only extreme points (i.e., vertices of the convex hull).

The default traits class Default_traits is the kernel in which the value type of ForwardIterator is defined.

Requirements

Traits contains the following subset of types from the concept ConvexHullTraits_2 and their corresponding member functions that return instances of these types:

• Traits::Less_xy_2,
• Traits::Equal_2,
• Traits::Left_turn_2.
CGAL::is_cw_strongly_convex_2()
CGAL::is_strongly_convex_3()

Implementation

The algorithm requires $$O(n)$$ time for a set of $$n$$ input points.

## ◆ is_cw_strongly_convex_2()

template<class ForwardIterator , class Traits >
 bool CGAL::is_cw_strongly_convex_2 ( ForwardIterator first, ForwardIterator beyond, const Traits & ch_traits = Default_traits )

#include <CGAL/convexity_check_2.h>

The function is_cw_strongly_convex_2() determines if a given sequence of points defines a clockwise-oriented, strongly convex polygon.

It returns true, iff the point elements in [first,beyond) form a clockwise-oriented strongly convex polygon.

A set of points is said to be strongly convex if it consists of only extreme points (i.e., vertices of the convex hull).

The default traits class Default_traits is the kernel in which the value type of ForwardIterator is defined.

Requirements

Traits contains the following subset of types from the concept ConvexHullTraits_2 and their corresponding member functions that return instances of these types:

• Traits::Equal_2,
• Traits::Less_xy_2,
• Traits::Left_turn_2.
CGAL::is_ccw_strongly_convex_2()
CGAL::is_strongly_convex_3()
The algorithm requires $$O(n)$$ time for a set of $$n$$ input points.