\( \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_3 Concept Reference

Definition

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

Has Models:

Any CGAL kernel.

CGAL::Spatial_sort_traits_adapter_3<Base_traits,PointPropertyMap>

Types

typedef unspecified_type Point_3
 The point type on which the sorting algorithms operate.
 
typedef unspecified_type Compute_x_3
 Functor object type returning the \( x\) coordinate of a Point_3. More...
 
typedef unspecified_type Compute_y_3
 Functor object type returning the \( y\) coordinate of a Point_3. More...
 
typedef unspecified_type Compute_z_3
 Functor object type returning the \( z\) coordinate of a Point_3. More...
 
typedef unspecified_type Less_x_3
 Binary predicate object type comparing Point_3s along the \( x\) coordinate. More...
 
typedef unspecified_type Less_y_3
 Binary predicate object type comparing Point_3s along the \( y\) coordinate. More...
 
typedef unspecified_type Less_z_3
 Binary predicate object type comparing Point_3s along the \( z\) coordinate. More...
 

Creation

Only a copy constructor is required.

 SpatialSortingTraits_3 (const SpatialSortingTraits_3 &t)
 

Operations

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

Compute_x_3 compute_x_3_object ()
 
Compute_y_3 compute_y_3_object ()
 
Compute_z_3 compute_z_3_object ()
 
Less_x_3 less_x_3_object ()
 
Less_y_3 less_y_3_object ()
 
Less_z_3 less_z_3_object ()
 

Member Typedef Documentation

◆ Compute_x_3

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

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

◆ Compute_y_3

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

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

◆ Compute_z_3

Functor object type returning the \( z\) coordinate of a Point_3.

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

◆ Less_x_3

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

Must provide bool operator()(Point_3 p, Point_3 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_3

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

Must provide bool operator()(Point_3 p, Point_3 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.

◆ Less_z_3

Binary predicate object type comparing Point_3s along the \( z\) coordinate.

Must provide bool operator()(Point_3 p, Point_3 q) where true is returned iff \( p_z < q_z\), where \( p_z\) and \( q_z\) denote \( z\) coordinate of point \( p\) and \( q\), respectively.