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

#include <CGAL/Fuzzy_iso_box.h>

Definition

The class Fuzzy_iso_box implements fuzzy d-dimensional iso boxes.

A fuzzy iso box with fuzziness value \( \epsilon\) has as outer approximation a box dilated, and as inner approximation a box eroded by a d-dim square with side length \( \epsilon\).

Template Parameters
Traitsmust be a model of the concept SearchTraits, for example CGAL::Search_traits_2<CGAL::Simple_cartesian<double> >.
Is Model Of:
FuzzyQueryItem
See Also
FuzzyQueryItem
Examples:
Spatial_searching/fuzzy_range_query.cpp, and Spatial_searching/iso_rectangle_2_query.cpp.

Types

typedef unspecified_type D
 Dimension Tag.
 
typedef Traits::Point_d Point_d
 Point type.
 
typedef Traits::FT FT
 Number type.
 

Creation

 Fuzzy_iso_box (Point_d p, Point_d q, FT epsilon=FT(0), Traits t=Traits())
 Constructs a fuzzy iso box specified by the minimal iso box containing p and q and fuzziness value epsilon. More...
 
 Fuzzy_iso_box (Traits::Base::Point_d p, Traits::Base::Point_d q, FT epsilon=FT(0), Traits t=Traits())
 Constructs a fuzzy iso box specified by the minimal iso box containing p and q and fuzziness value epsilon. More...
 

Operations

bool contains (Point_d p) const
 test whether the fuzzy iso box contains p.
 
bool inner_range_intersects (const Kd_tree_rectangle< FT, D > &rectangle) const
 test whether the inner box intersects the rectangle associated with a node of a tree.
 
bool outer_range_contains (const Kd_tree_rectangle< FT, D > &rectangle) const
 test whether the outer box encloses the rectangle associated with a node of a tree.
 

Constructor & Destructor Documentation

template<typename Traits >
CGAL::Fuzzy_iso_box< Traits >::Fuzzy_iso_box ( Point_d  p,
Point_d  q,
FT  epsilon = FT(0),
Traits  t = Traits() 
)

Constructs a fuzzy iso box specified by the minimal iso box containing p and q and fuzziness value epsilon.

Precondition
p must be lexicographically smaller than q.
template<typename Traits >
CGAL::Fuzzy_iso_box< Traits >::Fuzzy_iso_box ( Traits::Base::Point_d  p,
Traits::Base::Point_d  q,
FT  epsilon = FT(0),
Traits  t = Traits() 
)

Constructs a fuzzy iso box specified by the minimal iso box containing p and q and fuzziness value epsilon.

Attention
Only available in case Traits is Search_traits_adapter<Key,PointPropertyMap,BaseTraits>.
Precondition
p must be lexicographically smaller than q.