CGAL 5.1 - dD Spatial Searching
CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree > Class Template Reference

#include <CGAL/Orthogonal_incremental_neighbor_search.h>

Definition

template<typename Traits, typename OrthogonalDistance, typename Splitter, typename SpatialTree>
class CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >

The class Orthogonal_incremental_neighbor_search implements incremental nearest and furthest neighbor searching on a tree.

Template Parameters
Traitsmust be a model of the concept SearchTraits, for example Search_traits_2<Simple_cartesian<double> >.
OrthogonalDistancemust be a model of the concept OrthogonalDistance. If Traits is Search_traits_adapter<Key,PointPropertyMap,BaseTraits> the default type is Distance_adapter<Key,PointPropertyMap,Euclidean_distance<BaseTraits> >, and Euclidean_distance<Traits> otherwise.
Splittermust be a model of the concept Splitter. The default type is Sliding_midpoint<Traits>.
SpatialTreemust be a model of the concept SpatialTree. The default type is Kd_tree<Traits, Splitter, Tag_true, Tag_false>. The third template argument must be Tag_true because orthogonal search needs extended kd tree nodes.
See also
CGAL::Incremental_neighbor_search<Traits, GeneralDistance, SpatialTree>
Examples
Spatial_searching/distance_browsing.cpp.

Types

typedef Traits::Point_d Point_d
 Point type. More...
 
typedef Traits::FT FT
 Number type. More...
 
typedef OrthogonalDistance Distance
 Distance type. More...
 
typedef OrthogonalDistance::Query_item Query_item
 Query item. More...
 
typedef std::pair< Point_d, FTPoint_with_transformed_distance
 Pair of point and transformed distance. More...
 
typedef unspecified_type iterator
 const input iterator with value type Point_with_transformed_distance for enumerating approximate neighbors. More...
 
typedef SpatialTree Tree
 The tree type. More...
 

Creation

 Orthogonal_incremental_neighbor_search (SpatialTree &tree, Query_item query, FT eps=FT(0.0), bool search_nearest=true, OrthogonalDistance d=OrthogonalDistance())
 Constructor for incremental neighbor searching of the query item query in the points stored tree using a distance d and approximation factor eps. More...
 

Operations

iterator begin () const
 Returns a const iterator to the approximate nearest or furthest neighbor. More...
 
iterator end () const
 Returns the appropriate past-the-end const iterator. More...
 
std::ostream & statistics (std::ostream &s) const
 Inserts statistics of the search process into the output stream s. More...
 

Member Typedef Documentation

◆ Distance

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
typedef OrthogonalDistance CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::Distance

Distance type.

◆ FT

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
typedef Traits::FT CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::FT

Number type.

◆ iterator

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
typedef unspecified_type CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::iterator

const input iterator with value type Point_with_transformed_distance for enumerating approximate neighbors.

◆ Point_d

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
typedef Traits::Point_d CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::Point_d

Point type.

◆ Point_with_transformed_distance

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
typedef std::pair<Point_d,FT> CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::Point_with_transformed_distance

Pair of point and transformed distance.

◆ Query_item

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
typedef OrthogonalDistance::Query_item CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::Query_item

Query item.

◆ Tree

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
typedef SpatialTree CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::Tree

The tree type.

Constructor & Destructor Documentation

◆ Orthogonal_incremental_neighbor_search()

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::Orthogonal_incremental_neighbor_search ( SpatialTree tree,
Query_item  query,
FT  eps = FT(0.0),
bool  search_nearest = true,
OrthogonalDistance  d = OrthogonalDistance() 
)

Constructor for incremental neighbor searching of the query item query in the points stored tree using a distance d and approximation factor eps.

Member Function Documentation

◆ begin()

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
iterator CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::begin ( ) const

Returns a const iterator to the approximate nearest or furthest neighbor.

◆ end()

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
iterator CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::end ( ) const

Returns the appropriate past-the-end const iterator.

◆ statistics()

template<typename Traits , typename OrthogonalDistance , typename Splitter , typename SpatialTree >
std::ostream& CGAL::Orthogonal_incremental_neighbor_search< Traits, OrthogonalDistance, Splitter, SpatialTree >::statistics ( std::ostream &  s) const

Inserts statistics of the search process into the output stream s.