mirror of https://github.com/CGAL/cgal
Spell check.
This commit is contained in:
parent
ae477f90de
commit
9dee39a730
|
|
@ -60,7 +60,7 @@ simple polygonal chains (or polygons) is available through the function
|
||||||
|
|
||||||
In the following example a convex hull is constructed from point data read
|
In the following example a convex hull is constructed from point data read
|
||||||
from standard input using \ccc{Graham_Andrew} algorithm. The resulting convex
|
from standard input using \ccc{Graham_Andrew} algorithm. The resulting convex
|
||||||
polygon is shown at the standard ouput console. The same results could be
|
polygon is shown at the standard output console. The same results could be
|
||||||
achieved by substituting the function \ccc{CGAL::ch_graham_andrew} by other
|
achieved by substituting the function \ccc{CGAL::ch_graham_andrew} by other
|
||||||
function like \ccc{CGAL::ch_bykat}.
|
function like \ccc{CGAL::ch_bykat}.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
\section{Traits Classes}
|
\section{Traits Classes}
|
||||||
|
|
||||||
Each of the functions used to compute convex hulls or extreme points
|
Each of the functions used to compute convex hulls or extreme points
|
||||||
is paramterized by a traits class, which specifies the types and geometric
|
is parameterized by a traits class, which specifies the types and geometric
|
||||||
primitives to be used in the computation. There are several implementations
|
primitives to be used in the computation. There are several implementations
|
||||||
of 2D traits classes provided in the library. The class
|
of 2D traits classes provided in the library. The class
|
||||||
\ccc{Convex_hull_traits_2<R>}\ccIndexMainItem[C]{Convex_hull_traits_2}
|
\ccc{Convex_hull_traits_2<R>}\ccIndexMainItem[C]{Convex_hull_traits_2}
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
\ccc{OutputIterator::value_type}
|
\ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} defines the following subset of types from
|
\item \ccc{Traits} defines the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
\ccc{OutputIterator::value_type}
|
\ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} defines the following subset of types from
|
\item \ccc{Traits} defines the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
@ -67,7 +67,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
\ccRefIdfierPage{CGAL::convex_hull_2}
|
\ccRefIdfierPage{CGAL::convex_hull_2}
|
||||||
|
|
||||||
\ccImplementation
|
\ccImplementation
|
||||||
This function implements the non-recursive varitaion of
|
This function implements the non-recursive variation of
|
||||||
Eddy's algorithm \cite{e-nchap-77} described in \cite{b-chfsp-78}.
|
Eddy's algorithm \cite{e-nchap-77} described in \cite{b-chfsp-78}.
|
||||||
This algorithm requires $O(n h)$ time
|
This algorithm requires $O(n h)$ time
|
||||||
in the worst case for $n$ input points with $h$ extreme points.
|
in the worst case for $n$ input points with $h$ extreme points.
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} defines a type \ccc{Traits::Less_xy_2} as described in
|
\ccc{Traits} defines a type \ccc{Traits::Less_xy_2} as described in
|
||||||
the concept ConvexHullTraits\_2 and the corresponding member
|
the concept \ccc{ConvexHullTraits_2} and the corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
function that returns an instance of this type.
|
function that returns an instance of this type.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
\ccc{OutputIterator::value_type}
|
\ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} defines the following subset of types from
|
\item \ccc{Traits} defines the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ type \ccc{InputIterator::value_type} is defined.
|
||||||
\ccc{OutputIterator::value_type}
|
\ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} defines the following subset of types from
|
\item \ccc{Traits} defines the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
@ -69,7 +69,7 @@ type \ccc{InputIterator::value_type} is defined.
|
||||||
|
|
||||||
\ccImplementation
|
\ccImplementation
|
||||||
This function implements Andrew's variant of the Graham
|
This function implements Andrew's variant of the Graham
|
||||||
scan algorithm \cite{a-aeach-79} and follows the presenation of Mehlhorn
|
scan algorithm \cite{a-aeach-79} and follows the presentation of Mehlhorn
|
||||||
\cite{m-mdscg-84}. This algorithm requires $O(n \log n)$ time
|
\cite{m-mdscg-84}. This algorithm requires $O(n \log n)$ time
|
||||||
in the worst case for $n$ input points.
|
in the worst case for $n$ input points.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,7 @@ type \ccc{BidirectionalIterator::value_type} is defined.
|
||||||
\ccc{OutputIterator::value_type}
|
\ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} defines the following two types from
|
\item \ccc{Traits} defines the following two types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
@ -78,7 +78,7 @@ In the following example \ccc{ch_graham_andrew_scan()} is used to
|
||||||
realize Anderson's variant \cite{a-readc-78} of the Graham Scan
|
realize Anderson's variant \cite{a-readc-78} of the Graham Scan
|
||||||
\cite{g-eadch-72}. The points are sorted counterclockwise around the leftmost
|
\cite{g-eadch-72}. The points are sorted counterclockwise around the leftmost
|
||||||
point using the \ccc{Less_rotate_ccw_2} predicate, as defined in
|
point using the \ccc{Less_rotate_ccw_2} predicate, as defined in
|
||||||
the concept ConvexHullTraits\_2. According to the definition
|
the concept \ccc{ConvexHullTraits_2}. According to the definition
|
||||||
of \ccc{Less_rotate_ccw_2}, the leftmost point is the last point in the sorted
|
of \ccc{Less_rotate_ccw_2}, the leftmost point is the last point in the sorted
|
||||||
sequence and its predecessor on the convex hull is the first point in the
|
sequence and its predecessor on the convex hull is the first point in the
|
||||||
sorted sequence. It is not hard to see that the preconditions of
|
sorted sequence. It is not hard to see that the preconditions of
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@ type \ccc{InputIterator::value_type} is defined.
|
||||||
\ccc{OutputIterator::value_type}
|
\ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} defines the following subset of types from
|
\item \ccc{Traits} defines the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
\ccc{OutputIterator::value_type}
|
\ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} defines the following subset of types from
|
\item \ccc{Traits} defines the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ type \ccc{InputIterator::value_type} is defined.
|
||||||
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} contains the following subset of types from
|
\item \ccc{Traits} contains the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ The default traits class \ccc{Default_traits} is the kernel in which the type
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} defines the type \ccc{Traits::Less_yx_2} as specified in
|
\ccc{Traits} defines the type \ccc{Traits::Less_yx_2} as specified in
|
||||||
the concept ConvexHullTraits\_2 and the corresponding member
|
the concept \ccc{ConvexHullTraits_2} and the corresponding member
|
||||||
function that returns an instance of this type.
|
function that returns an instance of this type.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} defines the type \ccc{Traits::Less_yx_2} as specified in
|
\ccc{Traits} defines the type \ccc{Traits::Less_yx_2} as specified in
|
||||||
the concept ConvexHullTraits\_2 and the corresponding member
|
the concept \ccc{ConvexHullTraits_2} and the corresponding member
|
||||||
function that returns an instance of this type.
|
function that returns an instance of this type.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ minimal $x$, and maximal $x$ coordinates.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} contains the following subset of types from
|
\ccc{Traits} contains the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \ccc{Traits::Less_xy_2},
|
\item \ccc{Traits::Less_xy_2},
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} defines the type \ccc{Traits::Less_yx_2} as specified in
|
\ccc{Traits} defines the type \ccc{Traits::Less_yx_2} as specified in
|
||||||
the concept ConvexHullTraits\_2 and the corresponding member
|
the concept \ccc{ConvexHullTraits_2} and the corresponding member
|
||||||
function that returns an instance of this type.
|
function that returns an instance of this type.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ of input points with minimal $x$ coordinate.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} defines the type \ccc{Traits::Less_xy_2} as specified in
|
\ccc{Traits} defines the type \ccc{Traits::Less_xy_2} as specified in
|
||||||
the concept ConvexHullTraits\_2 and the corresponding member
|
the concept \ccc{ConvexHullTraits_2} and the corresponding member
|
||||||
function that returns an instance of this type.
|
function that returns an instance of this type.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} defines the type \ccc{Traits::Less_xy_2} as specified in
|
\ccc{Traits} defines the type \ccc{Traits::Less_xy_2} as specified in
|
||||||
the concept ConvexHullTraits\_2 and the corresponding member
|
the concept \ccc{ConvexHullTraits_2} and the corresponding member
|
||||||
function that returns an instance of this type.
|
function that returns an instance of this type.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ the type \ccc{InputIterator::value_type} is defined.
|
||||||
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} contains the following subset of types from
|
\item \ccc{Traits} contains the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
\ccDefinition
|
\ccDefinition
|
||||||
|
|
||||||
The function \ccRefName\ determines if a given sequence of points defines
|
The function \ccRefName\ determines if a given sequence of points defines
|
||||||
a counterclockwise-oriented, stongly convex polygon.
|
a counterclockwise-oriented, strongly convex polygon.
|
||||||
A set of points is said to be strongly convex
|
A set of points is said to be strongly convex
|
||||||
if it consists of only extreme points
|
if it consists of only extreme points
|
||||||
(\textit{i.e.}, vertices of the convex hull).
|
(\textit{i.e.}, vertices of the convex hull).
|
||||||
|
|
@ -39,7 +39,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} contains the following subset of types from
|
\ccc{Traits} contains the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
\ccDefinition
|
\ccDefinition
|
||||||
|
|
||||||
The function \ccRefName\ determines if a given sequence of points defines
|
The function \ccRefName\ determines if a given sequence of points defines
|
||||||
a clockwise-oriented, stongly convex polygon.
|
a clockwise-oriented, strongly convex polygon.
|
||||||
A set of points is said to be strongly convex %
|
A set of points is said to be strongly convex %
|
||||||
\ccIndexMainItemDef{strongly convex} if it consists of only extreme points
|
\ccIndexMainItemDef{strongly convex} if it consists of only extreme points
|
||||||
(\textit{i.e.}, vertices of the convex hull).
|
(\textit{i.e.}, vertices of the convex hull).
|
||||||
|
|
@ -40,7 +40,7 @@ type \ccc{ForwardIterator::value_type} is defined.
|
||||||
|
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\ccc{Traits} contains the following subset of types from
|
\ccc{Traits} contains the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ points gives the sequence of extreme points.
|
||||||
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
||||||
are equivalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} contains the following subset of types from
|
\item \ccc{Traits} contains the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \ccc{Traits::Point_2},
|
\item \ccc{Traits::Point_2},
|
||||||
|
|
|
||||||
|
|
@ -46,9 +46,9 @@ points gives the sequence of extreme points.
|
||||||
\ccHeading{Requirements}
|
\ccHeading{Requirements}
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
\item \ccc{InputIterator::value_type} and \ccc{OutputIterator::value_type}
|
||||||
are equilvalent to \ccc{Traits::Point_2}.
|
are equivalent to \ccc{Traits::Point_2}.
|
||||||
\item \ccc{Traits} contains the following subset of types from
|
\item \ccc{Traits} contains the following subset of types from
|
||||||
the concept ConvexHullTraits\_2 and their corresponding member
|
the concept \ccc{ConvexHullTraits_2} and their corresponding member
|
||||||
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
%\ccIndexMainItem[c]{ConvexHullTraits_2}
|
||||||
functions that return instances of these types:
|
functions that return instances of these types:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue