\( \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.13 - Spatial Sorting
SpatialSortingTraits_2 Concept Reference

Definition

All 2D spatial sorting algorithms provided in CGAL are parameterized by a traits class Traits, which defines the primitives (objects and predicates) that the sorting algorithms use. SpatialSortingTraits_2 defines the complete set of primitives required in these functions and functors.

Has Models:

Any CGAL kernel.

CGAL::Spatial_sort_traits_adapter_2<Base_traits,PointPropertyMap>

Types

typedef unspecified_type Point_2
 The point type on which the sorting algorithms operate.
 
typedef unspecified_type Compute_x_2
 Functor object type returning the \( x\) coordinate of a Point_2. More...
 
typedef unspecified_type Compute_y_2
 Functor object type returning the \( y\) coordinate of a Point_2. More...
 
typedef unspecified_type Less_x_2
 Binary predicate object type comparing Point_2s along the \( x\) coordinate. More...
 
typedef unspecified_type Less_y_2
 Binary predicate object type comparing Point_2s along the \( y\) coordinate. More...
 

Creation

Only a copy constructor is required.

 SpatialSortingTraits_2 (const SpatialSortingTraits_2 &t)
 

Operations

The following member functions to create instances of the above predicate object types must exist.

Compute_x_2 compute_x_2_object ()
 
Compute_y_2 compute_y_2_object ()
 
Less_x_2 less_x_2_object ()
 
Less_y_2 less_y_2_object ()
 

Member Typedef Documentation

◆ Compute_x_2

Functor object type returning the \( x\) coordinate of a Point_2.

Must provide FT operator()(Point_2 p) where FT can be used as argument of CGAL::to_double.

◆ Compute_y_2

Functor object type returning the \( y\) coordinate of a Point_2.

Must provide FT operator()(Point_2 p) where FT can be used as argument of CGAL::to_double.

◆ Less_x_2

Binary predicate object type comparing Point_2s along the \( x\) coordinate.

Must provide bool operator()(Point_2 p, Point_2 q) where true is returned iff \( p_x < q_x\), where \( p_x\) and \( q_x\) denote \( x\) coordinate of point \( p\) and \( q\), respectively.

◆ Less_y_2

Binary predicate object type comparing Point_2s along the \( y\) coordinate.

Must provide bool operator()(Point_2 p, Point_2 q) where true is returned iff \( p_y < q_y\), where \( p_y\) and \( q_y\) denote \( y\) coordinate of point \( p\) and \( q\), respectively.