\( \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 - dD Spatial Searching
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL::Fair< Traits, SpatialSeparator > Class Template Reference

#include <CGAL/Splitters.h>

Definition

Implements the fair splitting rule.

This splitting rule is a compromise between the median of rectangle splitting rule and the midpoint of rectangle splitting rule. This splitting rule maintains an upper bound on the maximal allowed ratio of the longest and shortest side of a rectangle (the value of this upper bound is set in the constructor of the fair splitting rule). Among the splits that satisfy this bound, it selects the one in which the points have the largest spread. It then splits the points in the most even manner possible, subject to maintaining the bound on the ratio of the resulting rectangles.

Template Parameters
Traitsmust be a model of the concept SearchTraits, for example CGAL::Search_traits_2.
SpatialSeparatormust be a model of the concept SpatialSeparator. It has as default value the type Plane_separator<Traits::FT>.
Is Model Of:
Splitter
See Also
Splitter
SpatialSeparator
Examples:
Spatial_searching/using_fair_splitting_rule.cpp.

Types

typedef Traits::FT FT
 Number type.
 

Creation

 Fair ()
 Default constructor.
 
 Fair (unsigned int bucket_size, FT aspect_ratio=FT(3))
 Constructor.