|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r82824 - in sandbox-branches/geometry/index: boost/geometry/index boost/geometry/index/adaptors boost/geometry/index/detail boost/geometry/index/detail/rtree boost/geometry/index/detail/rtree/visitors doc doc/generated doc/html doc/html/geometry_index doc/html/geometry_index/r_tree doc/rtree test test/rtree tests
From: adam.wulkiewicz_at_[hidden]
Date: 2013-02-11 14:11:46
Author: awulkiew
Date: 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
New Revision: 82824
URL: http://svn.boost.org/trac/boost/changeset/82824
Log:
Removed
spatial_query(), nearest_query(),
related adaptors,
distance predicates generators bounded(), min_bounded() etc.,
detail static_vector renamed to varray.
Docs and tests updated.
Added:
sandbox-branches/geometry/index/doc/generated/nearest_relations.qbk (contents, props changed)
sandbox-branches/geometry/index/test/varray.cpp (contents, props changed)
Removed:
sandbox-branches/geometry/index/boost/geometry/index/adaptors/nearest_query.hpp
sandbox-branches/geometry/index/boost/geometry/index/adaptors/spatial_query.hpp
sandbox-branches/geometry/index/doc/generated/distance_predicates.qbk
sandbox-branches/geometry/index/test/static_vector.cpp
Text files modified:
sandbox-branches/geometry/index/boost/geometry/index/detail/distance_predicates.hpp | 844 ++--
sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp | 45
sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/adaptors.hpp | 56
sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/visitors/gl_draw.hpp | 2
sandbox-branches/geometry/index/boost/geometry/index/distance_predicates.hpp | 56
sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp | 78
sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp | 642 ---
sandbox-branches/geometry/index/doc/generated/adaptors.qbk | 59
sandbox-branches/geometry/index/doc/generated/predicates.qbk | 94
sandbox-branches/geometry/index/doc/generated/rtree.qbk | 457 --
sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk | 270 -
sandbox-branches/geometry/index/doc/generated/translator_index.qbk | 3
sandbox-branches/geometry/index/doc/html/geometry_index/introduction.html | 2
sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html | 6
sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/creation_and_modification.html | 10
sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/introduction.html | 28
sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html | 171
sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html | 7704 +++++++++++----------------------------
sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/rtree_quickstart.html | 4
sandbox-branches/geometry/index/doc/html/index.html | 4
sandbox-branches/geometry/index/doc/make_qbk.py | 2
sandbox-branches/geometry/index/doc/rtree.qbk | 2
sandbox-branches/geometry/index/doc/rtree/query.qbk | 94
sandbox-branches/geometry/index/test/Jamfile.v2 | 2
sandbox-branches/geometry/index/test/rtree/test_rtree.hpp | 150
sandbox-branches/geometry/index/tests/additional_glut_vis.cpp | 27
sandbox-branches/geometry/index/tests/additional_sizes_and_times.cpp | 47
sandbox-branches/geometry/index/tests/additional_speed.cpp | 35
28 files changed, 2930 insertions(+), 7964 deletions(-)
Deleted: sandbox-branches/geometry/index/boost/geometry/index/adaptors/nearest_query.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/adaptors/nearest_query.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
+++ (empty file)
@@ -1,122 +0,0 @@
-// Boost.Geometry Index
-//
-// Nearest neighbour query range adaptor
-//
-// Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
-//
-// Use, modification and distribution is subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_GEOMETRY_INDEX_ADAPTORS_NEAREST_QUERY_HPP
-#define BOOST_GEOMETRY_INDEX_ADAPTORS_NEAREST_QUERY_HPP
-
-/*!
-\defgroup adaptors Adaptors (boost::geometry::index::adaptors::)
-*/
-
-namespace boost { namespace geometry { namespace index {
-
-namespace adaptors {
-
-namespace detail {
-
-template <typename Index>
-class nearest_query_range
-{
- BOOST_MPL_ASSERT_MSG(
- (false),
- NOT_IMPLEMENTED_FOR_THIS_INDEX,
- (nearest_query_range));
-
- typedef int* iterator;
- typedef const int* const_iterator;
-
- template <typename DistancesPredicates, typename Predicates>
- inline nearest_query_range(
- Index const&,
- DistancesPredicates const&,
- size_t,
- Predicates const&
- )
- {}
-
- inline iterator begin() { return 0; }
- inline iterator end() { return 0; }
- inline const_iterator begin() const { return 0; }
- inline const_iterator end() const { return 0; }
-};
-
-// TODO: awulkiew - consider removing references from predicates
-
-template<typename DistancesPredicates, typename Predicates>
-struct nearest_query
-{
- inline nearest_query(
- DistancesPredicates const& dpred,
- size_t k,
- Predicates const& pred
- )
- : distances_predicates(dpred)
- , count(k)
- , predicates(pred)
- {}
-
- DistancesPredicates const& distances_predicates;
- size_t count;
- Predicates const& predicates;
-};
-
-} // namespace detail
-
-/*!
-\brief The nearest query index adaptor generator.
-
-\ingroup adaptors
-
-\param dpred Distance predicates.
-\param k The number of values to find.
-\param pred Spatial predicates.
-*/
-template <typename DistancesPredicates, typename Predicates>
-detail::nearest_query<DistancesPredicates, Predicates>
-nearest_queried(
- DistancesPredicates const& dpred,
- size_t k,
- Predicates const& pred)
-{
- return detail::nearest_query<DistancesPredicates, Predicates>(dpred, k, pred);
-}
-
-/*!
-\brief The nearest query index adaptor generator.
-
-\ingroup adaptors
-
-\param dpred Distance predicates.
-\param k The number of values to find.
-*/
-template <typename DistancesPredicates>
-detail::nearest_query<DistancesPredicates, index::detail::empty>
-nearest_queried(
- DistancesPredicates const& dpred,
- size_t k)
-{
- return detail::nearest_query<DistancesPredicates, index::detail::empty>(dpred, k, index::detail::empty());
-}
-
-} // namespace adaptors
-
-template<typename Index, typename DistancesPredicates, typename Predicates>
-index::adaptors::detail::nearest_query_range<Index>
-operator|(
- Index const& si,
- index::adaptors::detail::nearest_query<DistancesPredicates, Predicates> const& f)
-{
- return index::adaptors::detail::nearest_query_range<Index>(
- si, f.distances_predicates, f.count, f.predicates);
-}
-
-}}} // namespace boost::geometry::index
-
-#endif // BOOST_GEOMETRY_INDEX_ADAPTORS_NEAREST_QUERY_HPP
Deleted: sandbox-branches/geometry/index/boost/geometry/index/adaptors/spatial_query.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/adaptors/spatial_query.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
+++ (empty file)
@@ -1,88 +0,0 @@
-// Boost.Geometry Index
-//
-// Spatial query range adaptor
-//
-// Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
-//
-// Use, modification and distribution is subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_GEOMETRY_INDEX_ADAPTORS_SPATIAL_QUERY_HPP
-#define BOOST_GEOMETRY_INDEX_ADAPTORS_SPATIAL_QUERY_HPP
-
-/*!
-\defgroup adaptors Adaptors (boost::geometry::index::adaptors::)
-*/
-
-namespace boost { namespace geometry { namespace index {
-
-namespace adaptors {
-
-namespace detail {
-
-template <typename Index>
-class spatial_query_range
-{
- BOOST_MPL_ASSERT_MSG(
- (false),
- NOT_IMPLEMENTED_FOR_THIS_INDEX,
- (spatial_query_range));
-
- typedef int* iterator;
- typedef const int* const_iterator;
-
- template <typename Predicates>
- inline spatial_query_range(
- Index const&,
- Predicates const&)
- {}
-
- inline iterator begin() { return 0; }
- inline iterator end() { return 0; }
- inline const_iterator begin() const { return 0; }
- inline const_iterator end() const { return 0; }
-};
-
-// TODO: awulkiew - consider removing reference from predicates
-
-template<typename Predicates>
-struct spatial_query
-{
- inline explicit spatial_query(Predicates const& pred)
- : predicates(pred)
- {}
-
- Predicates const& predicates;
-};
-
-} // namespace detail
-
-/*!
-\brief The spatial query index adaptor generator.
-
-\ingroup adaptors
-
-\param pred Spatial predicates.
-*/
-template <typename Predicates>
-detail::spatial_query<Predicates>
-spatial_queried(Predicates const& pred)
-{
- return detail::spatial_query<Predicates>(pred);
-}
-
-} // namespace adaptors
-
-template<typename Index, typename Predicates>
-index::adaptors::detail::spatial_query_range<Index>
-operator|(
- Index const& si,
- index::adaptors::detail::spatial_query<Predicates> const& f)
-{
- return index::adaptors::detail::spatial_query_range<Index>(si, f.predicates);
-}
-
-}}} // namespace boost::geometry::index
-
-#endif // BOOST_GEOMETRY_INDEX_ADAPTORS_SPATIAL_QUERY_HPP
Modified: sandbox-branches/geometry/index/boost/geometry/index/detail/distance_predicates.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/detail/distance_predicates.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/detail/distance_predicates.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -103,74 +103,74 @@
// distance predicates
// ------------------------------------------------------------------ //
-template <typename PointRelation>
-struct unbounded
- : nonassignable
-{
- inline explicit unbounded(PointRelation const& pr)
- : point_relation(pr)
- {}
-
- PointRelation point_relation;
-};
-
-template <typename PointRelation, typename MinRelation>
-struct min_bounded
- : nonassignable
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename geometry::default_distance_result<point_type, point_type>::type distance_type;
-
- inline min_bounded(PointRelation const& pr, MinRelation const& min_rel)
- : point_relation(pr)
- , comparable_min(
- relation<MinRelation>::value(min_rel) *
- relation<MinRelation>::value(min_rel) )
- {}
-
- PointRelation point_relation;
- distance_type comparable_min;
-};
-
-template <typename PointRelation, typename MaxRelation>
-struct max_bounded
- : nonassignable
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename geometry::default_distance_result<point_type, point_type>::type distance_type;
-
- inline max_bounded(PointRelation const& pr, MaxRelation const& max_rel)
- : point_relation(pr)
- , comparable_max(
- relation<MaxRelation>::value(max_rel) *
- relation<MaxRelation>::value(max_rel) )
- {}
-
- PointRelation point_relation;
- distance_type comparable_max;
-};
-
-template <typename PointRelation, typename MinRelation, typename MaxRelation>
-struct bounded
- : nonassignable
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename geometry::default_distance_result<point_type, point_type>::type distance_type;
-
- inline bounded(PointRelation const& pr, MinRelation const& min_rel, MaxRelation const& max_rel)
- : point_relation(pr)
- , comparable_min(
- relation<MinRelation>::value(min_rel) *
- relation<MinRelation>::value(min_rel) )
- , comparable_max(
- relation<MaxRelation>::value(max_rel) *
- relation<MaxRelation>::value(max_rel) )
- {}
-
- PointRelation point_relation;
- distance_type comparable_min;
- distance_type comparable_max;
-};
+//template <typename PointRelation>
+//struct unbounded
+// : nonassignable
+//{
+// inline explicit unbounded(PointRelation const& pr)
+// : point_relation(pr)
+// {}
+//
+// PointRelation point_relation;
+//};
+//
+//template <typename PointRelation, typename MinRelation>
+//struct min_bounded
+// : nonassignable
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename geometry::default_distance_result<point_type, point_type>::type distance_type;
+//
+// inline min_bounded(PointRelation const& pr, MinRelation const& min_rel)
+// : point_relation(pr)
+// , comparable_min(
+// relation<MinRelation>::value(min_rel) *
+// relation<MinRelation>::value(min_rel) )
+// {}
+//
+// PointRelation point_relation;
+// distance_type comparable_min;
+//};
+//
+//template <typename PointRelation, typename MaxRelation>
+//struct max_bounded
+// : nonassignable
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename geometry::default_distance_result<point_type, point_type>::type distance_type;
+//
+// inline max_bounded(PointRelation const& pr, MaxRelation const& max_rel)
+// : point_relation(pr)
+// , comparable_max(
+// relation<MaxRelation>::value(max_rel) *
+// relation<MaxRelation>::value(max_rel) )
+// {}
+//
+// PointRelation point_relation;
+// distance_type comparable_max;
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename MaxRelation>
+//struct bounded
+// : nonassignable
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename geometry::default_distance_result<point_type, point_type>::type distance_type;
+//
+// inline bounded(PointRelation const& pr, MinRelation const& min_rel, MaxRelation const& max_rel)
+// : point_relation(pr)
+// , comparable_min(
+// relation<MinRelation>::value(min_rel) *
+// relation<MinRelation>::value(min_rel) )
+// , comparable_max(
+// relation<MaxRelation>::value(max_rel) *
+// relation<MaxRelation>::value(max_rel) )
+// {}
+//
+// PointRelation point_relation;
+// distance_type comparable_min;
+// distance_type comparable_max;
+//};
// ------------------------------------------------------------------ //
// point_relation trait
@@ -182,29 +182,29 @@
typedef PointRelation type;
};
-template <typename PointRelation>
-struct point_relation< detail::unbounded<PointRelation> >
-{
- typedef PointRelation type;
-};
-
-template <typename PointRelation, typename MinRelation>
-struct point_relation< detail::min_bounded<PointRelation, MinRelation> >
-{
- typedef PointRelation type;
-};
-
-template <typename PointRelation, typename MaxRelation>
-struct point_relation< detail::max_bounded<PointRelation, MaxRelation> >
-{
- typedef PointRelation type;
-};
-
-template <typename PointRelation, typename MinRelation, typename MaxRelation>
-struct point_relation< detail::bounded<PointRelation, MinRelation, MaxRelation> >
-{
- typedef PointRelation type;
-};
+//template <typename PointRelation>
+//struct point_relation< detail::unbounded<PointRelation> >
+//{
+// typedef PointRelation type;
+//};
+//
+//template <typename PointRelation, typename MinRelation>
+//struct point_relation< detail::min_bounded<PointRelation, MinRelation> >
+//{
+// typedef PointRelation type;
+//};
+//
+//template <typename PointRelation, typename MaxRelation>
+//struct point_relation< detail::max_bounded<PointRelation, MaxRelation> >
+//{
+// typedef PointRelation type;
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename MaxRelation>
+//struct point_relation< detail::bounded<PointRelation, MinRelation, MaxRelation> >
+//{
+// typedef PointRelation type;
+//};
// ------------------------------------------------------------------ //
// helpers
@@ -471,111 +471,111 @@
}
};
-template <typename PointRelation, typename Indexable>
-struct distances_calc<
- detail::unbounded<PointRelation>,
- Indexable,
- value_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename detail::relation<PointRelation>::tag point_relation_tag;
- typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
-
- typedef detail::cdist<distance_type, point_relation_tag> result_type;
-
- static inline result_type apply(detail::unbounded<PointRelation> const& pp, Indexable const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Indexable>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename Indexable>
-struct distances_calc<
- detail::min_bounded<PointRelation, MinRelation>,
- Indexable,
- value_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename detail::relation<PointRelation>::tag point_relation_tag;
- typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
- typedef typename detail::relation<MinRelation>::tag min_relation_tag;
-
- typedef typename detail::cdist_merge<
- cdist<distance_type, point_relation_tag>,
- cdist<distance_type, min_relation_tag>
- >::type result_type;
-
- static inline result_type apply(detail::min_bounded<PointRelation, MinRelation> const& pp, Indexable const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Indexable>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
-
-template <typename PointRelation, typename MaxRelation, typename Indexable>
-struct distances_calc<
- detail::max_bounded<PointRelation, MaxRelation>,
- Indexable,
- value_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename detail::relation<PointRelation>::tag point_relation_tag;
- typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
- typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
-
- typedef typename detail::cdist_merge<
- cdist<distance_type, point_relation_tag>,
- cdist<distance_type, max_relation_tag>
- >::type result_type;
-
- static inline result_type apply(detail::max_bounded<PointRelation, MaxRelation> const& pp, Indexable const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Indexable>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Indexable>
-struct distances_calc<
- detail::bounded<PointRelation, MinRelation, MaxRelation>,
- Indexable,
- value_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename detail::relation<PointRelation>::tag point_relation_tag;
- typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
- typedef typename detail::relation<MinRelation>::tag min_relation_tag;
- typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
-
- typedef typename detail::cdist_merge<
- typename detail::cdist_merge<
- cdist<distance_type, point_relation_tag>,
- cdist<distance_type, min_relation_tag>
- >::type,
- cdist<distance_type, max_relation_tag>
- >::type result_type;
-
- static inline result_type apply(
- detail::bounded<PointRelation, MinRelation, MaxRelation> const& pp,
- Indexable const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Indexable>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
+//template <typename PointRelation, typename Indexable>
+//struct distances_calc<
+// detail::unbounded<PointRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename detail::relation<PointRelation>::tag point_relation_tag;
+// typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
+//
+// typedef detail::cdist<distance_type, point_relation_tag> result_type;
+//
+// static inline result_type apply(detail::unbounded<PointRelation> const& pp, Indexable const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Indexable>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename Indexable>
+//struct distances_calc<
+// detail::min_bounded<PointRelation, MinRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename detail::relation<PointRelation>::tag point_relation_tag;
+// typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
+// typedef typename detail::relation<MinRelation>::tag min_relation_tag;
+//
+// typedef typename detail::cdist_merge<
+// cdist<distance_type, point_relation_tag>,
+// cdist<distance_type, min_relation_tag>
+// >::type result_type;
+//
+// static inline result_type apply(detail::min_bounded<PointRelation, MinRelation> const& pp, Indexable const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Indexable>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
+//
+//template <typename PointRelation, typename MaxRelation, typename Indexable>
+//struct distances_calc<
+// detail::max_bounded<PointRelation, MaxRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename detail::relation<PointRelation>::tag point_relation_tag;
+// typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
+// typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
+//
+// typedef typename detail::cdist_merge<
+// cdist<distance_type, point_relation_tag>,
+// cdist<distance_type, max_relation_tag>
+// >::type result_type;
+//
+// static inline result_type apply(detail::max_bounded<PointRelation, MaxRelation> const& pp, Indexable const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Indexable>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Indexable>
+//struct distances_calc<
+// detail::bounded<PointRelation, MinRelation, MaxRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename detail::relation<PointRelation>::tag point_relation_tag;
+// typedef typename geometry::default_distance_result<point_type, Indexable>::type distance_type;
+// typedef typename detail::relation<MinRelation>::tag min_relation_tag;
+// typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
+//
+// typedef typename detail::cdist_merge<
+// typename detail::cdist_merge<
+// cdist<distance_type, point_relation_tag>,
+// cdist<distance_type, min_relation_tag>
+// >::type,
+// cdist<distance_type, max_relation_tag>
+// >::type result_type;
+//
+// static inline result_type apply(
+// detail::bounded<PointRelation, MinRelation, MaxRelation> const& pp,
+// Indexable const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Indexable>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
// ------------------------------------------------------------------ //
// distance_predicates_check for value_tag
@@ -591,79 +591,79 @@
}
};
-template <typename PointRelation, typename Indexable>
-struct distances_predicates_check<
- detail::unbounded<PointRelation>,
- Indexable,
- value_tag
->
-{
- template <typename Distances>
- static inline bool apply(detail::unbounded<PointRelation> const&, Distances const&)
- {
- return true;
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename Indexable>
-struct distances_predicates_check<
- detail::min_bounded<PointRelation, MinRelation>,
- Indexable,
- value_tag
->
-{
- typedef typename detail::relation<MinRelation>::tag min_relation_tag;
-
- template <typename Distances>
- static inline bool apply(
- detail::min_bounded<PointRelation, MinRelation> const& pred,
- Distances const& d)
- {
- return pred.comparable_min <=
- detail::cdist_value<Distances>::template get<min_relation_tag>(d);
- }
-};
-
-template <typename PointRelation, typename MaxRelation, typename Indexable>
-struct distances_predicates_check<
- detail::max_bounded<PointRelation, MaxRelation>,
- Indexable,
- value_tag
->
-{
- typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
-
- template <typename Distances>
- static inline bool apply(
- detail::max_bounded<PointRelation, MaxRelation> const& pred,
- Distances const& d)
- {
- return pred.comparable_max <=
- detail::cdist_value<Distances>::template get<max_relation_tag>(d);
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Indexable>
-struct distances_predicates_check<
- detail::bounded<PointRelation, MinRelation, MaxRelation>,
- Indexable,
- value_tag
->
-{
- typedef typename detail::relation<MinRelation>::tag min_relation_tag;
- typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
-
- template <typename Distances>
- static inline bool apply(
- detail::bounded<PointRelation, MinRelation, MaxRelation> const& pred,
- Distances const& d)
- {
- return pred.comparable_min
- <= detail::cdist_value<Distances>::template get<min_relation_tag>(d)
- && detail::cdist_value<Distances>::template get<max_relation_tag>(d)
- <= pred.comparable_max;
- }
-};
+//template <typename PointRelation, typename Indexable>
+//struct distances_predicates_check<
+// detail::unbounded<PointRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// template <typename Distances>
+// static inline bool apply(detail::unbounded<PointRelation> const&, Distances const&)
+// {
+// return true;
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename Indexable>
+//struct distances_predicates_check<
+// detail::min_bounded<PointRelation, MinRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// typedef typename detail::relation<MinRelation>::tag min_relation_tag;
+//
+// template <typename Distances>
+// static inline bool apply(
+// detail::min_bounded<PointRelation, MinRelation> const& pred,
+// Distances const& d)
+// {
+// return pred.comparable_min <=
+// detail::cdist_value<Distances>::template get<min_relation_tag>(d);
+// }
+//};
+//
+//template <typename PointRelation, typename MaxRelation, typename Indexable>
+//struct distances_predicates_check<
+// detail::max_bounded<PointRelation, MaxRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
+//
+// template <typename Distances>
+// static inline bool apply(
+// detail::max_bounded<PointRelation, MaxRelation> const& pred,
+// Distances const& d)
+// {
+// return pred.comparable_max <=
+// detail::cdist_value<Distances>::template get<max_relation_tag>(d);
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Indexable>
+//struct distances_predicates_check<
+// detail::bounded<PointRelation, MinRelation, MaxRelation>,
+// Indexable,
+// value_tag
+//>
+//{
+// typedef typename detail::relation<MinRelation>::tag min_relation_tag;
+// typedef typename detail::relation<MaxRelation>::tag max_relation_tag;
+//
+// template <typename Distances>
+// static inline bool apply(
+// detail::bounded<PointRelation, MinRelation, MaxRelation> const& pred,
+// Distances const& d)
+// {
+// return pred.comparable_min
+// <= detail::cdist_value<Distances>::template get<min_relation_tag>(d)
+// && detail::cdist_value<Distances>::template get<max_relation_tag>(d)
+// <= pred.comparable_max;
+// }
+//};
// ------------------------------------------------------------------ //
// distance_calc for envelope_tag
@@ -689,95 +689,95 @@
}
};
-template <typename PointRelation, typename Box>
-struct distances_calc<
- detail::unbounded<PointRelation>,
- Box,
- envelope_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
-
- typedef detail::cdist<distance_type, detail::to_nearest_tag> result_type;
-
- static inline result_type apply(detail::unbounded<PointRelation> const& pp, Box const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Box>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename Box>
-struct distances_calc<
- detail::min_bounded<PointRelation, MinRelation>,
- Box,
- envelope_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
-
- typedef typename detail::cdist_merge<
- cdist<distance_type, detail::to_nearest_tag>,
- cdist<distance_type, detail::to_furthest_tag>
- >::type result_type;
-
- static inline result_type apply(detail::min_bounded<PointRelation, MinRelation> const& pp, Box const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Box>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
-
-template <typename PointRelation, typename MaxRelation, typename Box>
-struct distances_calc<
- detail::max_bounded<PointRelation, MaxRelation>,
- Box,
- envelope_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
-
- typedef cdist<distance_type, detail::to_nearest_tag> result_type;
-
- static inline result_type apply(detail::max_bounded<PointRelation, MaxRelation> const& pp, Box const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Box>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Box>
-struct distances_calc<
- detail::bounded<PointRelation, MinRelation, MaxRelation>,
- Box,
- envelope_tag
->
-{
- typedef typename detail::relation<PointRelation>::value_type point_type;
- typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
-
- typedef typename detail::cdist_merge<
- cdist<distance_type, detail::to_nearest_tag>,
- cdist<distance_type, detail::to_furthest_tag>
- >::type result_type;
-
- static inline result_type apply(detail::bounded<PointRelation, MinRelation, MaxRelation> const& pp, Box const& i)
- {
- result_type res;
- distances_calc_impl<result_type, point_type, Box>
- ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
- return res;
- }
-};
+//template <typename PointRelation, typename Box>
+//struct distances_calc<
+// detail::unbounded<PointRelation>,
+// Box,
+// envelope_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
+//
+// typedef detail::cdist<distance_type, detail::to_nearest_tag> result_type;
+//
+// static inline result_type apply(detail::unbounded<PointRelation> const& pp, Box const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Box>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename Box>
+//struct distances_calc<
+// detail::min_bounded<PointRelation, MinRelation>,
+// Box,
+// envelope_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
+//
+// typedef typename detail::cdist_merge<
+// cdist<distance_type, detail::to_nearest_tag>,
+// cdist<distance_type, detail::to_furthest_tag>
+// >::type result_type;
+//
+// static inline result_type apply(detail::min_bounded<PointRelation, MinRelation> const& pp, Box const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Box>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
+//
+//template <typename PointRelation, typename MaxRelation, typename Box>
+//struct distances_calc<
+// detail::max_bounded<PointRelation, MaxRelation>,
+// Box,
+// envelope_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
+//
+// typedef cdist<distance_type, detail::to_nearest_tag> result_type;
+//
+// static inline result_type apply(detail::max_bounded<PointRelation, MaxRelation> const& pp, Box const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Box>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Box>
+//struct distances_calc<
+// detail::bounded<PointRelation, MinRelation, MaxRelation>,
+// Box,
+// envelope_tag
+//>
+//{
+// typedef typename detail::relation<PointRelation>::value_type point_type;
+// typedef typename geometry::default_distance_result<point_type, Box>::type distance_type;
+//
+// typedef typename detail::cdist_merge<
+// cdist<distance_type, detail::to_nearest_tag>,
+// cdist<distance_type, detail::to_furthest_tag>
+// >::type result_type;
+//
+// static inline result_type apply(detail::bounded<PointRelation, MinRelation, MaxRelation> const& pp, Box const& i)
+// {
+// result_type res;
+// distances_calc_impl<result_type, point_type, Box>
+// ::apply(res, relation<PointRelation>::value(pp.point_relation), i);
+// return res;
+// }
+//};
// ------------------------------------------------------------------ //
// distance_predicates_check for envelope_tag
@@ -796,70 +796,70 @@
}
};
-template <typename PointRelation, typename Box>
-struct distances_predicates_check<
- detail::unbounded<PointRelation>,
- Box,
- envelope_tag>
-{
- template <typename Distances>
- static inline bool apply(
- detail::unbounded<PointRelation> const&,
- Distances const&)
- {
- return true;
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename Box>
-struct distances_predicates_check<
- detail::min_bounded<PointRelation, MinRelation>,
- Box,
- envelope_tag>
-{
- template <typename Distances>
- static inline bool apply(
- detail::min_bounded<PointRelation, MinRelation> const& pred,
- Distances const& d)
- {
- return pred.comparable_min
- <= cdist_value<Distances>::template get<detail::to_furthest_tag>(d);
- }
-};
-
-template <typename PointRelation, typename MaxRelation, typename Box>
-struct distances_predicates_check<
- detail::max_bounded<PointRelation, MaxRelation>,
- Box,
- envelope_tag>
-{
- template <typename Distances>
- static inline bool apply(
- detail::max_bounded<PointRelation, MaxRelation> const& pred,
- Distances const& d)
- {
- return cdist_value<Distances>::template get<detail::to_nearest_tag>(d)
- <= pred.comparable_max;
- }
-};
-
-template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Box>
-struct distances_predicates_check<
- detail::bounded<PointRelation, MinRelation, MaxRelation>,
- Box,
- envelope_tag>
-{
- template <typename Distances>
- static inline bool apply(
- detail::bounded<PointRelation, MinRelation, MaxRelation> const& pred,
- Distances const& d)
- {
- return pred.comparable_min
- <= cdist_value<Distances>::template get<detail::to_furthest_tag>(d)
- && cdist_value<Distances>::template get<detail::to_nearest_tag>(d)
- <= pred.comparable_max;
- }
-};
+//template <typename PointRelation, typename Box>
+//struct distances_predicates_check<
+// detail::unbounded<PointRelation>,
+// Box,
+// envelope_tag>
+//{
+// template <typename Distances>
+// static inline bool apply(
+// detail::unbounded<PointRelation> const&,
+// Distances const&)
+// {
+// return true;
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename Box>
+//struct distances_predicates_check<
+// detail::min_bounded<PointRelation, MinRelation>,
+// Box,
+// envelope_tag>
+//{
+// template <typename Distances>
+// static inline bool apply(
+// detail::min_bounded<PointRelation, MinRelation> const& pred,
+// Distances const& d)
+// {
+// return pred.comparable_min
+// <= cdist_value<Distances>::template get<detail::to_furthest_tag>(d);
+// }
+//};
+//
+//template <typename PointRelation, typename MaxRelation, typename Box>
+//struct distances_predicates_check<
+// detail::max_bounded<PointRelation, MaxRelation>,
+// Box,
+// envelope_tag>
+//{
+// template <typename Distances>
+// static inline bool apply(
+// detail::max_bounded<PointRelation, MaxRelation> const& pred,
+// Distances const& d)
+// {
+// return cdist_value<Distances>::template get<detail::to_nearest_tag>(d)
+// <= pred.comparable_max;
+// }
+//};
+//
+//template <typename PointRelation, typename MinRelation, typename MaxRelation, typename Box>
+//struct distances_predicates_check<
+// detail::bounded<PointRelation, MinRelation, MaxRelation>,
+// Box,
+// envelope_tag>
+//{
+// template <typename Distances>
+// static inline bool apply(
+// detail::bounded<PointRelation, MinRelation, MaxRelation> const& pred,
+// Distances const& d)
+// {
+// return pred.comparable_min
+// <= cdist_value<Distances>::template get<detail::to_furthest_tag>(d)
+// && cdist_value<Distances>::template get<detail::to_nearest_tag>(d)
+// <= pred.comparable_max;
+// }
+//};
}}}} // namespace boost::geometry::index::detail
Modified: sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -26,7 +26,7 @@
struct value
{
value(Fun const& f) : fun(f) {}
- Fun fun;
+ Fun const& fun;
};
template <typename Geometry>
@@ -116,8 +116,6 @@
template <typename DistancePredicates>
struct nearest
{
- static const bool is_one = false;
-
nearest(DistancePredicates const& dpred, unsigned k)
: distance_predicates(dpred)
, count(k)
@@ -126,17 +124,6 @@
unsigned count;
};
-template <typename DistancePredicates>
-struct nearest_one
-{
- static const bool is_one = true;
-
- nearest_one(DistancePredicates const& dpred)
- : distance_predicates(dpred)
- {}
- DistancePredicates const& distance_predicates;
-};
-
// ------------------------------------------------------------------ //
// predicate_check
// ------------------------------------------------------------------ //
@@ -314,16 +301,6 @@
}
};
-template <typename DistancePredicates>
-struct predicate_check<nearest_one<DistancePredicates>, value_tag>
-{
- template <typename Value, typename Box>
- static inline bool apply(nearest_one<DistancePredicates> const&, Value const&, Box const&)
- {
- return true;
- }
-};
-
// ------------------------------------------------------------------ //
// predicates_chec for envelope
// ------------------------------------------------------------------ //
@@ -456,7 +433,7 @@
struct predicate_check<not_overlaps<Geometry>, envelope_tag>
{
template <typename Value, typename Box>
- static bool apply(not_overlaps<Geometry> const& p, Value const&, Box const& i)
+ static bool apply(not_overlaps<Geometry> const& , Value const&, Box const& )
{
return true;
}
@@ -492,16 +469,6 @@
}
};
-template <typename DistancePredicates>
-struct predicate_check<nearest_one<DistancePredicates>, envelope_tag>
-{
- template <typename Value, typename Box>
- static inline bool apply(nearest_one<DistancePredicates> const&, Value const&, Box const&)
- {
- return true;
- }
-};
-
// ------------------------------------------------------------------ //
// predicates_length
// ------------------------------------------------------------------ //
@@ -643,7 +610,7 @@
struct predicates_check_tuple<TuplePredicates, Tag, First, First>
{
template <typename Value, typename Indexable>
- static inline bool apply(TuplePredicates const& p, Value const& v, Indexable const& i)
+ static inline bool apply(TuplePredicates const& , Value const& , Indexable const& )
{
return true;
}
@@ -745,12 +712,6 @@
static const unsigned value = 1;
};
-template <typename DistancePredicates>
-struct predicates_is_nearest< nearest_one<DistancePredicates> >
-{
- static const unsigned value = 1;
-};
-
// predicates_count_nearest
template <typename T>
Modified: sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/adaptors.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/adaptors.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/adaptors.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -14,8 +14,6 @@
#include <deque>
#include <boost/static_assert.hpp>
-#include <boost/geometry/index/adaptors/spatial_query.hpp>
-#include <boost/geometry/index/adaptors/nearest_query.hpp>
#include <boost/geometry/index/adaptors/query.hpp>
namespace boost { namespace geometry { namespace index {
@@ -26,60 +24,6 @@
namespace adaptors { namespace detail {
template <typename Value, typename Options, typename Translator, typename Allocator>
-class spatial_query_range< index::rtree<Value, Options, Translator, Allocator> >
-{
-public:
- typedef std::vector<Value> result_type;
- typedef typename result_type::iterator iterator;
- typedef typename result_type::const_iterator const_iterator;
-
- template <typename Predicates>
- inline spatial_query_range(
- index::rtree<Value, Options, Translator, Allocator> const& rtree,
- Predicates const& pred
- )
- {
- rtree.spatial_query(pred, std::back_inserter(m_result));
- }
-
- inline iterator begin() { return m_result.begin(); }
- inline iterator end() { return m_result.end(); }
- inline const_iterator begin() const { return m_result.begin(); }
- inline const_iterator end() const { return m_result.end(); }
-
-private:
- result_type m_result;
-};
-
-template <typename Value, typename Options, typename Translator, typename Allocator>
-class nearest_query_range< index::rtree<Value, Options, Translator, Allocator> >
-{
-public:
- typedef std::vector<Value> result_type;
- typedef typename result_type::iterator iterator;
- typedef typename result_type::const_iterator const_iterator;
-
- template <typename DistancesPredicates, typename Predicates>
- inline nearest_query_range(
- index::rtree<Value, Options, Translator, Allocator> const& rtree,
- DistancesPredicates const& dpred,
- size_t k,
- Predicates const& pred
- )
- {
- rtree.nearest_query(dpred, k, pred, std::back_inserter(m_result));
- }
-
- inline iterator begin() { return m_result.begin(); }
- inline iterator end() { return m_result.end(); }
- inline const_iterator begin() const { return m_result.begin(); }
- inline const_iterator end() const { return m_result.end(); }
-
-private:
- result_type m_result;
-};
-
-template <typename Value, typename Options, typename Translator, typename Allocator>
class query_range< index::rtree<Value, Options, Translator, Allocator> >
{
public:
Modified: sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/visitors/gl_draw.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/visitors/gl_draw.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/detail/rtree/visitors/gl_draw.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -207,7 +207,7 @@
if ( !tree.empty() )
{
glColor3f(0.75f, 0.75f, 0.75f);
- detail::rtree::visitors::detail::gl_draw_indexable(tree.box(), 0);
+ detail::rtree::visitors::detail::gl_draw_indexable(tree.bounds(), 0);
}
detail::rtree::visitors::gl_draw<value_type, options_type, translator_type, box_type, allocators_type>
Modified: sandbox-branches/geometry/index/boost/geometry/index/distance_predicates.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/distance_predicates.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/distance_predicates.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -14,7 +14,7 @@
#include <boost/geometry/index/detail/distance_predicates.hpp>
/*!
-\defgroup distance_predicates Distance predicates (boost::geometry::index::)
+\defgroup nearest_relations Nearest relations (boost::geometry::index::)
*/
namespace boost { namespace geometry { namespace index {
@@ -31,7 +31,7 @@
to define distances bounds which indicates that Indexable's nearest point should be
closer or further than value v. This is default relation.
-\ingroup distance_predicates
+\ingroup nearest_relations
\tparam T Type of wrapped object. This may be a Point for PointRelation or CoordinateType for
MinRelation or MaxRelation
@@ -53,7 +53,7 @@
to define distances bounds which indicates that Indexable's centroid should be
closer or further than value v.
-\ingroup distance_predicates
+\ingroup nearest_relations
\tparam T Type of wrapped object. This may be a Point for PointRelation or some CoordinateType for
MinRelation or MaxRelation
@@ -76,7 +76,7 @@
to define distances bounds which indicates that Indexable's furthest point should be
closer or further than value v.
-\ingroup distance_predicates
+\ingroup nearest_relations
\tparam T Type of wrapped object. This may be a Point for PointRelation or some CoordinateType for
MinRelation or MaxRelation
@@ -106,12 +106,12 @@
\param pr The point relation. This may be generated by \c index::to_nearest(),
\c index::to_centroid() or \c index::to_furthest() with \c Point passed as a parameter.
*/
-template <typename PointRelation>
-inline detail::unbounded<PointRelation>
-unbounded(PointRelation const& pr)
-{
- return detail::unbounded<PointRelation>(pr);
-}
+//template <typename PointRelation>
+//inline detail::unbounded<PointRelation>
+//unbounded(PointRelation const& pr)
+//{
+// return detail::unbounded<PointRelation>(pr);
+//}
/*!
\brief Generate min_bounded() distance predicate.
@@ -132,12 +132,12 @@
\param minr The minimum bound relation. This may be generated by \c to_nearest(),
\c to_centroid() or \c to_furthest() with distance value passed as a parameter.
*/
-template <typename PointRelation, typename MinRelation>
-inline detail::min_bounded<PointRelation, MinRelation>
-min_bounded(PointRelation const& pr, MinRelation const& minr)
-{
- return detail::min_bounded<PointRelation, MinRelation>(pr, minr);
-}
+//template <typename PointRelation, typename MinRelation>
+//inline detail::min_bounded<PointRelation, MinRelation>
+//min_bounded(PointRelation const& pr, MinRelation const& minr)
+//{
+// return detail::min_bounded<PointRelation, MinRelation>(pr, minr);
+//}
/*!
\brief Generate max_bounded() distance predicate.
@@ -158,12 +158,12 @@
\param maxr The maximum bound relation. This may be generated by \c to_nearest(),
\c to_centroid() or \c to_furthest() with distance value passed as a parameter.
*/
-template <typename PointRelation, typename MaxRelation>
-inline detail::max_bounded<PointRelation, MaxRelation>
-max_bounded(PointRelation const& pr, MaxRelation const& maxr)
-{
- return detail::max_bounded<PointRelation, MaxRelation>(pr, maxr);
-}
+//template <typename PointRelation, typename MaxRelation>
+//inline detail::max_bounded<PointRelation, MaxRelation>
+//max_bounded(PointRelation const& pr, MaxRelation const& maxr)
+//{
+// return detail::max_bounded<PointRelation, MaxRelation>(pr, maxr);
+//}
/*!
\brief Generate bounded() distance predicate.
@@ -188,12 +188,12 @@
\param maxr The maximum bound relation. This may be generated by \c to_nearest(),
\c to_centroid() or \c to_furthest() with distance value passed as a parameter.
*/
-template <typename PointRelation, typename MinRelation, typename MaxRelation>
-inline detail::bounded<PointRelation, MinRelation, MaxRelation>
-bounded(PointRelation const& pr, MinRelation const& minr, MaxRelation const& maxr)
-{
- return detail::bounded<PointRelation, MinRelation, MaxRelation>(pr, minr, maxr);
-}
+//template <typename PointRelation, typename MinRelation, typename MaxRelation>
+//inline detail::bounded<PointRelation, MinRelation, MaxRelation>
+//bounded(PointRelation const& pr, MinRelation const& minr, MaxRelation const& maxr)
+//{
+// return detail::bounded<PointRelation, MinRelation, MaxRelation>(pr, minr, maxr);
+//}
}}} // namespace boost::geometry::index
Modified: sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -164,7 +164,7 @@
When nearest predicate is passed to the query, k-nearest neighbour search will be performed.
-<b>Distances predicates</b> may be a \c Point. In this the case values closest to \c Point are returned.
+The simplest way of defining the knn query is passing a \c Point to which \c Values must be closest.
It is possible to define how distance between values and query Point is calculated. This is done by passing PointRelation.
It can be generated by following functions:
@@ -172,90 +172,26 @@
\li \c boost::geometry::index::to_centroid(),
\li \c boost::geometry::index::to_furthest().
-It is possible to define distances bounds, for example that a distance must be between
-min_distance and max_distance. This is done by passing DistancesPredicates which can be generated
-by following functions:
-\li \c boost::geometry::index::unbounded() - default,
-\li \c boost::geometry::index::min_bounded(),
-\li \c boost::geometry::index::max_bounded(),
-\li \c boost::geometry::index::bounded().
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-\li \c boost::geometry::index::to_nearest(),
-\li \c boost::geometry::index::to_centroid(),
-\li \c boost::geometry::index::to_furthest().
-
\par Example
\verbatim
tree.query(bgi::nearest(pt, 5), std::back_inserter(result));
tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
tree.query(bgi::nearest(bgi::to_centroid(pt), 5) && bgi::within(box), std::back_inserter(result));
-tree.query(bgi::nearest(bgi::bounded(pt, bgi::to_furthest(10), bgi::to_nearest(20)), 5), std::back_inserter(result));
-\endverbatim
-
-\warning
-Only one \c nearest() predicate may be used in a query.
-This version may be used only in queries returning a set of values - using output iterator.
-
-\ingroup predicates
-
-\param dpred The distance predicates.
-\param k The maximum number of values to return.
-*/
-template <typename DistancePredicates> inline
-detail::nearest<DistancePredicates>
-nearest(DistancePredicates const& dpred, unsigned k)
-{
- return detail::nearest<DistancePredicates>(dpred, k);
-}
-
-/*!
-\brief Generate nearest predicate.
-
-When nearest predicate is passed to the query, k-nearest neighbour search will be performed.
-
-<b>Distances predicates</b> may be a \c Point. In this the case value closest to \c Point is returned.
-
-It is possible to define how distance between value and query Point is calculated. This is done by passing PointRelation.
-It can be generated by following functions:
-\li \c boost::geometry::index::to_nearest() - default,
-\li \c boost::geometry::index::to_centroid(),
-\li \c boost::geometry::index::to_furthest().
-
-It is possible to define distances bounds, for example that a distance must be between
-min_distance and max_distance. This is done by passing DistancesPredicates which can be generated
-by following functions:
-\li \c boost::geometry::index::unbounded() - default,
-\li \c boost::geometry::index::min_bounded(),
-\li \c boost::geometry::index::max_bounded(),
-\li \c boost::geometry::index::bounded().
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-\li \c boost::geometry::index::to_nearest(),
-\li \c boost::geometry::index::to_centroid(),
-\li \c boost::geometry::index::to_furthest().
-
-\par Example
-\verbatim
-tree.query(bgi::nearest(pt), value);
-tree.query(bgi::nearest(pt) && bgi::intersects(box), value);
-tree.query(bgi::nearest(bgi::to_centroid(pt)) && bgi::within(box), value);
-tree.query(bgi::nearest(bgi::bounded(pt, bgi::to_furthest(10), bgi::to_nearest(20))), value);
\endverbatim
\warning
Only one \c nearest() predicate may be used in a query.
-This version may be used only in queries returning one value.
\ingroup predicates
-\param dpred The distance predicates.
+\param point_relation The point or relation describing how the distance will be calculated.
+\param k The maximum number of values to return.
*/
-template <typename DistancePredicates> inline
-detail::nearest_one<DistancePredicates>
-nearest(DistancePredicates const& dpred)
+template <typename PointOrRelation> inline
+detail::nearest<PointOrRelation>
+nearest(PointOrRelation const& point_relation, unsigned k)
{
- return detail::nearest_one<DistancePredicates>(dpred);
+ return detail::nearest<PointOrRelation>(point_relation, k);
}
namespace detail {
Modified: sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -661,42 +661,46 @@
<b>Nearest predicate</b>
- If the nearest predicate is passed a k-nearest neighbor search will be performed. It has two variants.
- Passing the first one will result in returning k number of values, the second one will result in returning
- only one, closest value. In both cases values will be returned to the output iterator. Only one nearest
- predicate may be passed to the query. It may be generated by:
+ If the nearest predicate is passed a k-nearest neighbor search will be performed. This query will result
+ in returning k values to the output iterator. Only one nearest predicate may be passed to the query.
+ It may be generated by:
\li \c boost::geometry::index::nearest().
<b>Connecting predicates</b>
- A set of predicates may be generated by:
- \li \c std::make_pair()
- \li \c boost::make_tuple()
- \li \c operator&&()
+ Predicates may be passed together connected with \c operator&&().
\par Example
\verbatim
- tree.query(box1, std::back_inserter(result));
- tree.query(std::make_pair(bgi::intersects(poly), !bgi::within(box)), std::back_inserter(result));
+ // return elements intersecting box
+ tree.query(box, std::back_inserter(result));
+ // return elements intersecting poly but not within box
tree.query(bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
+ // return elements overlapping box and meeting my_fun value predicate
tree.query(bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+ // return 5 elements nearest to pt and elements are intersecting box
tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
+ // return 5 elements which centroids are nearest to pt and elements aren't within box
+ tree.query(bgi::nearest(bgi::to_centroid(pt), 5) && !bgi::within(box), std::back_inserter(result));
\endverbatim
+ \par Throws
+ If Value copy constructor or copy assignment throws.
+
\warning
Only one \c nearest() perdicate may be passed to the query.
-
+
\param predicates Predicates.
\param out_it The output iterator, e.g. generated by std::back_inserter().
\return The number of values found.
-
- \par Throws
- If Value copy constructor or copy assignment throws.
*/
template <typename Predicates, typename OutIter>
size_type query(Predicates const& predicates, OutIter out_it) const
{
+ if ( !m_root )
+ return 0;
+
static const unsigned nearest_count = detail::predicates_count_nearest<Predicates>::value;
static const bool is_nearest = 0 < nearest_count;
BOOST_MPL_ASSERT_MSG((nearest_count <= 1), PASS_ONLY_ONE_NEAREST_PREDICATE, (Predicates));
@@ -705,365 +709,6 @@
}
/*!
- \brief Finds value meeting passed predicates e.g. nearest to some Point and intersecting some Box.
-
- This query function performs k-nearest neighbor searches. It allows to pass a set of predicates.
- The value will be returned only if all predicates are met. This query requires that one of the
- predicates must be one-value \c nearest() predicate.
-
- <b>Spatial predicates</b>
-
- The simplest form of spatial predicate is a \c Geometry. In this case Values intersecting the \c Geometry are returned.
- More spatial predicates may be generated by one of the functions listed below:
- \li \c boost::geometry::index::covered_by(),
- \li \c boost::geometry::index::disjoint(),
- \li \c boost::geometry::index::intersects() - default,
- \li \c boost::geometry::index::overlaps(),
- \li \c boost::geometry::index::within(),
-
- It is possible to negate spatial predicates:
- \li <tt>! boost::geometry::index::covered_by()</tt>,
- \li <tt>! boost::geometry::index::disjoint()</tt>,
- \li <tt>! boost::geometry::index::intersects()</tt>,
- \li <tt>! boost::geometry::index::overlaps()</tt>,
- \li <tt>! boost::geometry::index::within()</tt>
-
- <b>Value predicate</b>
-
- This is a special kind of predicate which allows to pass a user-defined functor which checks
- if Value should be returned by the query. It's generated by:
- \li \c boost::geometry::index::value().
-
- <b>Nearest predicate</b>
-
- This query requires that one of the predicates must be one-value \c nearest() predicate.
- It may be generated by \c nearest() taking only one parameter - distance predicates.
- \li \c boost::geometry::index::nearest().
-
- <b>Connecting predicates</b>
-
- A set of predicates may be generated by:
- \li \c std::make_pair()
- \li \c boost::make_tuple()
- \li \c operator&&()
-
- \par Example
- \verbatim
- tree.query(std::make_pair(bgi::nearest(pt), bgi::within(box)), value);
- tree.query(bgi::nearest(pt) && bgi::intersects(poly), value);
- \endverbatim
-
- \warning
- This query requires that one of the predicates must be one-value \c nearest() predicate.
-
- \param predicates Predicates.
- \param value The reference to value which will hold the result of the query.
-
- \return The number of values found (1 if value was found, 0 otherwise).
-
- \par Throws
- If Value copy constructor or copy assignment throws.
- */
- template <typename Predicates>
- size_type query(Predicates const& predicates, value_type & value) const
- {
- static const unsigned nearest_count = detail::predicates_count_nearest<Predicates>::value;
- BOOST_MPL_ASSERT_MSG((nearest_count == 1), PASS_ONE_VALUE_NEAREST_PREDICATE_TO_GET_VALUE_AS_RESULT, (Predicates));
-
- return query_dispatch(predicates, value, boost::mpl::bool_<true>());
- }
-
-private:
-
- template <typename Predicates, typename OutIter>
- size_type query_dispatch(Predicates const& predicates, OutIter out_it, boost::mpl::bool_<false> const& /*is_nearest*/) const
- {
- return spatial_query(predicates, out_it);
- }
-
- template <typename Predicates, typename OutIter>
- size_type query_dispatch(Predicates const& predicates, OutIter out_it, boost::mpl::bool_<true> const& /*is_nearest*/) const
- {
- static const unsigned nearest_index = detail::predicates_find_nearest<Predicates>::value;
- static const bool is_one = detail::predicates_element<nearest_index, Predicates>::type::is_one;
-
- return query_dispatch_nearest(predicates, out_it, boost::mpl::bool_<is_one>());
- }
-
- template <typename Predicates>
- size_type query_dispatch(Predicates const& predicates, value_type & v, boost::mpl::bool_<true> const& /*is_nearest*/) const
- {
- static const unsigned nearest_index = detail::predicates_find_nearest<Predicates>::value;
- static const bool is_one = detail::predicates_element<nearest_index, Predicates>::type::is_one;
- BOOST_MPL_ASSERT_MSG((is_one == 1), PASS_ONE_VALUE_NEAREST_PREDICATE_TO_GET_VALUE_AS_RESULT, (Predicates));
-
- typedef detail::predicates_element<nearest_index, Predicates> element_access;
- typename element_access::type const& nearest_pred = element_access::get(predicates);
-
- return this->raw_nearest_one(nearest_pred.distance_predicates, predicates, v);
- }
-
- template <typename Predicates, typename OutIter>
- size_type query_dispatch_nearest(Predicates const& predicates, OutIter out_it, boost::mpl::bool_<false> const& /*is_one*/) const
- {
- static const unsigned nearest_index = detail::predicates_find_nearest<Predicates>::value;
- typedef detail::predicates_element<nearest_index, Predicates> element_access;
- typename element_access::type const& nearest_pred = element_access::get(predicates);
- return this->raw_nearest_k(nearest_pred.distance_predicates, nearest_pred.count, predicates, out_it);
- }
-
- template <typename Predicates, typename OutIter>
- size_type query_dispatch_nearest(Predicates const& predicates, OutIter out_it, boost::mpl::bool_<true> const& /*is_one*/) const
- {
- static const unsigned nearest_index = detail::predicates_find_nearest<Predicates>::value;
- typedef detail::predicates_element<nearest_index, Predicates> element_access;
- typename element_access::type const& nearest_pred = element_access::get(predicates);
- return this->raw_nearest_k(nearest_pred.distance_predicates, 1, predicates, out_it);
- }
-
-public:
-
- /*!
- \brief Finds values meeting spatial predicates, e.g. intersecting some Box.
-
- <b>Spatial predicates</b> may be a \c Geometry. In this case Values intersecting the \c Geometry are returned.
-
- It may be generated by one of the functions listed below:
- \li \c boost::geometry::index::covered_by(),
- \li \c boost::geometry::index::disjoint(),
- \li \c boost::geometry::index::intersects() - default,
- \li \c boost::geometry::index::overlaps(),
- \li \c boost::geometry::index::within(),
- \li <tt>! boost::geometry::index::covered_by()</tt>,
- \li <tt>! boost::geometry::index::disjoint()</tt>,
- \li <tt>! boost::geometry::index::intersects()</tt>,
- \li <tt>! boost::geometry::index::overlaps()</tt>,
- \li <tt>! boost::geometry::index::within()</tt>
- \li \c boost::geometry::index::value().
-
- Those predicates may be passed together in
- \c std::pair or \c boost::tuple.
-
- \param pred The spatial predicates or a Geometry.
- \param out_it The output iterator of the result range. E.g. an iterator generated by
- std::back_inserter(container)
-
- \return The number of values found.
-
- \par Throws
- \li If Value copy constructor or copy assignment throws.
- \li If OutIter dereference or increment throws.
- */
- template <typename Predicates, typename OutIter> inline
- size_type spatial_query(Predicates const& pred, OutIter out_it) const
- {
- if ( !m_root )
- return 0;
-
- detail::rtree::visitors::spatial_query<value_type, options_type, translator_type, box_type, allocators_type, Predicates, OutIter>
- find_v(m_translator, pred, out_it);
-
- detail::rtree::apply_visitor(find_v, *m_root);
-
- return find_v.found_count;
- }
-
- /*!
- \brief Finds one value meeting distances predicates, e.g. nearest to some Point.
-
- <b>Distances predicates</b> may be a \c Point. In this the case the Value closest to \c Point is returned.
-
- It is possible to define how distance to Value is calculated. This is done by passing PointRelation.
- It can be generated by following functions:
- \li \c boost::geometry::index::to_nearest() - default,
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- It is possible to define define distances bounds, for example that some distance must be between
- min_distance and max_distance. This is done by passing DistancesPredicates which can be generated
- by following functions:
- \li \c boost::geometry::index::unbounded() - default,
- \li \c boost::geometry::index::min_bounded(),
- \li \c boost::geometry::index::max_bounded(),
- \li \c boost::geometry::index::bounded().
-
- MinRelation and MaxRelation describes bounds and can be generated by following functions:
- \li \c boost::geometry::index::to_nearest(),
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- \param dpred The distances predicates or a Point.
-
- \param v The reference to the object which will contain the result.
-
- \return The number of values found.
-
- \par Throws
- If Value copy constructor or copy assignment throws.
- */
- template <typename DistancesPredicates>
- inline size_type nearest_query(DistancesPredicates const& dpred, value_type & v) const
- {
- return raw_nearest_one(dpred, detail::empty(), v);
- }
-
- /*!
- \brief Finds one value meeting distances predicates and spatial predicates,
- e.g. nearest to some Point and intersecting some Box.
-
- <b>Distances predicates</b> may be a \c Point. In this the case the Value closest to \c Point is returned.
-
- It is possible to define how distance to Value is calculated. This is done by passing PointRelation.
- It can be generated by following functions:
- \li \c boost::geometry::index::to_nearest() - default,
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- It is possible to define define distances bounds, for example that some distance must be between
- min_distance and max_distance. This is done by passing DistancesPredicates which can be generated
- by following functions:
- \li \c boost::geometry::index::unbounded() - default,
- \li \c boost::geometry::index::min_bounded(),
- \li \c boost::geometry::index::max_bounded(),
- \li \c boost::geometry::index::bounded().
-
- MinRelation and MaxRelation describes bounds and can be generated by following functions:
- \li \c boost::geometry::index::to_nearest(),
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- <b>Spatial predicates</b> may be a \c Geometry. In this case Values intersecting the \c Geometry are returned.
-
- It may be generated by one of the functions listed below:
- \li \c boost::geometry::index::covered_by(),
- \li \c boost::geometry::index::disjoint(),
- \li \c boost::geometry::index::intersects() - default,
- \li \c boost::geometry::index::overlaps(),
- \li \c boost::geometry::index::within(),
- \li <tt>! boost::geometry::index::covered_by()</tt>,
- \li <tt>! boost::geometry::index::disjoint()</tt>,
- \li <tt>! boost::geometry::index::intersects()</tt>,
- \li <tt>! boost::geometry::index::overlaps()</tt>,
- \li <tt>! boost::geometry::index::within()</tt>
- \li \c boost::geometry::index::value().
-
- Those predicates may be passed together in
- \c std::pair or \c boost::tuple.
-
- \param dpred The distances predicates or a Point.
- \param pred The spatial predicates or a Geometry
- \param v The reference to the object which will contain the result.
-
- \return The number of values found.
-
- \par Throws
- If Value copy constructor or copy assignment throws.
- */
- template <typename DistancesPredicates, typename Predicates>
- inline size_type nearest_query(DistancesPredicates const& dpred, Predicates const& pred, value_type & v) const
- {
- return raw_nearest_one(dpred, pred, v);
- }
-
- /*!
- \brief Finds k values meeting distances predicates, e.g. k nearest values to some Point.
-
- <b>Distances predicates</b> may be a \c Point. In this the case the Value closest to \c Point is returned.
-
- It is possible to define how distance to Value is calculated. This is done by passing PointRelation.
- It can be generated by following functions:
- \li \c boost::geometry::index::to_nearest() - default,
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- It is possible to define define distances bounds, for example that some distance must be between
- min_distance and max_distance. This is done by passing DistancesPredicates which can be generated
- by following functions:
- \li \c boost::geometry::index::unbounded() - default,
- \li \c boost::geometry::index::min_bounded(),
- \li \c boost::geometry::index::max_bounded(),
- \li \c boost::geometry::index::bounded().
-
- MinRelation and MaxRelation describes bounds and can be generated by following functions:
- \li \c boost::geometry::index::to_nearest(),
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- \param dpred The distances predicates or a Point.
- \param k The max number of values.
- \param out_it The output iterator of the result range. E.g. a back_insert_iterator.
-
- \return The number of values found.
-
- \par Throws
- If Value copy constructor or copy assignment throws. If OutIter dereference or increment throws.
- */
- template <typename DistancesPredicates, typename OutIter>
- inline size_type nearest_query(DistancesPredicates const& dpred, size_type k, OutIter out_it) const
- {
- return raw_nearest_k(dpred, k, detail::empty(), out_it);
- }
-
- /*!
- \brief Finds k values meeting distances predicates and spatial predicates,
- e.g. k nearest values to some Point and intersecting some Box.
-
- <b>Distances predicates</b> may be a \c Point. In this the case the Value closest to \c Point is returned.
-
- It is possible to define how distance to Value is calculated. This is done by passing PointRelation.
- It can be generated by following functions:
- \li \c boost::geometry::index::to_nearest() - default,
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- It is possible to define define distances bounds, for example that some distance must be between
- min_distance and max_distance. This is done by passing DistancesPredicates which can be generated
- by following functions:
- \li \c boost::geometry::index::unbounded() - default,
- \li \c boost::geometry::index::min_bounded(),
- \li \c boost::geometry::index::max_bounded(),
- \li \c boost::geometry::index::bounded().
-
- MinRelation and MaxRelation describes bounds and can be generated by following functions:
- \li \c boost::geometry::index::to_nearest(),
- \li \c boost::geometry::index::to_centroid(),
- \li \c boost::geometry::index::to_furthest().
-
- <b>Spatial predicates</b> may be a \c Geometry. In this case Values intersecting the \c Geometry are returned.
-
- It may be generated by one of the functions listed below:
- \li \c boost::geometry::index::covered_by(),
- \li \c boost::geometry::index::disjoint(),
- \li \c boost::geometry::index::intersects() - default,
- \li \c boost::geometry::index::overlaps(),
- \li \c boost::geometry::index::within(),
- \li <tt>! boost::geometry::index::covered_by()</tt>,
- \li <tt>! boost::geometry::index::disjoint()</tt>,
- \li <tt>! boost::geometry::index::intersects()</tt>,
- \li <tt>! boost::geometry::index::overlaps()</tt>,
- \li <tt>! boost::geometry::index::within()</tt>
- \li \c boost::geometry::index::value().
-
- Those predicates may be passed together in
- \c std::pair or \c boost::tuple.
-
- \param dpred The distances predicates or a Point
- \param k The max number of values.
- \param pred The spatial predicates or a Geometry.
- \param out_it The output iterator of the result range. E.g. a back_insert_iterator.
-
- \return The number of values found.
-
- \par Throws
- If Value copy constructor or copy assignment throws. If OutIter dereference or increment throws.
- */
- template <typename DistancesPredicates, typename Predicates, typename OutIter>
- inline size_type nearest_query(DistancesPredicates const& dpred, size_type k, Predicates const& pred, OutIter out_it) const
- {
- return raw_nearest_k(dpred, k, pred, out_it);
- }
-
- /*!
\brief Returns the number of stored values.
\return The number of stored values.
@@ -1377,42 +1022,36 @@
}
/*!
- \brief Find one value meeting distances and spatial predicates.
+ \brief Return values meeting predicates.
\par Exception-safety
strong
*/
- template <typename DistancesPredicates, typename Predicates>
- inline size_type raw_nearest_one(DistancesPredicates const& dpred, Predicates const& pred, value_type & v) const
+ template <typename Predicates, typename OutIter>
+ size_type query_dispatch(Predicates const& predicates, OutIter out_it, boost::mpl::bool_<false> const& /*is_nearest*/) const
{
- if ( !m_root )
- return 0;
-
- typedef typename detail::point_relation<DistancesPredicates>::type point_relation;
- typedef typename detail::relation<point_relation>::value_type point_type;
-
- typedef detail::rtree::visitors::nearest_query_result_one<
- value_type,
- translator_type,
- point_type
- > result_type;
+ detail::rtree::visitors::spatial_query<value_type, options_type, translator_type, box_type, allocators_type, Predicates, OutIter>
+ find_v(m_translator, predicates, out_it);
- result_type result(v);
+ detail::rtree::apply_visitor(find_v, *m_root);
- detail::rtree::visitors::nearest_query<
- value_type,
- options_type,
- translator_type,
- box_type,
- allocators_type,
- DistancesPredicates,
- Predicates,
- result_type
- > nearest_v(m_parameters, m_translator, dpred, pred, result);
+ return find_v.found_count;
+ }
- detail::rtree::apply_visitor(nearest_v, *m_root);
+ /*!
+ \brief Perform nearest neighbour search.
+ .
+ \par Exception-safety
+ strong
+ */
+ template <typename Predicates, typename OutIter>
+ size_type query_dispatch(Predicates const& predicates, OutIter out_it, boost::mpl::bool_<true> const& /*is_nearest*/) const
+ {
+ static const unsigned nearest_index = detail::predicates_find_nearest<Predicates>::value;
+ typedef detail::predicates_element<nearest_index, Predicates> element_access;
+ typename element_access::type const& nearest_pred = element_access::get(predicates);
- return result.finish();
+ return raw_nearest_k(nearest_pred.distance_predicates, nearest_pred.count, predicates, out_it);
}
/*!
@@ -1424,9 +1063,6 @@
template <typename DistancesPredicates, typename Predicates, typename OutIter>
inline size_type raw_nearest_k(DistancesPredicates const& dpred, size_t k, Predicates const& pred, OutIter out_it) const
{
- if ( !m_root )
- return 0;
-
typedef typename detail::point_relation<DistancesPredicates>::type point_relation;
typedef typename detail::relation<point_relation>::value_type point_type;
@@ -1616,41 +1252,42 @@
<b>Nearest predicate</b>
-If the nearest predicate is passed a k-nearest neighbor search will be performed. It has two variants.
-Passing the first one will result in returning k number of values, the second one will result in returning
-only one, closest value. In both cases values will be returned to the output iterator. Only one nearest
-predicate may be passed to the query. It may be generated by:
+If the nearest predicate is passed a k-nearest neighbor search will be performed. This query will result
+in returning k values to the output iterator. Only one nearest predicate may be passed to the query.
+It may be generated by:
\li \c boost::geometry::index::nearest().
<b>Connecting predicates</b>
-A set of predicates may be generated by:
-\li \c std::make_pair()
-\li \c boost::make_tuple()
-\li \c operator&&()
+Predicates may be passed together connected with \c operator&&().
\par Example
\verbatim
-bgi::query(tree, box1, std::back_inserter(result));
-bgi::query(tree, std::make_pair(bgi::intersects(poly), !bgi::within(box)), std::back_inserter(result));
+// return elements intersecting box
+bgi::query(tree, box, std::back_inserter(result));
+// return elements intersecting poly but not within box
bgi::query(tree, bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
+// return elements overlapping box and meeting my_fun value predicate
bgi::query(tree, bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+// return 5 elements nearest to pt and elements are intersecting box
bgi::query(tree, bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
+// return 5 elements which centroids are nearest to pt and elements aren't within box
+bgi::query(tree, bgi::nearest(bgi::to_centroid(pt), 5) && !bgi::within(box), std::back_inserter(result));
\endverbatim
+\par Throws
+If Value copy constructor or copy assignment throws.
+
\warning
Only one \c nearest() perdicate may be passed to the query.
\ingroup rtree_functions
-\param tree The spatial index.
+\param predicates The rtree.
\param predicates Predicates.
\param out_it The output iterator, e.g. generated by std::back_inserter().
\return The number of values found.
-
-\par Throws
-If Value copy constructor or copy assignment throws.
*/
template <typename Value, typename Options, typename Translator, typename Allocator, typename Predicates, typename OutIter> inline
typename rtree<Value, Options, Translator, Allocator>::size_type
@@ -1662,177 +1299,6 @@
}
/*!
-\brief Finds value meeting passed predicates e.g. nearest to some Point and intersecting some Box.
-
-This query function performs k-nearest neighbor searches. It allows to pass a set of predicates.
-The value will be returned only if all predicates are met. This query requires that one of the
-predicates must be one-value \c nearest() predicate.
-
-<b>Spatial predicates</b>
-
-The simplest form of spatial predicate is a \c Geometry. In this case Values intersecting the \c Geometry are returned.
-More spatial predicates may be generated by one of the functions listed below:
-\li \c boost::geometry::index::covered_by(),
-\li \c boost::geometry::index::disjoint(),
-\li \c boost::geometry::index::intersects() - default,
-\li \c boost::geometry::index::overlaps(),
-\li \c boost::geometry::index::within(),
-
-It is possible to negate spatial predicates:
-\li <tt>! boost::geometry::index::covered_by()</tt>,
-\li <tt>! boost::geometry::index::disjoint()</tt>,
-\li <tt>! boost::geometry::index::intersects()</tt>,
-\li <tt>! boost::geometry::index::overlaps()</tt>,
-\li <tt>! boost::geometry::index::within()</tt>
-
-<b>Value predicate</b>
-
-This is a special kind of predicate which allows to pass a user-defined functor which checks
-if Value should be returned by the query. It's generated by:
-\li \c boost::geometry::index::value().
-
-<b>Nearest predicate</b>
-
-This query requires that one of the predicates must be one-value \c nearest() predicate.
-It may be generated by \c nearest() taking only one parameter - distance predicates.
-\li \c boost::geometry::index::nearest().
-
-<b>Connecting predicates</b>
-
-A set of predicates may be generated by:
-\li \c std::make_pair()
-\li \c boost::make_tuple()
-\li \c operator&&()
-
-\par Example
-\verbatim
-bgi::query(tree, std::make_pair(bgi::nearest(pt), bgi::within(box)), value);
-bgi::query(tree, bgi::nearest(pt) && bgi::intersects(poly), value);
-\endverbatim
-
-\warning
-This query requires that one of the predicates must be one-value \c nearest() predicate.
-
-\ingroup rtree_functions
-
-\param tree The spatial index.
-\param predicates Predicates.
-\param value The reference to value which will hold the result of the query.
-
-\return The number of values found (1 if value was found, 0 otherwise).
-
-\par Throws
-If Value copy constructor or copy assignment throws.
-*/
-template <typename Value, typename Options, typename Translator, typename Allocator, typename Predicates> inline
-typename rtree<Value, Options, Translator, Allocator>::size_type
-query(rtree<Value, Options, Translator, Allocator> const& tree,
- Predicates const& predicates,
- typename rtree<Value, Options, Translator, Allocator>::value_type & value)
-{
- return tree.query(predicates, value);
-}
-
-/*!
-\brief Find values meeting spatial predicates.
-
-It calls \c rtree::spatial_query with parameters <tt>(Predicates const&, OutIter)</tt>.
-
-\ingroup rtree_functions
-
-\param tree The spatial index.
-\param pred The spatial predicates.
-\param out_it The output iterator of the result range.
-
-\return The number of found values.
-*/
-template <typename Value, typename Options, typename Translator, typename Allocator, typename Predicates, typename OutIter>
-inline size_t spatial_query(rtree<Value, Options, Translator, Allocator> const& tree, Predicates const& pred, OutIter out_it)
-{
- return tree.spatial_query(pred, out_it);
-}
-
-/*!
-\brief Find the value meeting distances predicates.
-
-It calls \c rtree::nearest_query with parameters <tt>(DistancesPredicates const& dpred, value_type & v)</tt>.
-
-\ingroup rtree_functions
-
-\param tree The spatial index.
-\param dpred The distances predicates.
-\param v The result.
-
-\return The number of found values.
-*/
-template <typename Value, typename Options, typename Translator, typename Allocator, typename DistancesPredicates>
-inline size_t nearest_query(rtree<Value, Options, Translator, Allocator> const& tree, DistancesPredicates const& dpred, Value & v)
-{
- return tree.nearest_query(dpred, v);
-}
-
-/*!
-\brief Find the value meeting distances and spatial predicates.
-
-It calls \c rtree::nearest_query with parameters <tt>(DistancesPredicates const& dpred, Predicates const& pred, value_type & v)</tt>.
-
-\ingroup rtree_functions
-
-\param tree The spatial index.
-\param dpred The distances predicates.
-\param pred The spatial predicates.
-\param v The result.
-
-\return The number of found values.
-*/
-template <typename Value, typename Options, typename Translator, typename Allocator, typename DistancesPredicates, typename Predicates>
-inline size_t nearest_query(rtree<Value, Options, Translator, Allocator> const& tree, DistancesPredicates const& dpred, Predicates const& pred, Value & v)
-{
- return tree.nearest_query(dpred, pred, v);
-}
-
-/*!
-\brief Find k values meeting distances predicates.
-
-It calls \c rtree::nearest_query with parameters <tt>(DistancesPredicates const & dpred, size_type k, OutIter out_it)</tt>.
-
-\ingroup rtree_functions
-
-\param tree The spatial index.
-\param dpred The distances predicates.
-\param k The max number of values.
-\param out_it The output iterator of the result range.
-
-\return The number of found values.
-*/
-template <typename Value, typename Options, typename Translator, typename Allocator, typename DistancesPredicates, typename OutIter>
-inline size_t nearest_query(rtree<Value, Options, Translator, Allocator> const& tree, DistancesPredicates const& dpred, typename rtree<Value, Options, Translator, Allocator>::size_type k, OutIter out_it)
-{
- return tree.nearest_query(dpred, k, out_it);
-}
-
-/*!
-\brief Find k values meeting distances and spatial predicates.
-
-It calls \c rtree::nearest_query with parameters <tt>(DistancesPredicates const & dpred, size_type k, Predicates const & pred, OutIter out_it)</tt>.
-
-\ingroup rtree_functions
-
-\param tree The spatial index.
-\param dpred The distances predicates.
-\param k The max number of values.
-\param pred The spatial predicates.
-\param out_it The output iterator of the result range.
-
-\return The number of found values.
-*/
-template <typename Value, typename Options, typename Translator, typename Allocator, typename DistancesPredicates, typename Predicates, typename OutIter>
-inline size_t nearest_query(rtree<Value, Options, Translator, Allocator> const& tree, DistancesPredicates const& dpred, typename rtree<Value, Options, Translator, Allocator>::size_type k, Predicates const& pred, OutIter out_it)
-{
- return tree.nearest_query(dpred, k, pred, out_it);
-}
-
-/*!
\brief Remove all values from the index.
It calls \c rtree::clear().
Modified: sandbox-branches/geometry/index/doc/generated/adaptors.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/adaptors.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/adaptors.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -4,51 +4,9 @@
[heading Functions]
[table
[[Function][Description]]
-[[[link group__adaptors_1ga8e094e1f312fc00336a3536f51a69468 `nearest_queried(DistancesPredicates const &, size_t, Predicates const &)`]][The nearest query index adaptor generator. ]]
-[[[link group__adaptors_1ga3478395ded5855dc0b6c2f36a89de9f6 `nearest_queried(DistancesPredicates const &, size_t)`]][The nearest query index adaptor generator. ]]
[[[link group__adaptors_1ga4716cd5423bfed3ff3e69e9ec274ac81 `queried(Predicates const &)`]][The query index adaptor generator. ]]
-[[[link group__adaptors_1ga3068771f0f9cca706269ec35a809db2a `spatial_queried(Predicates const &)`]][The spatial query index adaptor generator. ]]
]
-[#group__adaptors_1ga8e094e1f312fc00336a3536f51a69468]
-[section nearest_queried(DistancesPredicates const &, size_t, Predicates const &)]
-The nearest query index adaptor generator.
-
-[heading Synopsis]
-[pre
-`template<``typename DistancesPredicates``,` `typename Predicates``>`
-`detail::nearest_query<DistancesPredicates, Predicates> boost::geometry::index::adaptors::nearest_queried``(``DistancesPredicates const &` `dpred``,`
- `size_t` `k``,`
- `Predicates const &` `pred``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`DistancesPredicates const &`][ `dpred` ][Distance predicates. ]]
-[[`size_t`][ `k` ][The number of values to find. ]]
-[[`Predicates const &`][ `pred` ][Spatial predicates. ]]
-]
-[endsect]
-
-[#group__adaptors_1ga3478395ded5855dc0b6c2f36a89de9f6]
-[section nearest_queried(DistancesPredicates const &, size_t)]
-The nearest query index adaptor generator.
-
-[heading Synopsis]
-[pre
-`template<``typename DistancesPredicates``>`
-`detail::nearest_query<DistancesPredicates, index::detail::empty> boost::geometry::index::adaptors::nearest_queried``(``DistancesPredicates const &` `dpred``,` `size_t` `k``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`DistancesPredicates const &`][ `dpred` ][Distance predicates. ]]
-[[`size_t`][ `k` ][The number of values to find. ]]
-]
-[endsect]
-
[#group__adaptors_1ga4716cd5423bfed3ff3e69e9ec274ac81]
[section queried(Predicates const &)]
The query index adaptor generator.
@@ -66,22 +24,5 @@
]
[endsect]
-[#group__adaptors_1ga3068771f0f9cca706269ec35a809db2a]
-[section spatial_queried(Predicates const &)]
-The spatial query index adaptor generator.
-
-[heading Synopsis]
-[pre
-`template<``typename Predicates``>`
-`detail::spatial_query<Predicates> boost::geometry::index::adaptors::spatial_queried``(``Predicates const &` `pred``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`Predicates const &`][ `pred` ][Spatial predicates. ]]
-]
-[endsect]
-
[endsect]
Deleted: sandbox-branches/geometry/index/doc/generated/distance_predicates.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/distance_predicates.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
+++ (empty file)
@@ -1,197 +0,0 @@
-[/ Generated by doxygen_xml2qbk, don't change, will be overwritten automatically]
-[/ Generated from xml/group__distance__predicates.xml]
-[section:group__distance__predicates Distance predicates (boost::geometry::index::)]
-[heading Functions]
-[table
-[[Function][Description]]
-[[[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 `to_nearest(T const &)`]][Generate [link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()] relationship. ]]
-[[[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 `to_centroid(T const &)`]][Generate [link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()] relationship. ]]
-[[[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 `to_furthest(T const &)`]][Generate [link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()] relationship. ]]
-[[[link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db `unbounded(PointRelation const &)`]][Generate [link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db unbounded()] distance predicate. ]]
-[[[link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 `min_bounded(PointRelation const &, MinRelation const &)`]][Generate [link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 min_bounded()] distance predicate. ]]
-[[[link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 `max_bounded(PointRelation const &, MaxRelation const &)`]][Generate [link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 max_bounded()] distance predicate. ]]
-[[[link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 `bounded(PointRelation const &, MinRelation const &, MaxRelation const &)`]][Generate [link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 bounded()] distance predicate. ]]
-]
-
-[#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636]
-[section to_nearest(T const &)]
-Generate [link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()] relationship.
-
-[heading Description]
-Generate a nearest query Point and Value's Indexable relationship while calculating distances. This function may be used to define that knn query should calculate distances as smallest as possible between query Point and Indexable's points. In other words it should be the distance to the nearest Indexable's point. This function may be also used to define distances bounds which indicates that Indexable's nearest point should be closer or further than value v. This is default relation.[heading Synopsis]
-[pre
-`template<``typename T``>`
-`detail::to_nearest<T> boost::geometry::index::to_nearest``(``T const &` `v``)`
-]
-
-[heading Template parameter(s)]
-[table
-[[Parameter] [Description]]
-[[`T`][Type of wrapped object. This may be a Point for PointRelation or CoordinateType for MinRelation or MaxRelation]]
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`T const &`][ `v` ][Point or distance value. ]]
-]
-[endsect]
-
-[#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0]
-[section to_centroid(T const &)]
-Generate [link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()] relationship.
-
-[heading Description]
-Generate a nearest query Point and Value's Indexable relationship while calculating distances. This function may be used to define that knn query should calculate distances between query Point and Indexable's centroid. This function may be also used to define distances bounds which indicates that Indexable's centroid should be closer or further than value v.[heading Synopsis]
-[pre
-`template<``typename T``>`
-`detail::to_centroid<T> boost::geometry::index::to_centroid``(``T const &` `v``)`
-]
-
-[heading Template parameter(s)]
-[table
-[[Parameter] [Description]]
-[[`T`][Type of wrapped object. This may be a Point for PointRelation or some CoordinateType for MinRelation or MaxRelation]]
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`T const &`][ `v` ][Point or distance value. ]]
-]
-[endsect]
-
-[#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02]
-[section to_furthest(T const &)]
-Generate [link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()] relationship.
-
-[heading Description]
-Generate a nearest query Point and Value's Indexable relationship while calculating distances. This function may be used to define that knn query should calculate distances as biggest as possible between query Point and Indexable's points. In other words it should be the distance to the furthest Indexable's point. This function may be also used to define distances bounds which indicates that Indexable's furthest point should be closer or further than value v.[heading Synopsis]
-[pre
-`template<``typename T``>`
-`detail::to_furthest<T> boost::geometry::index::to_furthest``(``T const &` `v``)`
-]
-
-[heading Template parameter(s)]
-[table
-[[Parameter] [Description]]
-[[`T`][Type of wrapped object. This may be a Point for PointRelation or some CoordinateType for MinRelation or MaxRelation]]
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`T const &`][ `v` ][Point or distance value. ]]
-]
-[endsect]
-
-[#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db]
-[section unbounded(PointRelation const &)]
-Generate [link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db unbounded()] distance predicate.
-
-[heading Description]
-Generate a distance predicate. This defines distances bounds which are used by knn query. This function indicates that there is no distance bounds and Values should be returned if distances between Point and Indexable are the smallest. Distance calculation is defined by PointRelation. This is default nearest predicate.[heading Synopsis]
-[pre
-`template<``typename PointRelation``>`
-`detail::unbounded<PointRelation> boost::geometry::index::unbounded``(``PointRelation const &` `pr``)`
-]
-
-[heading Template parameter(s)]
-[table
-[[Parameter] [Description]]
-[[`PointRelation`][PointRelation type.]]
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`PointRelation const &`][ `pr` ][The point relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 index::to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 index::to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 index::to_furthest()]] with [^`Point`] passed as a parameter. ]]
-]
-[endsect]
-
-[#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098]
-[section min_bounded(PointRelation const &, MinRelation const &)]
-Generate [link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 min_bounded()] distance predicate.
-
-[heading Description]
-Generate a distance predicate. This defines distances bounds which are used by knn query. This function indicates that Values should be returned only if distances between Point and Indexable are greater or equal to some min_distance passed in MinRelation. Check for closest Value is defined by PointRelation. So it is possible e.g. to return Values with centroids closest to some Point but only if nearest points are further than some distance.[heading Synopsis]
-[pre
-`template<``typename PointRelation``,` `typename MinRelation``>`
-`detail::min_bounded<PointRelation, MinRelation> boost::geometry::index::min_bounded``(``PointRelation const &` `pr``,` `MinRelation const &` `minr``)`
-]
-
-[heading Template parameter(s)]
-[table
-[[Parameter] [Description]]
-[[`PointRelation`][PointRelation type. ]]
-[[`MinRelation`][MinRelation type.]]
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`PointRelation const &`][ `pr` ][The point relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()]] with [^`Point`] passed as a parameter. ]]
-[[`MinRelation const &`][ `minr` ][The minimum bound relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()]] with distance value passed as a parameter. ]]
-]
-[endsect]
-
-[#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079]
-[section max_bounded(PointRelation const &, MaxRelation const &)]
-Generate [link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 max_bounded()] distance predicate.
-
-[heading Description]
-Generate a distance predicate. This defines distances bounds which are used by knn query. This function indicates that Values should be returned only if distances between Point and Indexable are lesser or equal to some max_distance passed in MaxRelation. Check for closest Value is defined by PointRelation. So it is possible e.g. to return Values with centroids closest to some Point but only if nearest points are closer than some distance.[heading Synopsis]
-[pre
-`template<``typename PointRelation``,` `typename MaxRelation``>`
-`detail::max_bounded<PointRelation, MaxRelation> boost::geometry::index::max_bounded``(``PointRelation const &` `pr``,` `MaxRelation const &` `maxr``)`
-]
-
-[heading Template parameter(s)]
-[table
-[[Parameter] [Description]]
-[[`PointRelation`][PointRelation type. ]]
-[[`MaxRelation`][MaxRelation type.]]
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`PointRelation const &`][ `pr` ][The point relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()]] with [^`Point`] passed as a parameter. ]]
-[[`MaxRelation const &`][ `maxr` ][The maximum bound relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()]] with distance value passed as a parameter. ]]
-]
-[endsect]
-
-[#group__distance__predicates_1ga20621ca608b1420c38182346b965f347]
-[section bounded(PointRelation const &, MinRelation const &, MaxRelation const &)]
-Generate [link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 bounded()] distance predicate.
-
-[heading Description]
-Generate a distance predicate. This defines distances bounds which are used by knn query. This function indicates that Values should be returned only if distances between Point and Indexable are greater or equal to some min_distance passed in MinRelation and lesser or equal to some max_distance passed in MaxRelation. Check for closest Value is defined by PointRelation. So it is possible e.g. to return Values with centroids closest to some Point but only if nearest points are further than some distance and closer than some other distance.[heading Synopsis]
-[pre
-`template<``typename PointRelation``,`
- `typename MinRelation``,`
- `typename MaxRelation``>`
-`detail::bounded<PointRelation, MinRelation, MaxRelation> boost::geometry::index::bounded``(``PointRelation const &` `pr``,`
- `MinRelation const &` `minr``,`
- `MaxRelation const &` `maxr``)`
-]
-
-[heading Template parameter(s)]
-[table
-[[Parameter] [Description]]
-[[`PointRelation`][PointRelation type. ]]
-[[`MinRelation`][MinRelation type. ]]
-[[`MaxRelation`][MaxRelation type.]]
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`PointRelation const &`][ `pr` ][The point relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()]] with [^`Point`] passed as a parameter. ]]
-[[`MinRelation const &`][ `minr` ][The minimum bound relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()]] with distance value passed as a parameter. ]]
-[[`MaxRelation const &`][ `maxr` ][The maximum bound relation. This may be generated by [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()]], [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()]] or [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()]] with distance value passed as a parameter. ]]
-]
-[endsect]
-
-[endsect]
-
Added: sandbox-branches/geometry/index/doc/generated/nearest_relations.qbk
==============================================================================
--- (empty file)
+++ sandbox-branches/geometry/index/doc/generated/nearest_relations.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -0,0 +1,85 @@
+[/ Generated by doxygen_xml2qbk, don't change, will be overwritten automatically]
+[/ Generated from xml/group__nearest__relations.xml]
+[section:group__nearest__relations Nearest relations (boost::geometry::index::)]
+[heading Functions]
+[table
+[[Function][Description]]
+[[[link group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636 `to_nearest(T const &)`]][Generate [link group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()] relationship. ]]
+[[[link group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0 `to_centroid(T const &)`]][Generate [link group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()] relationship. ]]
+[[[link group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02 `to_furthest(T const &)`]][Generate [link group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()] relationship. ]]
+]
+
+[#group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636]
+[section to_nearest(T const &)]
+Generate [link group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636 to_nearest()] relationship.
+
+[heading Description]
+Generate a nearest query Point and Value's Indexable relationship while calculating distances. This function may be used to define that knn query should calculate distances as smallest as possible between query Point and Indexable's points. In other words it should be the distance to the nearest Indexable's point. This function may be also used to define distances bounds which indicates that Indexable's nearest point should be closer or further than value v. This is default relation.[heading Synopsis]
+[pre
+`template<``typename T``>`
+`detail::to_nearest<T> boost::geometry::index::to_nearest``(``T const &` `v``)`
+]
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[`T`][Type of wrapped object. This may be a Point for PointRelation or CoordinateType for MinRelation or MaxRelation]]
+]
+
+[heading Parameter(s)]
+[table
+[[Type][Name][Description]]
+[[`T const &`][ `v` ][Point or distance value. ]]
+]
+[endsect]
+
+[#group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0]
+[section to_centroid(T const &)]
+Generate [link group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0 to_centroid()] relationship.
+
+[heading Description]
+Generate a nearest query Point and Value's Indexable relationship while calculating distances. This function may be used to define that knn query should calculate distances between query Point and Indexable's centroid. This function may be also used to define distances bounds which indicates that Indexable's centroid should be closer or further than value v.[heading Synopsis]
+[pre
+`template<``typename T``>`
+`detail::to_centroid<T> boost::geometry::index::to_centroid``(``T const &` `v``)`
+]
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[`T`][Type of wrapped object. This may be a Point for PointRelation or some CoordinateType for MinRelation or MaxRelation]]
+]
+
+[heading Parameter(s)]
+[table
+[[Type][Name][Description]]
+[[`T const &`][ `v` ][Point or distance value. ]]
+]
+[endsect]
+
+[#group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02]
+[section to_furthest(T const &)]
+Generate [link group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02 to_furthest()] relationship.
+
+[heading Description]
+Generate a nearest query Point and Value's Indexable relationship while calculating distances. This function may be used to define that knn query should calculate distances as biggest as possible between query Point and Indexable's points. In other words it should be the distance to the furthest Indexable's point. This function may be also used to define distances bounds which indicates that Indexable's furthest point should be closer or further than value v.[heading Synopsis]
+[pre
+`template<``typename T``>`
+`detail::to_furthest<T> boost::geometry::index::to_furthest``(``T const &` `v``)`
+]
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[`T`][Type of wrapped object. This may be a Point for PointRelation or some CoordinateType for MinRelation or MaxRelation]]
+]
+
+[heading Parameter(s)]
+[table
+[[Type][Name][Description]]
+[[`T const &`][ `v` ][Point or distance value. ]]
+]
+[endsect]
+
+[endsect]
+
Modified: sandbox-branches/geometry/index/doc/generated/predicates.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/predicates.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/predicates.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -10,8 +10,7 @@
[[[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 `overlaps(Geometry const &)`]][Generate [^[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 overlaps()]] predicate. ]]
[[[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d `within(Geometry const &)`]][Generate [^[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d within()]] predicate. ]]
[[[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce `value(Fun const &)`]][Generate value predicate. ]]
-[[[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b `nearest(DistancePredicates const &, unsigned)`]][Generate nearest predicate. ]]
-[[[link group__predicates_1ga54f507955e8dba2c928d6592d5970638 `nearest(DistancePredicates const &)`]][Generate nearest predicate. ]]
+[[[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 `nearest(PointOrRelation const &, unsigned)`]][Generate nearest predicate. ]]
]
[#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61]
@@ -158,46 +157,31 @@
]
[endsect]
-[#group__predicates_1ga162233fd11b980853f8b8335cb70d57b]
-[section nearest(DistancePredicates const &, unsigned)]
+[#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556]
+[section nearest(PointOrRelation const &, unsigned)]
Generate nearest predicate.
[heading Description]
When nearest predicate is passed to the query, k-nearest neighbour search will be performed.
-[*Distances predicates] may be a [^`Point`]. In this the case values closest to [^`Point`] are returned.
+The simplest way of defining the knn query is passing a [^`Point`] to which [^`Values`] must be closest.
It is possible to define how distance between values and query Point is calculated. This is done by passing PointRelation. It can be generated by following functions:
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]] - default,
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-
-It is possible to define distances bounds, for example that a distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:
-
-* [^[link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db boost::geometry::index::unbounded()]] - default,
-* [^[link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 boost::geometry::index::min_bounded()]],
-* [^[link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 boost::geometry::index::max_bounded()]],
-* [^[link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 boost::geometry::index::bounded()]].
-
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]],
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
+* [^[link group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]] - default,
+* [^[link group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
+* [^[link group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
[heading Synopsis]
[pre
-`template<``typename DistancePredicates``>`
-`detail::nearest<DistancePredicates> boost::geometry::index::nearest``(``DistancePredicates const &` `dpred``,` `unsigned` `k``)`
+`template<``typename PointOrRelation``>`
+`detail::nearest<PointOrRelation> boost::geometry::index::nearest``(``PointOrRelation const &` `point_relation``,` `unsigned` `k``)`
]
[heading Parameter(s)]
[table
[[Type][Name][Description]]
-[[`DistancePredicates const &`][ `dpred` ][The distance predicates. ]]
+[[`PointOrRelation const &`][ `point_relation` ][The point or relation describing how the distance will be calculated. ]]
[[`unsigned`][ `k` ][The maximum number of values to return. ]]
]
[heading Example]
@@ -206,66 +190,10 @@
tree.query(bgi::nearest(pt, 5), std::back_inserter(result));
tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
tree.query(bgi::nearest(bgi::to_centroid(pt), 5) && bgi::within(box), std::back_inserter(result));
-tree.query(bgi::nearest(bgi::bounded(pt, bgi::to_furthest(10), bgi::to_nearest(20)), 5), std::back_inserter(result));
-``
-
-
-[warning Only one [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate may be used in a query. This version may be used only in queries returning a set of values - using output iterator.]
-
-[endsect]
-
-[#group__predicates_1ga54f507955e8dba2c928d6592d5970638]
-[section nearest(DistancePredicates const &)]
-Generate nearest predicate.
-
-[heading Description]
-When nearest predicate is passed to the query, k-nearest neighbour search will be performed.
-
-[*Distances predicates] may be a [^`Point`]. In this the case value closest to [^`Point`] is returned.
-
-It is possible to define how distance between value and query Point is calculated. This is done by passing PointRelation. It can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]] - default,
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-
-It is possible to define distances bounds, for example that a distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:
-
-* [^[link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db boost::geometry::index::unbounded()]] - default,
-* [^[link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 boost::geometry::index::min_bounded()]],
-* [^[link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 boost::geometry::index::max_bounded()]],
-* [^[link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 boost::geometry::index::bounded()]].
-
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]],
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-[heading Synopsis]
-[pre
-`template<``typename DistancePredicates``>`
-`detail::nearest_one<DistancePredicates> boost::geometry::index::nearest``(``DistancePredicates const &` `dpred``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`DistancePredicates const &`][ `dpred` ][The distance predicates. ]]
-]
-[heading Example]
-
-``
-tree.query(bgi::nearest(pt), value);
-tree.query(bgi::nearest(pt) && bgi::intersects(box), value);
-tree.query(bgi::nearest(bgi::to_centroid(pt)) && bgi::within(box), value);
-tree.query(bgi::nearest(bgi::bounded(pt, bgi::to_furthest(10), bgi::to_nearest(20))), value);
``
-[warning Only one [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate may be used in a query. This version may be used only in queries returning one value.]
+[warning Only one [^[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 nearest()]] predicate may be used in a query.]
[endsect]
Modified: sandbox-branches/geometry/index/doc/generated/rtree.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/rtree.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/rtree.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -89,31 +89,25 @@
[heading Member(s)]
[table
-[[Function][Description]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1ab823a214501cb0f9fd00ba12a1ade179 `operator=(const rtree &)`]][The assignment operator. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a44bd4edee49db92c18b6bbbba77b42be `operator=(rtree &&)`]][The moving assignment. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1aad0285d25f96341a8dd6cc22feb3bd73 `swap(rtree &)`]][Swaps contents of two rtrees. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1af6d5bd81e46cb4ff89277c753133664c `insert(value_type const &)`]][Insert a value to the index. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a5263a3faac7b4f0090d4ad1d44cc540d `insert(Iterator, Iterator)`]][Insert a range of values to the index. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1abb624abd9268b41e815d40342b2634c2 `insert(Range const &)`]][Insert a range of values to the index. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1af6ca6909354a997f89411ef40ea5688a `remove(value_type const &)`]][Remove a value from the container. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a6e9123114697d65b16ebc49cd5371fbd `remove(Iterator, Iterator)`]][Remove a range of values from the container. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a5a57bb93b0b2d7ea1c659e925f918e9c `remove(Range const &)`]][Remove a range of values from the container. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a25ce2ead0e8a2d270105f4958237e949 `query(Predicates const &, OutIter)`]][Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1abd965047110c9f8ef6ff097e97487312 `query(Predicates const &, value_type &)`]][Finds value meeting passed predicates e.g. nearest to some Point and intersecting some Box. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a930bf17d595a91d8ae924383a0387920 `spatial_query(Predicates const &, OutIter)`]][Finds values meeting spatial predicates, e.g. intersecting some Box. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909 `nearest_query(DistancesPredicates const &, value_type &)`]][Finds one value meeting distances predicates, e.g. nearest to some Point. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a6552331dca4d67647ef2a03bd0fbedcc `nearest_query(DistancesPredicates const &, Predicates const &, value_type &)`]][Finds one value meeting distances predicates and spatial predicates, e.g. nearest to some Point and intersecting some Box. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a3101652211c9f2d6ed8626dae6ff5f9d `nearest_query(DistancesPredicates const &, size_type, OutIter)`]][Finds k values meeting distances predicates, e.g. k nearest values to some Point. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a31c23b87b01f12282ef0df6404ab7301 `nearest_query(DistancesPredicates const &, size_type, Predicates const &, OutIter)`]][Finds k values meeting distances predicates and spatial predicates, e.g. k nearest values to some Point and intersecting some Box. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd `size()`]][Returns the number of stored values. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c `empty()`]][Query if the container is empty. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09 `clear()`]][Removes all values stored in the container. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1ace84997927e26d7cdb5aa67f14cdf6cc `bounds()`]][Returns the box able to contain all values stored in the container. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a17fce1fac81f6460d2c3a5744f4963ee `count(ValueOrIndexable const &)`]][Count Values or Indexables stored in the container. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a18910715f67608ff010556ac41f51606 `parameters()`]][Returns parameters. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1afc7e9a4bd53a58552c17c1e7cb997258 `translator()`]][Returns the translator object. ]]
-[[[link classboost_1_1geometry_1_1index_1_1rtree_1a1eeb303253f4cabe3a89a82ed41247ff `get_allocator()`]][Returns allocator used by the rtree. ]]
+[[Modifier][Function][Description]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1ab823a214501cb0f9fd00ba12a1ade179 `operator=(const rtree &)`]][The assignment operator. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1a44bd4edee49db92c18b6bbbba77b42be `operator=(rtree &&)`]][The moving assignment. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1aad0285d25f96341a8dd6cc22feb3bd73 `swap(rtree &)`]][Swaps contents of two rtrees. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1af6d5bd81e46cb4ff89277c753133664c `insert(value_type const &)`]][Insert a value to the index. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1a5263a3faac7b4f0090d4ad1d44cc540d `insert(Iterator, Iterator)`]][Insert a range of values to the index. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1abb624abd9268b41e815d40342b2634c2 `insert(Range const &)`]][Insert a range of values to the index. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1af6ca6909354a997f89411ef40ea5688a `remove(value_type const &)`]][Remove a value from the container. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1a6e9123114697d65b16ebc49cd5371fbd `remove(Iterator, Iterator)`]][Remove a range of values from the container. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1a5a57bb93b0b2d7ea1c659e925f918e9c `remove(Range const &)`]][Remove a range of values from the container. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1a25ce2ead0e8a2d270105f4958237e949 `query(Predicates const &, OutIter)`]][Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd `size()`]][Returns the number of stored values. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c `empty()`]][Query if the container is empty. ]]
+[[][[link classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09 `clear()`]][Removes all values stored in the container. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1ace84997927e26d7cdb5aa67f14cdf6cc `bounds()`]][Returns the box able to contain all values stored in the container. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1a17fce1fac81f6460d2c3a5744f4963ee `count(ValueOrIndexable const &)`]][Count Values or Indexables stored in the container. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1a18910715f67608ff010556ac41f51606 `parameters()`]][Returns parameters. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1afc7e9a4bd53a58552c17c1e7cb997258 `translator()`]][Returns the translator object. ]]
+[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1a1eeb303253f4cabe3a89a82ed41247ff `get_allocator()`]][Returns allocator used by the rtree. ]]
]
[#classboost_1_1geometry_1_1index_1_1rtree_1afa64d1b825b06d196b1164aec27c2d7b]
@@ -126,7 +120,8 @@
`rtree``(`[^[link classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a parameters_type]] `parameters` = [^[link classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a parameters_type]]`()``,` [^[link classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91 translator_type]]` const &` `translator` = [^[link classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91 translator_type]]`()``)`
]
-[heading Parameter(s)]
+[heading Modifier(s)]
+``explicit ``[heading Parameter(s)]
[table
[[Type][Name][Description]]
[[[^[link classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a parameters_type]]][ `parameters` ][The parameters object. ]]
@@ -209,7 +204,8 @@
[^[link classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d allocator_type]] `allocator` = [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d allocator_type]]`()``)`
]
-[heading Parameter(s)]
+[heading Modifier(s)]
+``explicit ``[heading Parameter(s)]
[table
[[Type][Name][Description]]
[[`Range const &`][ `rng` ][The range of Values. ]]
@@ -639,403 +635,47 @@
[*Nearest predicate]
-If the nearest predicate is passed a k-nearest neighbor search will be performed. It has two variants. Passing the first one will result in returning k number of values, the second one will result in returning only one, closest value. In both cases values will be returned to the output iterator. Only one nearest predicate may be passed to the query. It may be generated by:
+If the nearest predicate is passed a k-nearest neighbor search will be performed. This query will result in returning k values to the output iterator. Only one nearest predicate may be passed to the query. It may be generated by:
-* [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b boost::geometry::index::nearest()]].
+* [^[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 boost::geometry::index::nearest()]].
[*Connecting predicates]
-A set of predicates may be generated by:
-
-* [^`std::make_pair()`]
-* [^`boost::make_tuple()`]
-* [^`operator&&()`]
-
-[heading Synopsis]
+Predicates may be passed together connected with [^`operator&&()`].[heading Synopsis]
[pre
`template<``typename Predicates``,` `typename OutIter``>`
[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `query``(``Predicates const &` `predicates``,` `OutIter` `out_it``)`
]
-[heading Parameter(s)]
+[heading Modifier(s)]
+``const ``[heading Parameter(s)]
[table
[[Type][Name][Description]]
[[`Predicates const &`][ `predicates` ][Predicates. ]]
[[`OutIter`][ `out_it` ][The output iterator, e.g. generated by std::back_inserter().]]
]
[heading Returns]
-The number of values found.
+The number of values found.
[heading Example]
``
-tree.query(box1, std::back_inserter(result));
-tree.query(std::make_pair(bgi::intersects(poly), !bgi::within(box)), std::back_inserter(result));
+// return elements intersecting box
+tree.query(box, std::back_inserter(result));
+// return elements intersecting poly but not within box
tree.query(bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
+// return elements overlapping box and meeting my_fun value predicate
tree.query(bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+// return 5 elements nearest to pt and elements are intersecting box
tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
+// return 5 elements which centroids are nearest to pt and elements aren't within box
+tree.query(bgi::nearest(bgi::to_centroid(pt), 5) && !bgi::within(box), std::back_inserter(result));
``
[heading Throws]
-If Value copy constructor or copy assignment throws.
-
-[warning Only one [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] perdicate may be passed to the query.]
-
-[endsect]
-
-[#classboost_1_1geometry_1_1index_1_1rtree_1abd965047110c9f8ef6ff097e97487312]
-[section query(Predicates const &, value_type &)]
-Finds value meeting passed predicates e.g. nearest to some Point and intersecting some Box.
-
-[heading Description]
-This query function performs k-nearest neighbor searches. It allows to pass a set of predicates. The value will be returned only if all predicates are met. This query requires that one of the predicates must be one-value [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate.
-
-[*Spatial predicates]
-
-The simplest form of spatial predicate is a [^`Geometry`]. In this case Values intersecting the [^`Geometry`] are returned. More spatial predicates may be generated by one of the functions listed below:
-
-* [^[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]] - default,
-* [^[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]],
-
-
-It is possible to negate spatial predicates:
-
-* [^`! `[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^`! `[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^`! `[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]],
-* [^`! `[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^`! `[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]]
-
-[*Value predicate]
-
-This is a special kind of predicate which allows to pass a user-defined functor which checks if Value should be returned by the query. It's generated by:
-
-* [^[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce boost::geometry::index::value()]].
-
-[*Nearest predicate]
-
-This query requires that one of the predicates must be one-value [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate. It may be generated by [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] taking only one parameter - distance predicates.
-
-* [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b boost::geometry::index::nearest()]].
-
-[*Connecting predicates]
-
-A set of predicates may be generated by:
-
-* [^`std::make_pair()`]
-* [^`boost::make_tuple()`]
-* [^`operator&&()`]
-
-[heading Synopsis]
-[pre
-`template<``typename Predicates``>`
-[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `query``(``Predicates const &` `predicates``,` [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb value_type]]` &` `value``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`Predicates const &`][ `predicates` ][Predicates. ]]
-[[[^[link classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb value_type]]` &`][ `value` ][The reference to value which will hold the result of the query.]]
-]
-[heading Returns]
-The number of values found (1 if value was found, 0 otherwise).
-[heading Example]
-
-``
-tree.query(std::make_pair(bgi::nearest(pt), bgi::within(box)), value);
-tree.query(bgi::nearest(pt) && bgi::intersects(poly), value);
-``
-
-
-[heading Throws]
-If Value copy constructor or copy assignment throws.
-
-[warning This query requires that one of the predicates must be one-value [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate.]
-
-[endsect]
-
-[#classboost_1_1geometry_1_1index_1_1rtree_1a930bf17d595a91d8ae924383a0387920]
-[section spatial_query(Predicates const &, OutIter)]
-Finds values meeting spatial predicates, e.g. intersecting some Box.
-
-[heading Description]
-[*Spatial predicates] may be a [^`Geometry`]. In this case Values intersecting the [^`Geometry`] are returned.
-
-It may be generated by one of the functions listed below:
-
-* [^[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]] - default,
-* [^[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]],
-* [^`! `[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^`! `[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^`! `[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]],
-* [^`! `[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^`! `[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]]
-* [^[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce boost::geometry::index::value()]].
-
-
-Those predicates may be passed together in [^`std::pair`] or [^`boost::tuple`].[heading Synopsis]
-[pre
-`template<``typename Predicates``,` `typename OutIter``>`
-[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `spatial_query``(``Predicates const &` `pred``,` `OutIter` `out_it``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`Predicates const &`][ `pred` ][The spatial predicates or a Geometry. ]]
-[[`OutIter`][ `out_it` ][The output iterator of the result range. E.g. an iterator generated by std::back_inserter(container)]]
-]
-[heading Returns]
-The number of values found.
-[heading Throws]
-
-
-* If Value copy constructor or copy assignment throws.
-* If OutIter dereference or increment throws.
-
-
-
-[endsect]
-
-[#classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909]
-[section nearest_query(DistancesPredicates const &, value_type &)]
-Finds one value meeting distances predicates, e.g. nearest to some Point.
-
-[heading Description]
-[*Distances predicates] may be a [^`Point`]. In this the case the Value closest to [^`Point`] is returned.
-
-It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]] - default,
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-
-It is possible to define define distances bounds, for example that some distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:
-
-* [^[link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db boost::geometry::index::unbounded()]] - default,
-* [^[link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 boost::geometry::index::min_bounded()]],
-* [^[link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 boost::geometry::index::max_bounded()]],
-* [^[link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 boost::geometry::index::bounded()]].
-
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]],
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-[heading Synopsis]
-[pre
-`template<``typename DistancesPredicates``>`
-[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `nearest_query``(``DistancesPredicates const &` `dpred``,` [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb value_type]]` &` `v``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point.]]
-[[[^[link classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb value_type]]` &`][ `v` ][The reference to the object which will contain the result.]]
-]
-[heading Returns]
-The number of values found.
-[heading Throws]
-If Value copy constructor or copy assignment throws.
-
-[endsect]
-
-[#classboost_1_1geometry_1_1index_1_1rtree_1a6552331dca4d67647ef2a03bd0fbedcc]
-[section nearest_query(DistancesPredicates const &, Predicates const &, value_type &)]
-Finds one value meeting distances predicates and spatial predicates, e.g. nearest to some Point and intersecting some Box.
-
-[heading Description]
-[*Distances predicates] may be a [^`Point`]. In this the case the Value closest to [^`Point`] is returned.
-
-It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]] - default,
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-
-It is possible to define define distances bounds, for example that some distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:
-
-* [^[link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db boost::geometry::index::unbounded()]] - default,
-* [^[link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 boost::geometry::index::min_bounded()]],
-* [^[link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 boost::geometry::index::max_bounded()]],
-* [^[link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 boost::geometry::index::bounded()]].
-
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]],
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-[*Spatial predicates] may be a [^`Geometry`]. In this case Values intersecting the [^`Geometry`] are returned.
-
-It may be generated by one of the functions listed below:
-
-* [^[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]] - default,
-* [^[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]],
-* [^`! `[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^`! `[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^`! `[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]],
-* [^`! `[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^`! `[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]]
-* [^[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce boost::geometry::index::value()]].
-
-
-Those predicates may be passed together in [^`std::pair`] or [^`boost::tuple`].[heading Synopsis]
-[pre
-`template<``typename DistancesPredicates``,` `typename Predicates``>`
-[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `nearest_query``(``DistancesPredicates const &` `dpred``,`
- `Predicates const &` `pred``,`
- [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb value_type]]` &` `v``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point. ]]
-[[`Predicates const &`][ `pred` ][The spatial predicates or a Geometry ]]
-[[[^[link classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb value_type]]` &`][ `v` ][The reference to the object which will contain the result.]]
-]
-[heading Returns]
-The number of values found.
-[heading Throws]
-If Value copy constructor or copy assignment throws.
-
-[endsect]
-
-[#classboost_1_1geometry_1_1index_1_1rtree_1a3101652211c9f2d6ed8626dae6ff5f9d]
-[section nearest_query(DistancesPredicates const &, size_type, OutIter)]
-Finds k values meeting distances predicates, e.g. k nearest values to some Point.
-
-[heading Description]
-[*Distances predicates] may be a [^`Point`]. In this the case the Value closest to [^`Point`] is returned.
-
-It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]] - default,
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-
-It is possible to define define distances bounds, for example that some distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:
-
-* [^[link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db boost::geometry::index::unbounded()]] - default,
-* [^[link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 boost::geometry::index::min_bounded()]],
-* [^[link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 boost::geometry::index::max_bounded()]],
-* [^[link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 boost::geometry::index::bounded()]].
-
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]],
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-[heading Synopsis]
-[pre
-`template<``typename DistancesPredicates``,` `typename OutIter``>`
-[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `nearest_query``(``DistancesPredicates const &` `dpred``,`
- [^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `k``,`
- `OutIter` `out_it``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point. ]]
-[[[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]]][ `k` ][The max number of values. ]]
-[[`OutIter`][ `out_it` ][The output iterator of the result range. E.g. a back_insert_iterator.]]
-]
-[heading Returns]
-The number of values found.
-[heading Throws]
-If Value copy constructor or copy assignment throws. If OutIter dereference or increment throws.
-
-[endsect]
-
-[#classboost_1_1geometry_1_1index_1_1rtree_1a31c23b87b01f12282ef0df6404ab7301]
-[section nearest_query(DistancesPredicates const &, size_type, Predicates const &, OutIter)]
-Finds k values meeting distances predicates and spatial predicates, e.g. k nearest values to some Point and intersecting some Box.
-
-[heading Description]
-[*Distances predicates] may be a [^`Point`]. In this the case the Value closest to [^`Point`] is returned.
-
-It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]] - default,
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-
-It is possible to define define distances bounds, for example that some distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:
-
-* [^[link group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db boost::geometry::index::unbounded()]] - default,
-* [^[link group__distance__predicates_1ga39c7c94776ab840e164848e53d376098 boost::geometry::index::min_bounded()]],
-* [^[link group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079 boost::geometry::index::max_bounded()]],
-* [^[link group__distance__predicates_1ga20621ca608b1420c38182346b965f347 boost::geometry::index::bounded()]].
-
-
-MinRelation and MaxRelation describes bounds and can be generated by following functions:
-
-* [^[link group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636 boost::geometry::index::to_nearest()]],
-* [^[link group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0 boost::geometry::index::to_centroid()]],
-* [^[link group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02 boost::geometry::index::to_furthest()]].
-
-[*Spatial predicates] may be a [^`Geometry`]. In this case Values intersecting the [^`Geometry`] are returned.
-
-It may be generated by one of the functions listed below:
+If Value copy constructor or copy assignment throws.
-* [^[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]] - default,
-* [^[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]],
-* [^`! `[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^`! `[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^`! `[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]],
-* [^`! `[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^`! `[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]]
-* [^[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce boost::geometry::index::value()]].
-
-
-Those predicates may be passed together in [^`std::pair`] or [^`boost::tuple`].[heading Synopsis]
-[pre
-`template<``typename DistancesPredicates``,`
- `typename Predicates``,`
- `typename OutIter``>`
-[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `nearest_query``(``DistancesPredicates const &` `dpred``,`
- [^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `k``,`
- `Predicates const &` `pred``,`
- `OutIter` `out_it``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point ]]
-[[[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]]][ `k` ][The max number of values. ]]
-[[`Predicates const &`][ `pred` ][The spatial predicates or a Geometry. ]]
-[[`OutIter`][ `out_it` ][The output iterator of the result range. E.g. a back_insert_iterator.]]
-]
-[heading Returns]
-The number of values found.
-[heading Throws]
-If Value copy constructor or copy assignment throws. If OutIter dereference or increment throws.
+[warning Only one [^[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 nearest()]] perdicate may be passed to the query.]
[endsect]
@@ -1049,7 +689,8 @@
[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `size``()`
]
-[heading Returns]
+[heading Modifier(s)]
+``const ``[heading Returns]
The number of stored values.
[heading Throws]
Nothing.
@@ -1066,7 +707,8 @@
`bool` `empty``()`
]
-[heading Returns]
+[heading Modifier(s)]
+``const ``[heading Returns]
true if the container is empty.
[heading Throws]
Nothing.
@@ -1099,7 +741,8 @@
[^[link classboost_1_1geometry_1_1index_1_1rtree_1a653555282525601512c3b1bed1e9590f bounds_type]]` const &` `bounds``()`
]
-[heading Returns]
+[heading Modifier(s)]
+``const ``[heading Returns]
The box able to contain all values stored in the container or an invalid box if there are no values in the container.
[heading Throws]
Nothing.
@@ -1117,7 +760,8 @@
[^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `count``(``ValueOrIndexable const &` `vori``)`
]
-[heading Parameter(s)]
+[heading Modifier(s)]
+``const ``[heading Parameter(s)]
[table
[[Type][Name][Description]]
[[`ValueOrIndexable const &`][ `vori` ][The value or indexable which will be counted.]]
@@ -1139,7 +783,8 @@
[^[link classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a parameters_type]]` const &` `parameters``()`
]
-[heading Returns]
+[heading Modifier(s)]
+``const ``[heading Returns]
The parameters object.
[heading Throws]
Nothing.
@@ -1156,7 +801,8 @@
[^[link classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91 translator_type]]` const &` `translator``()`
]
-[heading Returns]
+[heading Modifier(s)]
+``const ``[heading Returns]
The translator object.
[heading Throws]
Nothing.
@@ -1173,7 +819,8 @@
[^[link classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d allocator_type]] `get_allocator``()`
]
-[heading Returns]
+[heading Modifier(s)]
+``const ``[heading Returns]
The allocator.
[heading Throws]
If allocator copy constructor throws.
Modified: sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -11,12 +11,6 @@
[[[link group__rtree__functions_1ga0219361de8b15c539af3f9bd027938ce `remove(rtree<...> &, Iterator, Iterator)`]][Remove a range of values from the container. ]]
[[[link group__rtree__functions_1ga5885d6c90a91f238f72ab9b5ef24daf9 `remove(rtree<...> &, Range const &)`]][Remove a range of values from the container. ]]
[[[link group__rtree__functions_1ga86e0808522ef6682b72b310a3891b276 `query(rtree<...> const &, Predicates const &, OutIter)`]][Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box. ]]
-[[[link group__rtree__functions_1ga35b54dcaed4e4d5fb38e9ef4b78ee3c7 `query(rtree<...> const &, Predicates const &, typename rtree<...>::value_type &)`]][Finds value meeting passed predicates e.g. nearest to some Point and intersecting some Box. ]]
-[[[link group__rtree__functions_1gadcec162d2391c2c9cc4215a5578d1721 `spatial_query(rtree<...> const &, Predicates const &, OutIter)`]][Find values meeting spatial predicates. ]]
-[[[link group__rtree__functions_1gacabbd521b88b67a700e1246e5889d343 `nearest_query(rtree<...> const &, DistancesPredicates const &, Value &)`]][Find the value meeting distances predicates. ]]
-[[[link group__rtree__functions_1gaf963f417d4ab54a2782928020dd8c3ad `nearest_query(rtree<...> const &, DistancesPredicates const &, Predicates const &, Value &)`]][Find the value meeting distances and spatial predicates. ]]
-[[[link group__rtree__functions_1ga74550ecb22e4ac69a445c1a6b0be9a1b `nearest_query(rtree<...> const &, DistancesPredicates const &, typename rtree<...>::size_type, OutIter)`]][Find k values meeting distances predicates. ]]
-[[[link group__rtree__functions_1ga8057af533a3e28e09337bab2c7a146aa `nearest_query(rtree<...> const &, DistancesPredicates const &, typename rtree<...>::size_type, Predicates const &, OutIter)`]][Find k values meeting distances and spatial predicates. ]]
[[[link group__rtree__functions_1ga0c65d7b29b1edf72f1d236ccf211f63c `clear(rtree<...> &)`]][Remove all values from the index. ]]
[[[link group__rtree__functions_1gaec0b88a9d8b408753e3069134f1598c7 `size(rtree<...> const &)`]][Get the number of values stored in the index. ]]
[[[link group__rtree__functions_1ga459e3d404fec7cbd66794714cbdd129e `empty(rtree<...> const &)`]][Query if there are no values stored in the index. ]]
@@ -211,19 +205,13 @@
[*Nearest predicate]
-If the nearest predicate is passed a k-nearest neighbor search will be performed. It has two variants. Passing the first one will result in returning k number of values, the second one will result in returning only one, closest value. In both cases values will be returned to the output iterator. Only one nearest predicate may be passed to the query. It may be generated by:
+If the nearest predicate is passed a k-nearest neighbor search will be performed. This query will result in returning k values to the output iterator. Only one nearest predicate may be passed to the query. It may be generated by:
-* [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b boost::geometry::index::nearest()]].
+* [^[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 boost::geometry::index::nearest()]].
[*Connecting predicates]
-A set of predicates may be generated by:
-
-* [^`std::make_pair()`]
-* [^`boost::make_tuple()`]
-* [^`operator&&()`]
-
-[heading Synopsis]
+Predicates may be passed together connected with [^`operator&&()`].[heading Synopsis]
[pre
`template<``typename Value``,`
`typename Options``,`
@@ -239,263 +227,33 @@
[heading Parameter(s)]
[table
[[Type][Name][Description]]
-[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][The spatial index. ]]
+[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][]]
[[`Predicates const &`][ `predicates` ][Predicates. ]]
[[`OutIter`][ `out_it` ][The output iterator, e.g. generated by std::back_inserter().]]
]
[heading Returns]
-The number of values found.
+The number of values found.
[heading Example]
``
-bgi::query(tree, box1, std::back_inserter(result));
-bgi::query(tree, std::make_pair(bgi::intersects(poly), !bgi::within(box)), std::back_inserter(result));
+// return elements intersecting box
+bgi::query(tree, box, std::back_inserter(result));
+// return elements intersecting poly but not within box
bgi::query(tree, bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
+// return elements overlapping box and meeting my_fun value predicate
bgi::query(tree, bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+// return 5 elements nearest to pt and elements are intersecting box
bgi::query(tree, bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
+// return 5 elements which centroids are nearest to pt and elements aren't within box
+bgi::query(tree, bgi::nearest(bgi::to_centroid(pt), 5) && !bgi::within(box), std::back_inserter(result));
``
[heading Throws]
-If Value copy constructor or copy assignment throws.
-
-[warning Only one [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] perdicate may be passed to the query.]
-
-[endsect]
-
-[#group__rtree__functions_1ga35b54dcaed4e4d5fb38e9ef4b78ee3c7]
-[section query(rtree<...> const &, Predicates const &, typename rtree<...>::value_type &)]
-Finds value meeting passed predicates e.g. nearest to some Point and intersecting some Box.
-
-[heading Description]
-This query function performs k-nearest neighbor searches. It allows to pass a set of predicates. The value will be returned only if all predicates are met. This query requires that one of the predicates must be one-value [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate.
-
-[*Spatial predicates]
-
-The simplest form of spatial predicate is a [^`Geometry`]. In this case Values intersecting the [^`Geometry`] are returned. More spatial predicates may be generated by one of the functions listed below:
-
-* [^[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]] - default,
-* [^[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]],
-
+If Value copy constructor or copy assignment throws.
-It is possible to negate spatial predicates:
-
-* [^`! `[link group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61 boost::geometry::index::covered_by()]],
-* [^`! `[link group__predicates_1ga351bb3b82e019ff45adf789385b8007d boost::geometry::index::disjoint()]],
-* [^`! `[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 boost::geometry::index::intersects()]],
-* [^`! `[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 boost::geometry::index::overlaps()]],
-* [^`! `[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d boost::geometry::index::within()]]
-
-[*Value predicate]
-
-This is a special kind of predicate which allows to pass a user-defined functor which checks if Value should be returned by the query. It's generated by:
-
-* [^[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce boost::geometry::index::value()]].
-
-[*Nearest predicate]
-
-This query requires that one of the predicates must be one-value [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate. It may be generated by [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] taking only one parameter - distance predicates.
-
-* [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b boost::geometry::index::nearest()]].
-
-[*Connecting predicates]
+[warning Only one [^[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 nearest()]] perdicate may be passed to the query.]
-A set of predicates may be generated by:
-
-* [^`std::make_pair()`]
-* [^`boost::make_tuple()`]
-* [^`operator&&()`]
-
-[heading Synopsis]
-[pre
-`template<``typename Value``,`
- `typename Options``,`
- `typename Translator``,`
- `typename Allocator``,`
- `typename Predicates``>`
-`rtree<Value, Options, Translator, Allocator>::size_type boost::geometry::index::query``(``rtree< Value, Options, Translator, Allocator > const &` `tree``,`
- `Predicates const &` `predicates``,`
- `typename rtree< Value, Options, Translator, Allocator >::value_type &` `value``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][The spatial index. ]]
-[[`Predicates const &`][ `predicates` ][Predicates. ]]
-[[`typename rtree< Value, Options, Translator, Allocator >::value_type &`][ `value` ][The reference to value which will hold the result of the query.]]
-]
-[heading Returns]
-The number of values found (1 if value was found, 0 otherwise).
-[heading Example]
-
-``
-bgi::query(tree, std::make_pair(bgi::nearest(pt), bgi::within(box)), value);
-bgi::query(tree, bgi::nearest(pt) && bgi::intersects(poly), value);
-``
-
-
-[heading Throws]
-If Value copy constructor or copy assignment throws.
-
-[warning This query requires that one of the predicates must be one-value [^[link group__predicates_1ga162233fd11b980853f8b8335cb70d57b nearest()]] predicate.]
-
-[endsect]
-
-[#group__rtree__functions_1gadcec162d2391c2c9cc4215a5578d1721]
-[section spatial_query(rtree<...> const &, Predicates const &, OutIter)]
-Find values meeting spatial predicates.
-
-[heading Description]
-It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a930bf17d595a91d8ae924383a0387920 rtree::spatial_query]] with parameters [^`(Predicates const&, OutIter)`].[heading Synopsis]
-[pre
-`template<``typename Value``,`
- `typename Options``,`
- `typename Translator``,`
- `typename Allocator``,`
- `typename Predicates``,`
- `typename OutIter``>`
-`size_t boost::geometry::index::spatial_query``(``rtree< Value, Options, Translator, Allocator > const &` `tree``,`
- `Predicates const &` `pred``,`
- `OutIter` `out_it``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][The spatial index. ]]
-[[`Predicates const &`][ `pred` ][The spatial predicates. ]]
-[[`OutIter`][ `out_it` ][The output iterator of the result range.]]
-]
-[heading Returns]
-The number of found values.
-[endsect]
-
-[#group__rtree__functions_1gacabbd521b88b67a700e1246e5889d343]
-[section nearest_query(rtree<...> const &, DistancesPredicates const &, Value &)]
-Find the value meeting distances predicates.
-
-[heading Description]
-It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909 rtree::nearest_query]] with parameters [^`(DistancesPredicates const& dpred, value_type & v)`].[heading Synopsis]
-[pre
-`template<``typename Value``,`
- `typename Options``,`
- `typename Translator``,`
- `typename Allocator``,`
- `typename DistancesPredicates``>`
-`size_t boost::geometry::index::nearest_query``(``rtree< Value, Options, Translator, Allocator > const &` `tree``,`
- `DistancesPredicates const &` `dpred``,`
- `Value &` `v``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][The spatial index. ]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates. ]]
-[[`Value &`][ `v` ][The result.]]
-]
-[heading Returns]
-The number of found values.
-[endsect]
-
-[#group__rtree__functions_1gaf963f417d4ab54a2782928020dd8c3ad]
-[section nearest_query(rtree<...> const &, DistancesPredicates const &, Predicates const &, Value &)]
-Find the value meeting distances and spatial predicates.
-
-[heading Description]
-It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909 rtree::nearest_query]] with parameters [^`(DistancesPredicates const& dpred, Predicates const& pred, value_type & v)`].[heading Synopsis]
-[pre
-`template<``typename Value``,`
- `typename Options``,`
- `typename Translator``,`
- `typename Allocator``,`
- `typename DistancesPredicates``,`
- `typename Predicates``>`
-`size_t boost::geometry::index::nearest_query``(``rtree< Value, Options, Translator, Allocator > const &` `tree``,`
- `DistancesPredicates const &` `dpred``,`
- `Predicates const &` `pred``,`
- `Value &` `v``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][The spatial index. ]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates. ]]
-[[`Predicates const &`][ `pred` ][The spatial predicates. ]]
-[[`Value &`][ `v` ][The result.]]
-]
-[heading Returns]
-The number of found values.
-[endsect]
-
-[#group__rtree__functions_1ga74550ecb22e4ac69a445c1a6b0be9a1b]
-[section nearest_query(rtree<...> const &, DistancesPredicates const &, typename rtree<...>::size_type, OutIter)]
-Find k values meeting distances predicates.
-
-[heading Description]
-It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909 rtree::nearest_query]] with parameters [^`(DistancesPredicates const & dpred, size_type k, OutIter out_it)`].[heading Synopsis]
-[pre
-`template<``typename Value``,`
- `typename Options``,`
- `typename Translator``,`
- `typename Allocator``,`
- `typename DistancesPredicates``,`
- `typename OutIter``>`
-`size_t boost::geometry::index::nearest_query``(``rtree< Value, Options, Translator, Allocator > const &` `tree``,`
- `DistancesPredicates const &` `dpred``,`
- `typename rtree< Value, Options, Translator, Allocator >::size_type` `k``,`
- `OutIter` `out_it``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][The spatial index. ]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates. ]]
-[[`typename rtree< Value, Options, Translator, Allocator >::size_type`][ `k` ][The max number of values. ]]
-[[`OutIter`][ `out_it` ][The output iterator of the result range.]]
-]
-[heading Returns]
-The number of found values.
-[endsect]
-
-[#group__rtree__functions_1ga8057af533a3e28e09337bab2c7a146aa]
-[section nearest_query(rtree<...> const &, DistancesPredicates const &, typename rtree<...>::size_type, Predicates const &, OutIter)]
-Find k values meeting distances and spatial predicates.
-
-[heading Description]
-It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909 rtree::nearest_query]] with parameters [^`(DistancesPredicates const & dpred, size_type k, Predicates const & pred, OutIter out_it)`].[heading Synopsis]
-[pre
-`template<``typename Value``,`
- `typename Options``,`
- `typename Translator``,`
- `typename Allocator``,`
- `typename DistancesPredicates``,`
- `typename Predicates``,`
- `typename OutIter``>`
-`size_t boost::geometry::index::nearest_query``(``rtree< Value, Options, Translator, Allocator > const &` `tree``,`
- `DistancesPredicates const &` `dpred``,`
- `typename rtree< Value, Options, Translator, Allocator >::size_type` `k``,`
- `Predicates const &` `pred``,`
- `OutIter` `out_it``)`
-]
-
-[heading Parameter(s)]
-[table
-[[Type][Name][Description]]
-[[`rtree< Value, Options, Translator, Allocator > const &`][ `tree` ][The spatial index. ]]
-[[`DistancesPredicates const &`][ `dpred` ][The distances predicates. ]]
-[[`typename rtree< Value, Options, Translator, Allocator >::size_type`][ `k` ][The max number of values. ]]
-[[`Predicates const &`][ `pred` ][The spatial predicates. ]]
-[[`OutIter`][ `out_it` ][The output iterator of the result range.]]
-]
-[heading Returns]
-The number of found values.
[endsect]
[#group__rtree__functions_1ga0c65d7b29b1edf72f1d236ccf211f63c]
Modified: sandbox-branches/geometry/index/doc/generated/translator_index.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/translator_index.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/translator_index.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -43,7 +43,8 @@
`index``(``Container const &` `c``)`
]
-[heading Parameter(s)]
+[heading Modifier(s)]
+``explicit ``[heading Parameter(s)]
[table
[[Type][Name][Description]]
[[`Container const &`][ `c` ][The container which stores indexed values. ]]
Modified: sandbox-branches/geometry/index/doc/html/geometry_index/introduction.html
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/introduction.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/introduction.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Introduction</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="../index.html" title="Chapter 1. Geometry Index">
<link rel="up" href="../index.html" title="Chapter 1. Geometry Index">
<link rel="prev" href="../index.html" title="Chapter 1. Geometry Index">
Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>R-tree</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="../index.html" title="Chapter 1. Geometry Index">
<link rel="up" href="../index.html" title="Chapter 1. Geometry Index">
<link rel="prev" href="introduction.html" title="Introduction">
@@ -73,8 +73,8 @@
parameters</a></span></dt>
<dt><span class="section"><a href="r_tree/reference.html#geometry_index.r_tree.reference.group__predicates">Predicates
(boost::geometry::index::)</a></span></dt>
-<dt><span class="section"><a href="r_tree/reference.html#geometry_index.r_tree.reference.group__distance__predicates">Distance
- predicates (boost::geometry::index::)</a></span></dt>
+<dt><span class="section"><a href="r_tree/reference.html#geometry_index.r_tree.reference.group__nearest__relations">Nearest
+ relations (boost::geometry::index::)</a></span></dt>
<dt><span class="section"><a href="r_tree/reference.html#geometry_index.r_tree.reference.group__adaptors">Adaptors
(boost::geometry::index::adaptors::)</a></span></dt>
<dt><span class="section"><a href="r_tree/reference.html#geometry_index.r_tree.reference.translators">Translators
Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/creation_and_modification.html
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/creation_and_modification.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/creation_and_modification.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Creation and modification</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="../../index.html" title="Chapter 1. Geometry Index">
<link rel="up" href="../r_tree.html" title="R-tree">
<link rel="prev" href="rtree_quickstart.html" title="Quick Start">
@@ -55,7 +55,7 @@
</p>
<pre class="programlisting"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Parameters</span><span class="special">,</span> <span class="identifier">Translator</span> <span class="special">=</span> <span class="identifier">translator</span><span class="special">::</span><span class="identifier">def</span><span class="special"><</span><span class="identifier">Value</span><span class="special">>,</span> <span class="identifier">Allocator</span><span class="special">></span> <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">allocator</span><span class="special"><</span><span class="identifier">Value</span><span class="special">></span> <span class="special">></span>
</pre>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="computeroutput">Value</code> - type of object which will be stored in the container,
</li>
@@ -90,7 +90,7 @@
be handled by the default <code class="computeroutput">Translator</code> - <code class="computeroutput"><span class="identifier">index</span><span class="special">::</span><span class="identifier">translator</span><span class="special">::</span><span class="identifier">def</span><span class="special"><</span>Value<span class="special">></span></code>
are defined as follows:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="computeroutput">Indexable <span class="special">=</span> Point
<span class="special">|</span> Box</code>
@@ -116,7 +116,7 @@
A <code class="computeroutput">Translator</code> is a type which knows how to handle <code class="computeroutput">Value</code>s.
It has two purposes:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
it translates <code class="computeroutput">Value</code> to a more suitable <code class="computeroutput">Indexable</code>
type which is needed by most of operations,
@@ -134,7 +134,7 @@
<p>
If comparison of two <code class="computeroutput">Value</code>s is required, the default translator:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
for <code class="computeroutput">Point</code>
and <code class="computeroutput">Box</code>
Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/introduction.html
Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html
Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html
Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/rtree_quickstart.html
Modified: sandbox-branches/geometry/index/doc/html/index.html
Modified: sandbox-branches/geometry/index/doc/make_qbk.py
Modified: sandbox-branches/geometry/index/doc/rtree.qbk
Modified: sandbox-branches/geometry/index/doc/rtree/query.qbk
Modified: sandbox-branches/geometry/index/test/Jamfile.v2
Modified: sandbox-branches/geometry/index/test/rtree/test_rtree.hpp
Deleted: sandbox-branches/geometry/index/test/static_vector.cpp
Added: sandbox-branches/geometry/index/test/varray.cpp
Modified: sandbox-branches/geometry/index/tests/additional_glut_vis.cpp
Modified: sandbox-branches/geometry/index/tests/additional_sizes_and_times.cpp
Modified: sandbox-branches/geometry/index/tests/additional_speed.cpp
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/introduction.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/introduction.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Introduction</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="../../index.html" title="Chapter 1. Geometry Index">
<link rel="up" href="../r_tree.html" title="R-tree">
<link rel="prev" href="../r_tree.html" title="R-tree">
@@ -28,10 +28,10 @@
</h3></div></div></div>
<p>
R-tree is a tree data structure used for spatial searching. It was proposed
- by Antonin Guttman in 1984 <sup>[<a name="geometry_index.r_tree.introduction.f0" href="#ftn.geometry_index.r_tree.introduction.f0" class="footnote">1</a>]</sup> as an expansion of B-tree for multi-dimensional data. It may
+ by Antonin Guttman in 1984 [1]</sup></a> as an expansion of B-tree for multi-dimensional data. It may
be used to store points or volumetric data in order to perform a spatial
query later. This query may return objects that are inside some area or are
- close to some point in space <sup>[<a name="geometry_index.r_tree.introduction.f1" href="#ftn.geometry_index.r_tree.introduction.f1" class="footnote">2</a>]</sup>.
+ close to some point in space [2]</sup></a>.
</p>
<p>
The R-tree structure is presented on the image below. Each R-tree's node
@@ -51,7 +51,7 @@
</p>
<p>
The R-tree is a self-balanced data structure. The key part of balancing algorithm
- is node splitting algorithm <sup>[<a name="geometry_index.r_tree.introduction.f2" href="#ftn.geometry_index.r_tree.introduction.f2" class="footnote">3</a>]</sup> <sup>[<a name="geometry_index.r_tree.introduction.f3" href="#ftn.geometry_index.r_tree.introduction.f3" class="footnote">4</a>]</sup>. Each algorithm produces different splits so the internal structure
+ is node splitting algorithm [3]</sup></a> [4]</sup></a>. Each algorithm produces different splits so the internal structure
of a tree may be different for each one of them. In general more complex
algorithms analyses elements better and produces less overlapping nodes.
In the searching process less nodes must be traversed in order to find desired
@@ -179,13 +179,13 @@
</table></div>
<h5>
<a name="geometry_index.r_tree.introduction.h0"></a>
- <span><a name="geometry_index.r_tree.introduction.implementation_details"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.implementation_details">Implementation
+ <span class="phrase"><a name="geometry_index.r_tree.introduction.implementation_details"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.implementation_details">Implementation
details</a>
</h5>
<p>
Key features of this implementation of the R-tree are:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
capable to store arbitrary Value type,
</li>
@@ -207,14 +207,14 @@
</ul></div>
<h5>
<a name="geometry_index.r_tree.introduction.h1"></a>
- <span><a name="geometry_index.r_tree.introduction.dependencies"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.dependencies">Dependencies</a>
+ <span class="phrase"><a name="geometry_index.r_tree.introduction.dependencies"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.dependencies">Dependencies</a>
</h5>
<p>
R-tree depends on <span class="bold"><strong>Boost.Move</strong></span>, <span class="bold"><strong>Boost.Container</strong></span>, <span class="bold"><strong>Boost.Tuple</strong></span>.
</p>
<h5>
<a name="geometry_index.r_tree.introduction.h2"></a>
- <span><a name="geometry_index.r_tree.introduction.contributors"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.contributors">Contributors</a>
+ <span class="phrase"><a name="geometry_index.r_tree.introduction.contributors"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.contributors">Contributors</a>
</h5>
<p>
The spatial index was originally started by Federico J. Fernandez during
@@ -222,7 +222,7 @@
</p>
<h5>
<a name="geometry_index.r_tree.introduction.h3"></a>
- <span><a name="geometry_index.r_tree.introduction.spatial_thanks"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.spatial_thanks">Spatial
+ <span class="phrase"><a name="geometry_index.r_tree.introduction.spatial_thanks"></a></span><a class="link" href="introduction.html#geometry_index.r_tree.introduction.spatial_thanks">Spatial
thanks</a>
</h5>
<p>
@@ -231,20 +231,20 @@
list for their help.
</p>
<div class="footnotes">
-<br><hr width="100" align="left">
-<div class="footnote"><p><sup>[<a id="ftn.geometry_index.r_tree.introduction.f0" href="#geometry_index.r_tree.introduction.f0" class="para">1</a>] </sup>
+<br><hr style="width:100; align:left;">
+<div id="ftn.geometry_index.r_tree.introduction.f0" class="footnote"><p>[1]
Guttman, A. (1984). <span class="emphasis"><em>R-Trees: A Dynamic Index Structure for Spatial
Searching</em></span>
</p></div>
-<div class="footnote"><p><sup>[<a id="ftn.geometry_index.r_tree.introduction.f1" href="#geometry_index.r_tree.introduction.f1" class="para">2</a>] </sup>
+<div id="ftn.geometry_index.r_tree.introduction.f1" class="footnote"><p>[2]
Cheung, K.; Fu, A. (1998). <span class="emphasis"><em>Enhanced Nearest Neighbour Search
on the R-tree</em></span>
</p></div>
-<div class="footnote"><p><sup>[<a id="ftn.geometry_index.r_tree.introduction.f2" href="#geometry_index.r_tree.introduction.f2" class="para">3</a>] </sup>
+<div id="ftn.geometry_index.r_tree.introduction.f2" class="footnote"><p>[3]
Greene, D. (1989). <span class="emphasis"><em>An implementation and performance analysis
of spatial data access methods</em></span>
</p></div>
-<div class="footnote"><p><sup>[<a id="ftn.geometry_index.r_tree.introduction.f3" href="#geometry_index.r_tree.introduction.f3" class="para">4</a>] </sup>
+<div id="ftn.geometry_index.r_tree.introduction.f3" class="footnote"><p>[4]
Beckmann, N.; Kriegel, H. P.; Schneider, R.; Seeger, B. (1990). <span class="emphasis"><em>The
R*-tree: an efficient and robust access method for points and rectangles</em></span>
</p></div>
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Queries</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="../../index.html" title="Chapter 1. Geometry Index">
<link rel="up" href="../r_tree.html" title="R-tree">
<link rel="prev" href="creation_and_modification.html" title="Creation and modification">
@@ -44,7 +44,7 @@
Queries returns <code class="computeroutput">Value</code>s which meets some predicates. Currently
supported are three types of predicates:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
spatial predicates - defining relationship between stored Values and
some Geometry,
@@ -60,7 +60,7 @@
<p>
For example queries may be used to retrieve Values:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
intersecting some area but not within other area,
</li>
@@ -251,54 +251,13 @@
Nearest neighbours queries returns <code class="computeroutput">Value</code>s which are closest
to some point in space. Additionally it is possible to pass define how
the distance to the <code class="computeroutput"><span class="identifier">Value</span></code>
- should be calculated or distance predicates defining minimal and maximal
- distances. The examples of some knn queries may be found in the table below.
- All queries returns 5 closest <code class="computeroutput"><span class="identifier">Values</span></code>.
- The query point, region and result Values are orange.
+ should be calculated. The examples of some knn queries may be found in
+ the table below. All queries returns 5 closest <code class="computeroutput"><span class="identifier">Values</span></code>.
+ The query point and Values are orange.
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../../../images/knn.png" alt="knn"></span>
</p>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Basic knn query
- </p>
- </th>
-<th>
- <p>
- knn query - distance to Indexable's furthest point greather than
- ...
- </p>
- </th>
-<th>
- <p>
- knn query - distance to Indexable's closest point greather than
- ...
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <span class="inlinemediaobject"><img src="../../../images/knn.png" alt="knn"></span>
- </p>
- </td>
-<td>
- <p>
- <span class="inlinemediaobject"><img src="../../../images/knn_inters.png" alt="knn_inters"></span>
- </p>
- </td>
-<td>
- <p>
- <span class="inlinemediaobject"><img src="../../../images/knn_cover.png" alt="knn_cover"></span>
- </p>
- </td>
-</tr></tbody>
-</table></div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="geometry_index.r_tree.queries.nearest_neighbours_queries.k_nearest_neighbours"></a><a class="link" href="queries.html#geometry_index.r_tree.queries.nearest_neighbours_queries.k_nearest_neighbours" title="k nearest neighbours">k
@@ -335,81 +294,20 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.queries.nearest_neighbours_queries.one_nearest_neighbour"></a><a class="link" href="queries.html#geometry_index.r_tree.queries.nearest_neighbours_queries.one_nearest_neighbour" title="One nearest neighbour">One
- nearest neighbour</a>
+<a name="geometry_index.r_tree.queries.nearest_neighbours_queries.distance_calculation"></a><a class="link" href="queries.html#geometry_index.r_tree.queries.nearest_neighbours_queries.distance_calculation" title="Distance calculation">Distance
+ calculation</a>
</h5></div></div></div>
<p>
- Another type of nearest neighbour query is searching for the one closest
- <code class="computeroutput">Value</code>. If it is found, 1 is returned by the method or function.
- This kind of query has only two forms.
+ It is possible to define how distance to the non-point <code class="computeroutput">Value</code>
+ should be calculated. To do this one may pass a relation object generated
+ as follows:
</p>
-<p>
- Method call
- </p>
-<pre class="programlisting">Value <span class="identifier">returned_value</span><span class="special">;</span>
-Point <span class="identifier">pt</span><span class="special">(...);</span>
-<span class="identifier">size_t</span> <span class="identifier">n</span> <span class="special">=</span> <span class="identifier">rt</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">returned_value</span><span class="special">);</span>
-</pre>
-<p>
- Function call
- </p>
-<pre class="programlisting">Value <span class="identifier">Value</span> <span class="identifier">returned_value</span><span class="special">;</span>
-Point <span class="identifier">pt</span><span class="special">(...);</span>
-<span class="identifier">size_t</span> <span class="identifier">n</span> <span class="special">=</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">returned_value</span><span class="special">);</span>
-</pre>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.queries.nearest_neighbours_queries.distances_predicates"></a><a class="link" href="queries.html#geometry_index.r_tree.queries.nearest_neighbours_queries.distances_predicates" title="Distances predicates">Distances
- predicates</a>
-</h5></div></div></div>
-<p>
- It is possible to define if calculated distance between query point and
- <code class="computeroutput">Value</code> should be greater, lesser or between some other distances.
- Those are called <code class="computeroutput"><span class="identifier">DistancesPredicate</span></code>s
- and may be defined as follows.
- </p>
-<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span><span class="identifier">__Value__</span><span class="special">></span> <span class="identifier">returned_values</span><span class="special">;</span>
-Point <span class="identifier">pt</span><span class="special">(...);</span>
-
-<span class="comment">/* default - without bounds */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
-
-<span class="comment">/* same as default */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">unbounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
-
-<span class="comment">/* distance must be greater than or equal to 10 */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">min_bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">10</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
-
-<span class="comment">/* distance must be lesser than or equal to 500 */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">max_bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">500</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
-
-<span class="comment">/* distance must be between 10 and 500 */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">10</span><span class="special">,</span> <span class="number">500</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
-</pre>
-<p>
- Furthermore, it's possible to define if the closest, furthest or centroidal
- point of the non-point <code class="computeroutput">Indexable</code> should be taken into account
- in the routine calculating distance.
- </p>
-<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span>Value<span class="special">></span> <span class="identifier">returned_values</span><span class="special">;</span>
-Point <span class="identifier">pt</span><span class="special">(...);</span>
-
-<span class="comment">/* default - distance between Indexable's closest point and a query point
-must be greater than 10 */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">min_bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">10</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
-
-<span class="comment">/* same as default - distance between Indexable's closest point and a query point
-must be greater than 10 */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">min_bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">to_nearest</span><span class="special">(</span><span class="number">10</span><span class="special">)),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">)
);</span>
-
-<span class="comment">/* distance between Indexable's furthest point and a query point
-must be greater than 10 */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">min_bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">to_furthest</span><span class="special">(</span><span class="number">10</span><span class="special">)),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">
));</span>
-
-<span class="comment">/* distance between Indexable's centroid and a query point
-must be greater than 10 */</span>
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">min_bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="number">10</span><span class="special">)),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">
));</span>
+<pre class="programlisting"><span class="comment">/* caluclate distance to the Indexables' nearest points */</span>
+<span class="identifier">tree</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span> <span class="comment">// default</span>
+<span class="comment">/* caluclate distance to the Indexables' centroid */</span>
+<span class="identifier">tree</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
+<span class="comment">/* caluclate distance to the Indexables' furthest points */</span>
+<span class="identifier">tree</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_furthest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">k</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
</pre>
</div>
</div>
@@ -440,26 +338,13 @@
a set of predicates</a>
</h4></div></div></div>
<p>
- It's possible to use some number of predicates in one query by passing:
+ It's possible to use some number of predicates in one query by connecting
+ them with <code class="computeroutput"><span class="keyword">operator</span><span class="special">&&</span></code>
+ e.g. <code class="computeroutput"><span class="identifier">Pred1</span> <span class="special">&&</span>
+ <span class="identifier">Pred2</span> <span class="special">&&</span>
+ <span class="identifier">Pred3</span> <span class="special">&&</span>
+ <span class="special">...</span></code>.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special"><</span><span class="identifier">Pred1</span><span class="special">,</span>
- <span class="identifier">Pred2</span><span class="special">></span></code>,
- </li>
-<li class="listitem">
- <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span><span class="special"><</span><span class="identifier">Pred1</span><span class="special">,</span>
- <span class="identifier">Pred2</span><span class="special">,</span>
- <span class="identifier">Pred3</span><span class="special">,</span>
- <span class="special">...></span></code>
- </li>
-<li class="listitem">
- predicates connected by <code class="computeroutput"><span class="keyword">operator</span><span class="special">&&</span></code> e.g. <code class="computeroutput"><span class="identifier">Pred1</span>
- <span class="special">&&</span> <span class="identifier">Pred2</span>
- <span class="special">&&</span> <span class="identifier">Pred3</span>
- <span class="special">&&</span> <span class="special">...</span></code>.
- </li>
-</ul></div>
<p>
These predicates are connected by logical AND. Passing all predicates together
not only makes possible to construct advanced queries but is also faster
@@ -477,9 +362,7 @@
<p>
Of course it's possible to connect different types of predicates together.
</p>
-<pre class="programlisting"><span class="identifier">rt</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">to_furthest</span><span class="special">(</span><span class="number">1</span><span class="special">),</span> <span class="number">10</span><span class="special">))</span> <span class="special">&&</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">b</span><span class="special">),</span> <span class="id
entifier">returned_value</span><span class="special">);</span>
-
-<span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">k</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
+<pre class="programlisting"><span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">rt</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">k</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">returned_values</span><span class="special">));</span>
<span class="identifier">BOOST_FOREACH</span><span class="special">(</span><span class="identifier">Value</span> <span class="special">&</span> <span class="identifier">v</span><span class="special">,</span> <span class="identifier">rt</span> <span class="special">|</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">queried</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">k</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">covered_by</span><span class="special">(</span><span class="identifier">b</span><span class="special">)))</span>
<span class="special">;</span> <span class="comment">// do something with v</span>
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Reference</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="../../index.html" title="Chapter 1. Geometry Index">
<link rel="up" href="../r_tree.html" title="R-tree">
<link rel="prev" href="queries.html" title="Queries">
@@ -33,8 +33,8 @@
parameters</a></span></dt>
<dt><span class="section"><a href="reference.html#geometry_index.r_tree.reference.group__predicates">Predicates
(boost::geometry::index::)</a></span></dt>
-<dt><span class="section"><a href="reference.html#geometry_index.r_tree.reference.group__distance__predicates">Distance
- predicates (boost::geometry::index::)</a></span></dt>
+<dt><span class="section"><a href="reference.html#geometry_index.r_tree.reference.group__nearest__relations">Nearest
+ relations (boost::geometry::index::)</a></span></dt>
<dt><span class="section"><a href="reference.html#geometry_index.r_tree.reference.group__adaptors">Adaptors
(boost::geometry::index::adaptors::)</a></span></dt>
<dt><span class="section"><a href="reference.html#geometry_index.r_tree.reference.translators">Translators
@@ -47,12 +47,12 @@
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree"></a><a name="classboost_1_1geometry_1_1index_1_1rtree"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree" title="boost::geometry::index::rtree">boost::geometry::index::rtree</a>
</h4></div></div></div>
<p>
- <a class="indexterm" name="idp9833816"></a><a class="indexterm" name="idp9834128"></a><a class="indexterm" name="idp9834440"></a><a class="indexterm" name="idp9834752"></a>
+ <a class="indexterm" name="id875577"></a><a class="indexterm" name="id875582"></a><a class="indexterm" name="id875586"></a><a class="indexterm" name="id875591"></a>
The R-tree spatial index.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.description">Description</a>
</h6>
<p>
This is self-balancing spatial index capable to store various types of
@@ -60,7 +60,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters">Parameters</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters">Parameters</a>
</h6>
<p>
The user must pass a type defining the Parameters which will be used in
@@ -70,7 +70,7 @@
<p>
Predefined algorithms with compile-time parameters are:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="literal"><a class="link" href="reference.html#structboost_1_1geometry_1_1index_1_1linear">boost::geometry::index::linear</a></code>,
</li>
@@ -84,7 +84,7 @@
<p>
Predefined algorithms with run-time parameters are:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1runtime_1_1linear">boost::geometry::index::runtime::linear</a></code>,
</li>
@@ -97,7 +97,7 @@
</ul></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator">Translator</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator">Translator</a>
</h6>
<p>
The Translator translates from Value to Indexable each time r-tree requires
@@ -114,14 +114,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.header">Header</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.header">Header</a>
</h6>
<p>
<code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">rtree</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
<code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Parameters</span></code><code class="computeroutput"><span class="special">,</span></code>
@@ -134,7 +134,7 @@
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h5"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.template_parameter_s_">Template
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -208,7 +208,7 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h6"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.typedef_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.typedef_s_">Typedef(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.typedef_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.typedef_s_">Typedef(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -316,7 +316,7 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h7"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.constructor_s__and_destructor">Constructor(s)
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.constructor_s__and_destructor">Constructor(s)
and destructor</a>
</h6>
<div class="informaltable"><table class="table">
@@ -458,16 +458,22 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.h8"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.member_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.member_s_">Member(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.member_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.member_s_">Member(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
+<col>
</colgroup>
<thead><tr>
<th>
<p>
+ Modifier
+ </p>
+ </th>
+<th>
+ <p>
Function
</p>
</th>
@@ -480,6 +486,8 @@
<tbody>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ab823a214501cb0f9fd00ba12a1ade179"><code class="computeroutput"><span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">rtree</span>
<span class="special">&)</span></code></a>
@@ -493,6 +501,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a44bd4edee49db92c18b6bbbba77b42be"><code class="computeroutput"><span class="keyword">operator</span><span class="special">=(</span><span class="identifier">rtree</span> <span class="special">&&)</span></code></a>
</p>
@@ -505,6 +515,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1aad0285d25f96341a8dd6cc22feb3bd73"><code class="computeroutput"><span class="identifier">swap</span><span class="special">(</span><span class="identifier">rtree</span> <span class="special">&)</span></code></a>
</p>
@@ -517,6 +529,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af6d5bd81e46cb4ff89277c753133664c"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">value_type</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
@@ -530,6 +544,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5263a3faac7b4f0090d4ad1d44cc540d"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span>
<span class="identifier">Iterator</span><span class="special">)</span></code></a>
@@ -543,6 +559,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1abb624abd9268b41e815d40342b2634c2"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">Range</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
@@ -556,6 +574,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af6ca6909354a997f89411ef40ea5688a"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">value_type</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
@@ -569,6 +589,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a6e9123114697d65b16ebc49cd5371fbd"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">Iterator</span><span class="special">,</span>
<span class="identifier">Iterator</span><span class="special">)</span></code></a>
@@ -582,6 +604,8 @@
</tr>
<tr>
<td>
+ </td>
+<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5a57bb93b0b2d7ea1c659e925f918e9c"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">Range</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
@@ -596,6 +620,11 @@
<tr>
<td>
<p>
+ <code class="computeroutput"><span class="keyword">const</span></code>
+ </p>
+ </td>
+<td>
+ <p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a25ce2ead0e8a2d270105f4958237e949"><code class="computeroutput"><span class="identifier">query</span><span class="special">(</span><span class="identifier">Predicates</span> <span class="keyword">const</span>
<span class="special">&,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></a>
</p>
@@ -610,155 +639,92 @@
<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1abd965047110c9f8ef6ff097e97487312"><code class="computeroutput"><span class="identifier">query</span><span class="special">(</span><span class="identifier">Predicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">value_type</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Finds value meeting passed predicates e.g. nearest to some Point
- and intersecting some Box.
+ <code class="computeroutput"><span class="keyword">const</span></code>
</p>
</td>
-</tr>
-<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a930bf17d595a91d8ae924383a0387920"><code class="computeroutput"><span class="identifier">spatial_query</span><span class="special">(</span><span class="identifier">Predicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></a>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd"><code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code></a>
</p>
</td>
<td>
<p>
- Finds values meeting spatial predicates, e.g. intersecting some
- Box.
+ Returns the number of stored values.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">value_type</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Finds one value meeting distances predicates, e.g. nearest to
- some Point.
+ <code class="computeroutput"><span class="keyword">const</span></code>
</p>
</td>
-</tr>
-<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a6552331dca4d67647ef2a03bd0fbedcc"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">Predicates</span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">value_type</span> <span class="special">&)</span></code></a>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c"><code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code></a>
</p>
</td>
<td>
<p>
- Finds one value meeting distances predicates and spatial predicates,
- e.g. nearest to some Point and intersecting some Box.
+ Query if the container is empty.
</p>
</td>
</tr>
<tr>
<td>
- <p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a3101652211c9f2d6ed8626dae6ff5f9d"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Finds k values meeting distances predicates, e.g. k nearest values
- to some Point.
- </p>
</td>
-</tr>
-<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a31c23b87b01f12282ef0df6404ab7301"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">Predicates</span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">OutIter</span><span class="special">)</span></code></a>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09"><code class="computeroutput"><span class="identifier">clear</span><span class="special">()</span></code></a>
</p>
</td>
<td>
<p>
- Finds k values meeting distances predicates and spatial predicates,
- e.g. k nearest values to some Point and intersecting some Box.
+ Removes all values stored in the container.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd"><code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Returns the number of stored values.
+ <code class="computeroutput"><span class="keyword">const</span></code>
</p>
</td>
-</tr>
-<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c"><code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code></a>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ace84997927e26d7cdb5aa67f14cdf6cc"><code class="computeroutput"><span class="identifier">bounds</span><span class="special">()</span></code></a>
</p>
</td>
<td>
<p>
- Query if the container is empty.
+ Returns the box able to contain all values stored in the container.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09"><code class="computeroutput"><span class="identifier">clear</span><span class="special">()</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Removes all values stored in the container.
+ <code class="computeroutput"><span class="keyword">const</span></code>
</p>
</td>
-</tr>
-<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ace84997927e26d7cdb5aa67f14cdf6cc"><code class="computeroutput"><span class="identifier">bounds</span><span class="special">()</span></code></a>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a17fce1fac81f6460d2c3a5744f4963ee"><code class="computeroutput"><span class="identifier">count</span><span class="special">(</span><span class="identifier">ValueOrIndexable</span> <span class="keyword">const</span>
+ <span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- Returns the box able to contain all values stored in the container.
+ Count Values or Indexables stored in the container.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a17fce1fac81f6460d2c3a5744f4963ee"><code class="computeroutput"><span class="identifier">count</span><span class="special">(</span><span class="identifier">ValueOrIndexable</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Count Values or Indexables stored in the container.
+ <code class="computeroutput"><span class="keyword">const</span></code>
</p>
</td>
-</tr>
-<tr>
<td>
<p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a18910715f67608ff010556ac41f51606"><code class="computeroutput"><span class="identifier">parameters</span><span class="special">()</span></code></a>
@@ -773,6 +739,11 @@
<tr>
<td>
<p>
+ <code class="computeroutput"><span class="keyword">const</span></code>
+ </p>
+ </td>
+<td>
+ <p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1afc7e9a4bd53a58552c17c1e7cb997258"><code class="computeroutput"><span class="identifier">translator</span><span class="special">()</span></code></a>
</p>
</td>
@@ -785,6 +756,11 @@
<tr>
<td>
<p>
+ <code class="computeroutput"><span class="keyword">const</span></code>
+ </p>
+ </td>
+<td>
+ <p>
<a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a1eeb303253f4cabe3a89a82ed41247ff"><code class="computeroutput"><span class="identifier">get_allocator</span><span class="special">()</span></code></a>
</p>
</td>
@@ -805,13 +781,22 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a">parameters_type</a></code> <code class="computeroutput"><span class="identifier">parameters</span></code> = <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a">parameters_type</a></code><code class="computeroutput"><span class="special">()</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91">translator_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="iden
tifier">translator</span></code> = <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91">translator_type</a></code><code class="computeroutput"><span class="special">()</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.modifier_s_">Modifier(s)</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="keyword">explicit</span></pre>
+<p>
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -875,8 +860,8 @@
</tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree__.throws">Throws</a>
</h6>
<p>
If allocator default constructor throws.
@@ -892,7 +877,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a">parameters_type</a></code> <code class="computeroutput"><span class="identifier">parameters</span></code><code class="computeroutput"><span class="special">,</span></code>
<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91">translator_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">translator</span></code><code class="computeroutput"><span class="special">,</span></code>
@@ -900,7 +885,7 @@
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -982,7 +967,7 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_parameters_type__translator_type_const____allocator_type_.throws">Throws</a>
</h6>
<p>
If allocator copy constructor throws.
@@ -998,7 +983,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Iterator</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">first</span></code><code class="computeroutput"><span class="special">,</span></code>
@@ -1009,7 +994,7 @@
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1125,9 +1110,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_iterator__iterator_.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If allocator copy constructor throws.
</li>
@@ -1152,7 +1137,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Range</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">rng</span></code><code class="computeroutput"><span class="special">,</span></code>
@@ -1162,7 +1147,16 @@
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.modifier_s_">Modifier(s)</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="keyword">explicit</span></pre>
+<p>
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1261,10 +1255,10 @@
</tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_range_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If allocator copy constructor throws.
</li>
@@ -1288,13 +1282,13 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="special">~</span><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">()</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree._rtree__.throws">Throws</a>
</h6>
<p>
Nothing.
@@ -1310,20 +1304,20 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.description">Description</a>
</h6>
<p>
It uses parameters, translator and allocator from the source tree.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">src</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1369,9 +1363,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If allocator copy constructor throws.
</li>
@@ -1396,20 +1390,20 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.description">Description</a>
</h6>
<p>
It uses Parameters and translator from the source tree.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">src</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d">allocator_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">allocator</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1475,9 +1469,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_const____allocator_type_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If allocator copy constructor throws.
</li>
@@ -1502,20 +1496,20 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.description">Description</a>
</h6>
<p>
It uses parameters, translator and allocator from the source tree.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="special">&&</span></code> <code class="computeroutput"><span class="identifier">src</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1561,7 +1555,7 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree____.throws">Throws</a>
</h6>
<p>
Nothing.
@@ -1577,20 +1571,20 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.description">Description</a>
</h6>
<p>
It uses parameters and translator from the source tree.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="identifier">rtree</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="special">&&</span></code> <code class="computeroutput"><span class="identifier">src</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d">allocator_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">allocator</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1656,9 +1650,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.rtree_rtree_____allocator_type_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If allocator copy constructor throws.
</li>
@@ -1684,20 +1678,20 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.description">Description</a>
</h6>
<p>
It uses parameters and translator from the source tree.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="special">&</span></code> <code class="computeroutput"><span class="keyword">operator</span><span class="special">=</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="keyword">const</span> </code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">src</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1743,9 +1737,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__const_rtree___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor throws.
</li>
@@ -1767,20 +1761,20 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.description">Description</a>
</h6>
<p>
It uses parameters and translator from the source tree.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="special">&</span></code> <code class="computeroutput"><span class="keyword">operator</span><span class="special">=</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="special">&&</span></code> <code class="computeroutput"><span class="identifier">src</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1826,12 +1820,12 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.operator__rtree____.throws">Throws</a>
</h6>
<p>
Only if allocators aren't equal.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor throws.
</li>
@@ -1853,20 +1847,20 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.description">Description</a>
</h6>
<p>
Parameters, translator and allocators are swapped as well.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">void</span></code> <code class="computeroutput"><span class="identifier">swap</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree">rtree</a></code><code class="computeroutput"> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">other</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1912,7 +1906,7 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.swap_rtree___.throws">Throws</a>
</h6>
<p>
If allocators swap throws.
@@ -1928,13 +1922,13 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">void</span></code> <code class="computeroutput"><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">value</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -1980,9 +1974,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_value_type_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor or copy assignment throws.
</li>
@@ -2015,14 +2009,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Iterator</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="computeroutput"><span class="keyword">void</span></code> <code class="computeroutput"><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">first</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">last</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -2086,9 +2080,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_iterator__iterator_.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor or copy assignment throws.
</li>
@@ -2121,14 +2115,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Range</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="computeroutput"><span class="keyword">void</span></code> <code class="computeroutput"><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">rng</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -2174,9 +2168,9 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.insert_range_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor or copy assignment throws.
</li>
@@ -2209,7 +2203,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.description">Description</a>
</h6>
<p>
In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code>
@@ -2218,13 +2212,13 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">value</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -2270,16 +2264,16 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.returns">Returns</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.returns">Returns</a>
</h6>
<p>
1 if the value was removed, 0 otherwise.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_value_type_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor or copy assignment throws.
</li>
@@ -2312,7 +2306,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.description">Description</a>
</h6>
<p>
In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code>
@@ -2323,14 +2317,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Iterator</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">first</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">last</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -2394,16 +2388,16 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.returns">Returns</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.returns">Returns</a>
</h6>
<p>
The number of removed values.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_iterator__iterator_.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor or copy assignment throws.
</li>
@@ -2436,7 +2430,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.description">Description</a>
</h6>
<p>
In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code>
@@ -2446,14 +2440,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Range</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">rng</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -2499,16 +2493,16 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.returns">Returns</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.returns">Returns</a>
</h6>
<p>
The number of removed values.
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.throws">Throws</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.remove_range_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
If Value copy constructor or copy assignment throws.
</li>
@@ -2542,7 +2536,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.description">Description</a>
</h6>
<p>
This query function performs spatial and k-nearest neighbor searches.
@@ -2558,7 +2552,7 @@
are returned. More spatial predicates may be generated by one of the
functions listed below:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
</li>
@@ -2579,7 +2573,7 @@
<p>
It is possible to negate spatial predicates:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
<code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
</li>
@@ -2604,7 +2598,7 @@
functor which checks if Value should be returned by the query. It's generated
by:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
<code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
</li></ul></div>
<p>
@@ -2612,42 +2606,38 @@
</p>
<p>
If the nearest predicate is passed a k-nearest neighbor search will be
- performed. It has two variants. Passing the first one will result in
- returning k number of values, the second one will result in returning
- only one, closest value. In both cases values will be returned to the
- output iterator. Only one nearest predicate may be passed to the query.
- It may be generated by:
+ performed. This query will result in returning k values to the output
+ iterator. Only one nearest predicate may be passed to the query. It may
+ be generated by:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">boost::geometry::index::nearest()</a></code>.
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556">boost::geometry::index::nearest()</a></code>.
</li></ul></div>
<p>
<span class="bold"><strong>Connecting predicates</strong></span>
</p>
<p>
- A set of predicates may be generated by:
+ Predicates may be passed together connected with <code class="literal"><code class="computeroutput"><span class="keyword">operator</span><span class="special">&&()</span></code></code>.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_tuple</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="keyword">operator</span><span class="special">&&()</span></code></code>
- </li>
-</ul></div>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">predicates</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.modifier_s_">Modifier(s)</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="keyword">const</span></pre>
+<p>
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -2710,29 +2700,34 @@
</tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.returns">Returns</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h4"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.returns">Returns</a>
</h6>
<p>
The number of values found.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.example">Example</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h5"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.example">Example</a>
</h6>
<p>
</p>
-<pre class="programlisting"><span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">box1</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">),</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">)),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<pre class="programlisting"><span class="comment">// return elements intersecting box</span>
+<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">box</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return elements intersecting poly but not within box</span>
<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">)</span> <span class="special">&&</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return elements overlapping box and meeting my_fun value predicate</span>
<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">value</span><span class="special">(</span><span class="identifier">my_fun</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return 5 elements nearest to pt and elements are intersecting box</span>
<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return 5 elements which centroids are nearest to pt and elements aren't within box</span>
+<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
</pre>
<p>
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h5"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.h6"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____outiter_.throws">Throws</a>
</h6>
<p>
If Value copy constructor or copy assignment throws.
@@ -2743,295 +2738,188 @@
<th align="left">Warning</th>
</tr>
<tr><td align="left" valign="top"><p>
- Only one <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
+ Only one <code class="literal"><a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556">nearest()</a></code>
perdicate may be passed to the query.
</p></td></tr>
</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1abd965047110c9f8ef6ff097e97487312"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___" title="query(Predicates const &, value_type &)">query(Predicates
- const &, value_type &)</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__" title="size()">size()</a>
</h5></div></div></div>
<p>
- Finds value meeting passed predicates e.g. nearest to some Point and
- intersecting some Box.
+ Returns the number of stored values.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.description">Description</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">size</span></code><code class="computeroutput"><span class="special">()</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.modifier_s_">Modifier(s)</a>
</h6>
<p>
- This query function performs k-nearest neighbor searches. It allows to
- pass a set of predicates. The value will be returned only if all predicates
- are met. This query requires that one of the predicates must be one-value
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate.
- </p>
+</p>
+<pre class="programlisting"><span class="keyword">const</span></pre>
<p>
- <span class="bold"><strong>Spatial predicates</strong></span>
</p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.returns">Returns</a>
+ </h6>
<p>
- The simplest form of spatial predicate is a <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>.
- In this case Values intersecting the <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>
- are returned. More spatial predicates may be generated by one of the
- functions listed below:
+ The number of stored values.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>,
- </li>
-</ul></div>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.throws">Throws</a>
+ </h6>
<p>
- It is possible to negate spatial predicates:
+ Nothing.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>
- </li>
-</ul></div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__" title="empty()">empty()</a>
+</h5></div></div></div>
<p>
- <span class="bold"><strong>Value predicate</strong></span>
+ Query if the container is empty.
</p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">bool</span></code> <code class="computeroutput"><span class="identifier">empty</span></code><code class="computeroutput"><span class="special">()</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.modifier_s_">Modifier(s)</a>
+ </h6>
<p>
- This is a special kind of predicate which allows to pass a user-defined
- functor which checks if Value should be returned by the query. It's generated
- by:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
- </li></ul></div>
+</p>
+<pre class="programlisting"><span class="keyword">const</span></pre>
<p>
- <span class="bold"><strong>Nearest predicate</strong></span>
</p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.returns">Returns</a>
+ </h6>
<p>
- This query requires that one of the predicates must be one-value <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate. It may be generated by <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- taking only one parameter - distance predicates.
+ true if the container is empty.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">boost::geometry::index::nearest()</a></code>.
- </li></ul></div>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.throws">Throws</a>
+ </h6>
<p>
- <span class="bold"><strong>Connecting predicates</strong></span>
+ Nothing.
</p>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__" title="clear()">clear()</a>
+</h5></div></div></div>
<p>
- A set of predicates may be generated by:
+ Removes all values stored in the container.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_tuple</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="keyword">operator</span><span class="special">&&()</span></code></code>
- </li>
-</ul></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">predicates</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput"> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">value</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">void</span></code> <code class="computeroutput"><span class="identifier">clear</span></code><code class="computeroutput"><span class="special">()</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.throws">Throws</a>
</h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">predicates</span></code>
- </p>
- </td>
-<td>
- <p>
- Predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput">
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">value</span></code>
- </p>
- </td>
-<td>
- <p>
- The reference to value which will hold the result of the query.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
+<p>
+ Nothing.
+ </p>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1ace84997927e26d7cdb5aa67f14cdf6cc"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__" title="bounds()">bounds()</a>
+</h5></div></div></div>
+<p>
+ Returns the box able to contain all values stored in the container.
+ </p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.returns">Returns</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.description">Description</a>
</h6>
<p>
- The number of values found (1 if value was found, 0 otherwise).
+ Returns the box able to contain all values stored in the container. If
+ the container is empty the result of <code class="literal"><code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">assign_inverse</span><span class="special">()</span></code></code> is returned.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.example">Example</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a653555282525601512c3b1bed1e9590f">bounds_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">bounds</span></code><code class="computeroutput"><span class="special">()</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.modifier_s_">Modifier(s)</a>
</h6>
<p>
</p>
-<pre class="programlisting"><span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">)),</span> <span class="identifier">value</span><span class="special">);</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">),</span> <span class="identifier">value</span><span class="special">);</span>
-</pre>
+<pre class="programlisting"><span class="keyword">const</span></pre>
<p>
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.h5"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.query_predicates_const____value_type___.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.returns">Returns</a>
</h6>
<p>
- If Value copy constructor or copy assignment throws.
+ The box able to contain all values stored in the container or an invalid
+ box if there are no values in the container.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h4"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.throws">Throws</a>
+ </h6>
+<p>
+ Nothing.
</p>
-<div class="warning"><table border="0" summary="Warning">
-<tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="http://www.boost.org/doc/libs/release/doc/src/images/warning.png"></td>
-<th align="left">Warning</th>
-</tr>
-<tr><td align="left" valign="top"><p>
- This query requires that one of the predicates must be one-value <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate.
- </p></td></tr>
-</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a930bf17d595a91d8ae924383a0387920"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_" title="spatial_query(Predicates const &, OutIter)">spatial_query(Predicates
- const &, OutIter)</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a17fce1fac81f6460d2c3a5744f4963ee"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___" title="count(ValueOrIndexable const &)">count(ValueOrIndexable
+ const &)</a>
</h5></div></div></div>
<p>
- Finds values meeting spatial predicates, e.g. intersecting some Box.
+ Count Values or Indexables stored in the container.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.description">Description</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.description">Description</a>
</h6>
<p>
- <span class="bold"><strong>Spatial predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>. In this case Values
- intersecting the <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>
- are returned.
- </p>
-<p>
- It may be generated by one of the functions listed below:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
- </li>
-</ul></div>
-<p>
- Those predicates may be passed together in <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code></code>
- or <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></code></code>.
+ For indexable_type it returns the number of values which indexables equals
+ the parameter. For value_type it returns the number of values which equals
+ the parameter.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">spatial_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">ValueOrIndexable</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">count</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">ValueOrIndexable</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">vori</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.modifier_s_">Modifier(s)</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="keyword">const</span></pre>
+<p>
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -3056,525 +2944,461 @@
</p>
</th>
</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial predicates or a Geometry.
- </p>
- </td>
-</tr>
-<tr>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">OutIter</span></code>
+ <code class="computeroutput"><span class="identifier">ValueOrIndexable</span>
+ <span class="keyword">const</span> <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">out_it</span></code>
+ <code class="computeroutput"><span class="identifier">vori</span></code>
</p>
</td>
<td>
<p>
- The output iterator of the result range. E.g. an iterator generated
- by std::back_inserter(container)
+ The value or indexable which will be counted.
</p>
</td>
-</tr>
-</tbody>
+</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.returns">Returns</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h4"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.returns">Returns</a>
</h6>
<p>
The number of values found.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.spatial_query_predicates_const____outiter_.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h5"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.throws">Throws</a>
</h6>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- If Value copy constructor or copy assignment throws.
- </li>
-<li class="listitem">
- If OutIter dereference or increment throws.
- </li>
-</ul></div>
+<p>
+ Nothing.
+ </p>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___" title="nearest_query(DistancesPredicates const &, value_type &)">nearest_query(DistancesPredicates
- const &, value_type &)</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a18910715f67608ff010556ac41f51606"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__" title="parameters()">parameters()</a>
</h5></div></div></div>
<p>
- Finds one value meeting distances predicates, e.g. nearest to some Point.
+ Returns parameters.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.description">Description</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a">parameters_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">parameters</span></code><code class="computeroutput"><span class="special">()</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.modifier_s_">Modifier(s)</a>
</h6>
<p>
- <span class="bold"><strong>Distances predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>. In this the case the
- Value closest to <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- is returned.
+</p>
+<pre class="programlisting"><span class="keyword">const</span></pre>
+<p>
</p>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.returns">Returns</a>
+ </h6>
<p>
- It is possible to define how distance to Value is calculated. This is
- done by passing PointRelation. It can be generated by following functions:
+ The parameters object.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.throws">Throws</a>
+ </h6>
<p>
- It is possible to define define distances bounds, for example that some
- distance must be between min_distance and max_distance. This is done
- by passing DistancesPredicates which can be generated by following functions:
+ Nothing.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">boost::geometry::index::unbounded()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">boost::geometry::index::min_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">boost::geometry::index::max_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">boost::geometry::index::bounded()</a></code>.
- </li>
-</ul></div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1afc7e9a4bd53a58552c17c1e7cb997258"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__" title="translator()">translator()</a>
+</h5></div></div></div>
<p>
- MinRelation and MaxRelation describes bounds and can be generated by
- following functions:
+ Returns the translator object.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput"> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91">translator_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">translator</span></code><code class="computeroutput"><span class="special">()</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.modifier_s_">Modifier(s)</a>
</h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
- </p>
- </td>
-<td>
- <p>
- The distances predicates or a Point.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput">
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">v</span></code>
- </p>
- </td>
-<td>
- <p>
- The reference to the object which will contain the result.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
+<p>
+</p>
+<pre class="programlisting"><span class="keyword">const</span></pre>
+<p>
+ </p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.returns">Returns</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.returns">Returns</a>
</h6>
<p>
- The number of values found.
+ The translator object.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____value_type___.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.throws">Throws</a>
</h6>
<p>
- If Value copy constructor or copy assignment throws.
+ Nothing.
</p>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a6552331dca4d67647ef2a03bd0fbedcc"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___" title="nearest_query(DistancesPredicates const &, Predicates const &, value_type &)">nearest_query(DistancesPredicates
- const &, Predicates const &, value_type &)</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a1eeb303253f4cabe3a89a82ed41247ff"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__" title="get_allocator()">get_allocator()</a>
</h5></div></div></div>
<p>
- Finds one value meeting distances predicates and spatial predicates,
- e.g. nearest to some Point and intersecting some Box.
+ Returns allocator used by the rtree.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.description">Description</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d">allocator_type</a></code> <code class="computeroutput"><span class="identifier">get_allocator</span></code><code class="computeroutput"><span class="special">()</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.modifier_s_">Modifier(s)</a>
</h6>
<p>
- <span class="bold"><strong>Distances predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>. In this the case the
- Value closest to <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- is returned.
- </p>
-<p>
- It is possible to define how distance to Value is calculated. This is
- done by passing PointRelation. It can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<p>
- It is possible to define define distances bounds, for example that some
- distance must be between min_distance and max_distance. This is done
- by passing DistancesPredicates which can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">boost::geometry::index::unbounded()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">boost::geometry::index::min_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">boost::geometry::index::max_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">boost::geometry::index::bounded()</a></code>.
- </li>
-</ul></div>
-<p>
- MinRelation and MaxRelation describes bounds and can be generated by
- following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<p>
- <span class="bold"><strong>Spatial predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>. In this case Values
- intersecting the <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>
- are returned.
- </p>
+</p>
+<pre class="programlisting"><span class="keyword">const</span></pre>
<p>
- It may be generated by one of the functions listed below:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
- </li>
-</ul></div>
+<h6>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.returns">Returns</a>
+ </h6>
<p>
- Those predicates may be passed together in <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code></code>
- or <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></code></code>.
+ The allocator.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.throws">Throws</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput"> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
+<p>
+ If allocator copy constructor throws.
+ </p>
+</div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="geometry_index.r_tree.reference.group__rtree__functions"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions" title="Functions related to the rtree">Functions
+ related to the rtree</a>
+</h4></div></div></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.parameter_s_">Parameter(s)</a>
- </h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.functions">Functions</a>
+ </h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
-<col>
</colgroup>
<thead><tr>
<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
+ <p>
+ Function
+ </p>
+ </th>
<th>
- <p>
- Description
- </p>
- </th>
+ <p>
+ Description
+ </p>
+ </th>
</tr></thead>
<tbody>
<tr>
<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
- </p>
- </td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1gac0ac9ed0e01f7494a5a3059e75d3c5cc"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="special">&,</span> <span class="identifier">Value</span>
+ <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ </p>
+ </td>
<td>
- <p>
- The distances predicates or a Point.
- </p>
- </td>
+ <p>
+ Insert a value to the index.
+ </p>
+ </td>
</tr>
<tr>
<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1gaf8f4fa09c12b96ace3bbb38823a9191b"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="special">&,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span></code></a>
+ </p>
+ </td>
<td>
- <p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
- </p>
- </td>
+ <p>
+ Insert a range of values to the index.
+ </p>
+ </td>
+</tr>
+<tr>
<td>
- <p>
- The spatial predicates or a Geometry
- </p>
- </td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1ga97ec330c1c021a1ac2d896a488c2eb9c"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="special">&,</span> <span class="identifier">Range</span>
+ <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Insert a range of values to the index.
+ </p>
+ </td>
</tr>
<tr>
<td>
- <p>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb">value_type</a></code><code class="computeroutput">
- <span class="special">&</span></code>
- </p>
- </td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1gad40492a5b99c3eebbd51901574762527"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="special">&,</span> <span class="identifier">Value</span>
+ <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ </p>
+ </td>
<td>
- <p>
- <code class="computeroutput"><span class="identifier">v</span></code>
- </p>
- </td>
+ <p>
+ Remove a value from the container.
+ </p>
+ </td>
+</tr>
+<tr>
<td>
- <p>
- The reference to the object which will contain the result.
- </p>
- </td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1ga0219361de8b15c539af3f9bd027938ce"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="special">&,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Remove a range of values from the container.
+ </p>
+ </td>
</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.returns">Returns</a>
- </h6>
-<p>
- The number of values found.
- </p>
+<tr>
+<td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1ga5885d6c90a91f238f72ab9b5ef24daf9"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="special">&,</span> <span class="identifier">Range</span>
+ <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Remove a range of values from the container.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1ga86e0808522ef6682b72b310a3891b276"><code class="computeroutput"><span class="identifier">query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="keyword">const</span> <span class="special">&,</span>
+ <span class="identifier">Predicates</span> <span class="keyword">const</span>
+ <span class="special">&,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Finds values meeting passed predicates e.g. nearest to some Point
+ and/or intersecting some Box.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1ga0c65d7b29b1edf72f1d236ccf211f63c"><code class="computeroutput"><span class="identifier">clear</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="special">&)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Remove all values from the index.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1gaec0b88a9d8b408753e3069134f1598c7"><code class="computeroutput"><span class="identifier">size</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Get the number of values stored in the index.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1ga459e3d404fec7cbd66794714cbdd129e"><code class="computeroutput"><span class="identifier">empty</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Query if there are no values stored in the index.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <a class="link" href="reference.html#group__rtree__functions_1gae10fbc3d536235b89aa3cb3641768bca"><code class="computeroutput"><span class="identifier">bounds</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
+ <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ Get the box containing all stored values or an invalid box if
+ the index has no values.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___"></a><a name="group__rtree__functions_1gac0ac9ed0e01f7494a5a3059e75d3c5cc"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___" title="insert(rtree<...> &, Value const &)">insert(rtree<...>
+ &, Value const &)</a>
+</h5></div></div></div>
+<p>
+ Insert a value to the index.
+ </p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____predicates_const____value_type___.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.description">Description</a>
</h6>
<p>
- If Value copy constructor or copy assignment throws.
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af6d5bd81e46cb4ff89277c753133664c">rtree::insert(value_type
+ const&)</a></code>.
</p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Value</span> <span
class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.parameter_s_">Parameter(s)</a>
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Type
+ </p>
+ </th>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="special">&</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The spatial index.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Value</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">v</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The value which will be stored in the index.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a3101652211c9f2d6ed8626dae6ff5f9d"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_" title="nearest_query(DistancesPredicates const &, size_type, OutIter)">nearest_query(DistancesPredicates
- const &, size_type, OutIter)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_"></a><a name="group__rtree__functions_1gaf8f4fa09c12b96ace3bbb38823a9191b"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_" title="insert(rtree<...> &, Iterator, Iterator)">insert(rtree<...>
+ &, Iterator, Iterator)</a>
</h5></div></div></div>
<p>
- Finds k values meeting distances predicates, e.g. k nearest values to
- some Point.
+ Insert a range of values to the index.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.description">Description</a>
</h6>
<p>
- <span class="bold"><strong>Distances predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>. In this the case the
- Value closest to <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- is returned.
- </p>
-<p>
- It is possible to define how distance to Value is calculated. This is
- done by passing PointRelation. It can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<p>
- It is possible to define define distances bounds, for example that some
- distance must be between min_distance and max_distance. This is done
- by passing DistancesPredicates which can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">boost::geometry::index::unbounded()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">boost::geometry::index::min_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">boost::geometry::index::max_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">boost::geometry::index::bounded()</a></code>.
- </li>
-</ul></div>
-<p>
- MinRelation and MaxRelation describes bounds and can be generated by
- following functions:
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5263a3faac7b4f0090d4ad1d44cc540d">rtree::insert(Iterator,
+ Iterator)</a></code>.
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">k</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Iterator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">first</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">last</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -3603,205 +3427,92 @@
<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
</p>
</td>
<td>
<p>
- The distances predicates or a Point.
+ The spatial index.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">k</span></code>
+ <code class="computeroutput"><span class="identifier">first</span></code>
</p>
</td>
<td>
<p>
- The max number of values.
+ The beginning of the range of values.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">OutIter</span></code>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">out_it</span></code>
+ <code class="computeroutput"><span class="identifier">last</span></code>
</p>
</td>
<td>
<p>
- The output iterator of the result range. E.g. a back_insert_iterator.
+ The end of the range of values.
</p>
</td>
</tr>
</tbody>
</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.returns">Returns</a>
- </h6>
-<p>
- The number of values found.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__outiter_.throws">Throws</a>
- </h6>
-<p>
- If Value copy constructor or copy assignment throws. If OutIter dereference
- or increment throws.
- </p>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a31c23b87b01f12282ef0df6404ab7301"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_" title="nearest_query(DistancesPredicates const &, size_type, Predicates const &, OutIter)">nearest_query(DistancesPredicates
- const &, size_type, Predicates const &, OutIter)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___"></a><a name="group__rtree__functions_1ga97ec330c1c021a1ac2d896a488c2eb9c"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___" title="insert(rtree<...> &, Range const &)">insert(rtree<...>
+ &, Range const &)</a>
</h5></div></div></div>
<p>
- Finds k values meeting distances predicates and spatial predicates, e.g.
- k nearest values to some Point and intersecting some Box.
+ Insert a range of values to the index.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.description">Description</a>
</h6>
<p>
- <span class="bold"><strong>Distances predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>. In this the case the
- Value closest to <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- is returned.
- </p>
-<p>
- It is possible to define how distance to Value is calculated. This is
- done by passing PointRelation. It can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<p>
- It is possible to define define distances bounds, for example that some
- distance must be between min_distance and max_distance. This is done
- by passing DistancesPredicates which can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">boost::geometry::index::unbounded()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">boost::geometry::index::min_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">boost::geometry::index::max_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">boost::geometry::index::bounded()</a></code>.
- </li>
-</ul></div>
-<p>
- MinRelation and MaxRelation describes bounds and can be generated by
- following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<p>
- <span class="bold"><strong>Spatial predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>. In this case Values
- intersecting the <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>
- are returned.
- </p>
-<p>
- It may be generated by one of the functions listed below:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
- </li>
-</ul></div>
-<p>
- Those predicates may be passed together in <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code></code>
- or <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></code></code>.
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1abb624abd9268b41e815d40342b2634c2">rtree::insert(Range
+ const&)</a></code>.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">k</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Range</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Range</span> <span
class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">rng</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -3830,231 +3541,318 @@
<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
</p>
</td>
<td>
<p>
- The distances predicates or a Point
+ The spatial index.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code>
+ <code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">k</span></code>
+ <code class="computeroutput"><span class="identifier">rng</span></code>
</p>
</td>
<td>
<p>
- The max number of values.
+ The range of values.
</p>
</td>
</tr>
+</tbody>
+</table></div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___"></a><a name="group__rtree__functions_1gad40492a5b99c3eebbd51901574762527"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___" title="remove(rtree<...> &, Value const &)">remove(rtree<...>
+ &, Value const &)</a>
+</h5></div></div></div>
+<p>
+ Remove a value from the container.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.description">Description</a>
+ </h6>
+<p>
+ Remove a value from the container. In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code> or <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">map</span> <span class="identifier">erase</span><span class="special">()</span></code></code> method this function removes
+ only one value from the container.
+ </p>
+<p>
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af6ca6909354a997f89411ef40ea5688a">rtree::remove(value_type
+ const&)</a></code>.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</s
pan><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Value</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.parameter_s_">Parameter(s)</a>
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Type
+ </p>
+ </th>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
</p>
</td>
<td>
<p>
- The spatial predicates or a Geometry.
+ The spatial index.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">OutIter</span></code>
+ <code class="computeroutput"><span class="identifier">Value</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">out_it</span></code>
+ <code class="computeroutput"><span class="identifier">v</span></code>
</p>
</td>
<td>
<p>
- The output iterator of the result range. E.g. a back_insert_iterator.
+ The value which will be removed from the index.
</p>
</td>
</tr>
</tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.returns">Returns</a>
- </h6>
-<p>
- The number of values found.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.nearest_query_distancespredicates_const____size_type__predicates_const____outiter_.throws">Throws</a>
- </h6>
-<p>
- If Value copy constructor or copy assignment throws. If OutIter dereference
- or increment throws.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__" title="size()">size()</a>
-</h5></div></div></div>
-<p>
- Returns the number of stored values.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">size</span></code><code class="computeroutput"><span class="special">()</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.returns">Returns</a>
- </h6>
-<p>
- The number of stored values.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.size__.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.returns">Returns</a>
</h6>
<p>
- Nothing.
+ 1 if value was removed, 0 otherwise.
</p>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__" title="empty()">empty()</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_"></a><a name="group__rtree__functions_1ga0219361de8b15c539af3f9bd027938ce"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_" title="remove(rtree<...> &, Iterator, Iterator)">remove(rtree<...>
+ &, Iterator, Iterator)</a>
</h5></div></div></div>
<p>
- Query if the container is empty.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">bool</span></code> <code class="computeroutput"><span class="identifier">empty</span></code><code class="computeroutput"><span class="special">()</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.returns">Returns</a>
- </h6>
-<p>
- true if the container is empty.
+ Remove a range of values from the container.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.empty__.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.description">Description</a>
</h6>
<p>
- Nothing.
+ Remove a range of values from the container. In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code> or <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">map</span> <span class="identifier">erase</span><span class="special">()</span></code></code> method it doesn't take iterators
+ pointing to values stored in this container. It removes values equal
+ to these passed as a range. Furthermore this function removes only one
+ value for each one passed in the range, not all equal values.
</p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__" title="clear()">clear()</a>
-</h5></div></div></div>
<p>
- Removes all values stored in the container.
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a6e9123114697d65b16ebc49cd5371fbd">rtree::remove(Iterator,
+ Iterator)</a></code>.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">void</span></code> <code class="computeroutput"><span class="identifier">clear</span></code><code class="computeroutput"><span class="special">()</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Iterator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</s
pan><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">first</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">last</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.clear__.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.parameter_s_">Parameter(s)</a>
</h6>
-<p>
- Nothing.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1ace84997927e26d7cdb5aa67f14cdf6cc"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__" title="bounds()">bounds()</a>
-</h5></div></div></div>
-<p>
- Returns the box able to contain all values stored in the container.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.description">Description</a>
- </h6>
-<p>
- Returns the box able to contain all values stored in the container. If
- the container is empty the result of <code class="literal"><code class="computeroutput"><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">assign_inverse</span><span class="special">()</span></code></code> is returned.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a653555282525601512c3b1bed1e9590f">bounds_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">bounds</span></code><code class="computeroutput"><span class="special">()</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.returns">Returns</a>
- </h6>
-<p>
- The box able to contain all values stored in the container or an invalid
- box if there are no values in the container.
- </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Type
+ </p>
+ </th>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="special">&</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The spatial index.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">first</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The beginning of the range of values.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Iterator</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">last</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The end of the range of values.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.bounds__.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.returns">Returns</a>
</h6>
<p>
- Nothing.
+ The number of removed values.
</p>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a17fce1fac81f6460d2c3a5744f4963ee"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___" title="count(ValueOrIndexable const &)">count(ValueOrIndexable
- const &)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___"></a><a name="group__rtree__functions_1ga5885d6c90a91f238f72ab9b5ef24daf9"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___" title="remove(rtree<...> &, Range const &)">remove(rtree<...>
+ &, Range const &)</a>
</h5></div></div></div>
<p>
- Count Values or Indexables stored in the container.
+ Remove a range of values from the container.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.description">Description</a>
</h6>
<p>
- For indexable_type it returns the number of values which indexables equals
- the parameter. For value_type it returns the number of values which equals
- the parameter.
+ Remove a range of values from the container. In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code> or <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">map</span> <span class="identifier">erase</span><span class="special">()</span></code></code> method it removes values
+ equal to these passed as a range. Furthermore this method removes only
+ one value for each one passed in the range, not all equal values.
+ </p>
+<p>
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5a57bb93b0b2d7ea1c659e925f918e9c">rtree::remove(Range
+ const&)</a></code>.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">ValueOrIndexable</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6">size_type</a></code> <code class="computeroutput"><span class="identifier">count</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">ValueOrIndexable</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">vori</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Range</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</s
pan><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">rng</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -4079,3497 +3877,320 @@
</p>
</th>
</tr></thead>
-<tbody><tr>
+<tbody>
+<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">ValueOrIndexable</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">vori</span></code>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
</p>
</td>
<td>
<p>
- The value or indexable which will be counted.
+ The spatial index.
</p>
</td>
-</tr></tbody>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">rng</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The range of values.
+ </p>
+ </td>
+</tr>
+</tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.returns">Returns</a>
- </h6>
-<p>
- The number of values found.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.h4"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.count_valueorindexable_const___.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.returns">Returns</a>
</h6>
<p>
- Nothing.
+ The number of removed values.
</p>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a18910715f67608ff010556ac41f51606"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__" title="parameters()">parameters()</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_"></a><a name="group__rtree__functions_1ga86e0808522ef6682b72b310a3891b276"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_" title="query(rtree<...> const &, Predicates const &, OutIter)">query(rtree<...>
+ const &, Predicates const &, OutIter)</a>
</h5></div></div></div>
<p>
- Returns parameters.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a">parameters_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">parameters</span></code><code class="computeroutput"><span class="special">()</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.returns">Returns</a>
- </h6>
-<p>
- The parameters object.
+ Finds values meeting passed predicates e.g. nearest to some Point and/or
+ intersecting some Box.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.parameters__.throws">Throws</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.description">Description</a>
</h6>
<p>
- Nothing.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1afc7e9a4bd53a58552c17c1e7cb997258"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__" title="translator()">translator()</a>
-</h5></div></div></div>
-<p>
- Returns the translator object.
+ This query function performs spatial and k-nearest neighbor searches.
+ It allows to pass a set of predicates. Values will be returned only if
+ all predicates are met.
</p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91">translator_type</a></code><code class="computeroutput"> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">translator</span></code><code class="computeroutput"><span class="special">()</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.returns">Returns</a>
- </h6>
<p>
- The translator object.
+ <span class="bold"><strong>Spatial predicates</strong></span>
</p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.translator__.throws">Throws</a>
- </h6>
<p>
- Nothing.
+ The simplest form of spatial predicate is a <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>.
+ In this case Values intersecting the <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>
+ are returned. More spatial predicates may be generated by one of the
+ functions listed below:
</p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__"></a><a name="classboost_1_1geometry_1_1index_1_1rtree_1a1eeb303253f4cabe3a89a82ed41247ff"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__" title="get_allocator()">get_allocator()</a>
-</h5></div></div></div>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>
+ - default,
+ </li>
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>,
+ </li>
+</ul></div>
<p>
- Returns allocator used by the rtree.
+ It is possible to negate spatial predicates:
</p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.h0"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d">allocator_type</a></code> <code class="computeroutput"><span class="identifier">get_allocator</span></code><code class="computeroutput"><span class="special">()</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.h1"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.returns">Returns</a>
- </h6>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem">
+ <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>
+ </li>
+</ul></div>
<p>
- The allocator.
+ <span class="bold"><strong>Value predicate</strong></span>
</p>
-<h6>
-<a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.h2"></a>
- <span><a name="geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.boost_geometry_index_rtree.get_allocator__.throws">Throws</a>
- </h6>
<p>
- If allocator copy constructor throws.
+ This is a special kind of predicate which allows to pass a user-defined
+ functor which checks if Value should be returned by the query. It's generated
+ by:
+ </p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
+ </li></ul></div>
+<p>
+ <span class="bold"><strong>Nearest predicate</strong></span>
+ </p>
+<p>
+ If the nearest predicate is passed a k-nearest neighbor search will be
+ performed. This query will result in returning k values to the output
+ iterator. Only one nearest predicate may be passed to the query. It may
+ be generated by:
+ </p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556">boost::geometry::index::nearest()</a></code>.
+ </li></ul></div>
+<p>
+ <span class="bold"><strong>Connecting predicates</strong></span>
+ </p>
+<p>
+ Predicates may be passed together connected with <code class="literal"><code class="computeroutput"><span class="keyword">operator</span><span class="special">&&()</span></code></code>.
</p>
-</div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h4 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions" title="Functions related to the rtree">Functions
- related to the rtree</a>
-</h4></div></div></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.functions">Functions</a>
- </h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</sp
an><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.parameter_s_">Parameter(s)</a>
+ </h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
+<col>
</colgroup>
<thead><tr>
<th>
- <p>
- Function
- </p>
- </th>
+ <p>
+ Type
+ </p>
+ </th>
<th>
- <p>
- Description
- </p>
- </th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
</tr></thead>
<tbody>
<tr>
<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gac0ac9ed0e01f7494a5a3059e75d3c5cc"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="special">&,</span> <span class="identifier">Value</span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Insert a value to the index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gaf8f4fa09c12b96ace3bbb38823a9191b"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="special">&,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Insert a range of values to the index.
- </p>
- </td>
-</tr>
-<tr>
+ <p>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="keyword">const</span> <span class="special">&</span></code>
+ </p>
+ </td>
<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga97ec330c1c021a1ac2d896a488c2eb9c"><code class="computeroutput"><span class="identifier">insert</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="special">&,</span> <span class="identifier">Range</span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
+ <p>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
+ </p>
+ </td>
<td>
- <p>
- Insert a range of values to the index.
- </p>
- </td>
+ </td>
</tr>
<tr>
<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gad40492a5b99c3eebbd51901574762527"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="special">&,</span> <span class="identifier">Value</span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Remove a value from the container.
- </p>
- </td>
-</tr>
-<tr>
+ <p>
+ <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ </p>
+ </td>
<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga0219361de8b15c539af3f9bd027938ce"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="special">&,</span> <span class="identifier">Iterator</span><span class="special">,</span> <span class="identifier">Iterator</span><span class="special">)</span></code></a>
- </p>
- </td>
+ <p>
+ <code class="computeroutput"><span class="identifier">predicates</span></code>
+ </p>
+ </td>
<td>
- <p>
- Remove a range of values from the container.
- </p>
- </td>
+ <p>
+ Predicates.
+ </p>
+ </td>
</tr>
<tr>
<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga5885d6c90a91f238f72ab9b5ef24daf9"><code class="computeroutput"><span class="identifier">remove</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="special">&,</span> <span class="identifier">Range</span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Remove a range of values from the container.
- </p>
- </td>
-</tr>
-<tr>
+ <p>
+ <code class="computeroutput"><span class="identifier">OutIter</span></code>
+ </p>
+ </td>
<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga86e0808522ef6682b72b310a3891b276"><code class="computeroutput"><span class="identifier">query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">Predicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></a>
- </p>
- </td>
+ <p>
+ <code class="computeroutput"><span class="identifier">out_it</span></code>
+ </p>
+ </td>
<td>
- <p>
- Finds values meeting passed predicates e.g. nearest to some Point
- and/or intersecting some Box.
- </p>
- </td>
+ <p>
+ The output iterator, e.g. generated by std::back_inserter().
+ </p>
+ </td>
</tr>
+</tbody>
+</table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.returns">Returns</a>
+ </h6>
+<p>
+ The number of values found.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h4"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="comment">// return elements intersecting box</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">box</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return elements intersecting poly but not within box</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">)</span> <span class="special">&&</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return elements overlapping box and meeting my_fun value predicate</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">value</span><span class="special">(</span><span class="identifier">my_fun</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return 5 elements nearest to pt and elements are intersecting box</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return 5 elements which centroids are nearest to pt and elements aren't within box</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span clas
s="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h5"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.throws">Throws</a>
+ </h6>
+<p>
+ If Value copy constructor or copy assignment throws.
+ </p>
+<div class="warning"><table border="0" summary="Warning">
<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga35b54dcaed4e4d5fb38e9ef4b78ee3c7"><code class="computeroutput"><span class="identifier">query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">Predicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="keyword">typename</span>
- <span class="identifier">rtree</span><span class="special"><...>::</span><span class="identifier">value_type</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Finds value meeting passed predicates e.g. nearest to some Point
- and intersecting some Box.
- </p>
- </td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="http://www.boost.org/doc/libs/release/doc/src/images/warning.png"></td>
+<th align="left">Warning</th>
</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gadcec162d2391c2c9cc4215a5578d1721"><code class="computeroutput"><span class="identifier">spatial_query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">Predicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Find values meeting spatial predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gacabbd521b88b67a700e1246e5889d343"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">Value</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Find the value meeting distances predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gaf963f417d4ab54a2782928020dd8c3ad"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">Predicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">Value</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Find the value meeting distances and spatial predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga74550ecb22e4ac69a445c1a6b0be9a1b"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&,</span>
- <span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><...>::</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Find k values meeting distances predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga8057af533a3e28e09337bab2c7a146aa"><code class="computeroutput"><span class="identifier">nearest_query</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&,</span>
- <span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><...>::</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">Predicates</span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">OutIter</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Find k values meeting distances and spatial predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga0c65d7b29b1edf72f1d236ccf211f63c"><code class="computeroutput"><span class="identifier">clear</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Remove all values from the index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gaec0b88a9d8b408753e3069134f1598c7"><code class="computeroutput"><span class="identifier">size</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Get the number of values stored in the index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1ga459e3d404fec7cbd66794714cbdd129e"><code class="computeroutput"><span class="identifier">empty</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Query if there are no values stored in the index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__rtree__functions_1gae10fbc3d536235b89aa3cb3641768bca"><code class="computeroutput"><span class="identifier">bounds</span><span class="special">(</span><span class="identifier">rtree</span><span class="special"><...></span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Get the box containing all stored values or an invalid box if
- the index has no values.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___"></a><a name="group__rtree__functions_1gac0ac9ed0e01f7494a5a3059e75d3c5cc"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___" title="insert(rtree<...> &, Value const &)">insert(rtree<...>
- &, Value const &)</a>
-</h5></div></div></div>
-<p>
- Insert a value to the index.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af6d5bd81e46cb4ff89277c753133664c">rtree::insert(value_type
- const&)</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Value</span> <span
class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________value_const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Value</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">v</span></code>
- </p>
- </td>
-<td>
- <p>
- The value which will be stored in the index.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_"></a><a name="group__rtree__functions_1gaf8f4fa09c12b96ace3bbb38823a9191b"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_" title="insert(rtree<...> &, Iterator, Iterator)">insert(rtree<...>
- &, Iterator, Iterator)</a>
-</h5></div></div></div>
-<p>
- Insert a range of values to the index.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5263a3faac7b4f0090d4ad1d44cc540d">rtree::insert(Iterator,
- Iterator)</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Iterator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">first</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">last</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________iterator__iterator_.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Iterator</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">first</span></code>
- </p>
- </td>
-<td>
- <p>
- The beginning of the range of values.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Iterator</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">last</span></code>
- </p>
- </td>
-<td>
- <p>
- The end of the range of values.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___"></a><a name="group__rtree__functions_1ga97ec330c1c021a1ac2d896a488c2eb9c"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___" title="insert(rtree<...> &, Range const &)">insert(rtree<...>
- &, Range const &)</a>
-</h5></div></div></div>
-<p>
- Insert a range of values to the index.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1abb624abd9268b41e815d40342b2634c2">rtree::insert(Range
- const&)</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Range</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">insert</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Range</span> <span
class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">rng</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.insert_rtree_________range_const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rng</span></code>
- </p>
- </td>
-<td>
- <p>
- The range of values.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___"></a><a name="group__rtree__functions_1gad40492a5b99c3eebbd51901574762527"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___" title="remove(rtree<...> &, Value const &)">remove(rtree<...>
- &, Value const &)</a>
-</h5></div></div></div>
-<p>
- Remove a value from the container.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.description">Description</a>
- </h6>
-<p>
- Remove a value from the container. In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code> or <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">map</span> <span class="identifier">erase</span><span class="special">()</span></code></code> method this function removes
- only one value from the container.
- </p>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1af6ca6909354a997f89411ef40ea5688a">rtree::remove(value_type
- const&)</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</s
pan><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Value</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Value</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">v</span></code>
- </p>
- </td>
-<td>
- <p>
- The value which will be removed from the index.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________value_const___.returns">Returns</a>
- </h6>
-<p>
- 1 if value was removed, 0 otherwise.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_"></a><a name="group__rtree__functions_1ga0219361de8b15c539af3f9bd027938ce"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_" title="remove(rtree<...> &, Iterator, Iterator)">remove(rtree<...>
- &, Iterator, Iterator)</a>
-</h5></div></div></div>
-<p>
- Remove a range of values from the container.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.description">Description</a>
- </h6>
-<p>
- Remove a range of values from the container. In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code> or <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">map</span> <span class="identifier">erase</span><span class="special">()</span></code></code> method it doesn't take iterators
- pointing to values stored in this container. It removes values equal
- to these passed as a range. Furthermore this function removes only one
- value for each one passed in the range, not all equal values.
- </p>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a6e9123114697d65b16ebc49cd5371fbd">rtree::remove(Iterator,
- Iterator)</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Iterator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</s
pan><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">first</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Iterator</span></code> <code class="computeroutput"><span class="identifier">last</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Iterator</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">first</span></code>
- </p>
- </td>
-<td>
- <p>
- The beginning of the range of values.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Iterator</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">last</span></code>
- </p>
- </td>
-<td>
- <p>
- The end of the range of values.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________iterator__iterator_.returns">Returns</a>
- </h6>
-<p>
- The number of removed values.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___"></a><a name="group__rtree__functions_1ga5885d6c90a91f238f72ab9b5ef24daf9"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___" title="remove(rtree<...> &, Range const &)">remove(rtree<...>
- &, Range const &)</a>
-</h5></div></div></div>
-<p>
- Remove a range of values from the container.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.description">Description</a>
- </h6>
-<p>
- Remove a range of values from the container. In contrast to the <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">set</span></code></code> or <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">map</span> <span class="identifier">erase</span><span class="special">()</span></code></code> method it removes values
- equal to these passed as a range. Furthermore this method removes only
- one value for each one passed in the range, not all equal values.
- </p>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a5a57bb93b0b2d7ea1c659e925f918e9c">rtree::remove(Range
- const&)</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Range</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">remove</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</s
pan><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">rng</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Range</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rng</span></code>
- </p>
- </td>
-<td>
- <p>
- The range of values.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.remove_rtree_________range_const___.returns">Returns</a>
- </h6>
-<p>
- The number of removed values.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_"></a><a name="group__rtree__functions_1ga86e0808522ef6682b72b310a3891b276"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_" title="query(rtree<...> const &, Predicates const &, OutIter)">query(rtree<...>
- const &, Predicates const &, OutIter)</a>
-</h5></div></div></div>
-<p>
- Finds values meeting passed predicates e.g. nearest to some Point and/or
- intersecting some Box.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.description">Description</a>
- </h6>
-<p>
- This query function performs spatial and k-nearest neighbor searches.
- It allows to pass a set of predicates. Values will be returned only if
- all predicates are met.
- </p>
-<p>
- <span class="bold"><strong>Spatial predicates</strong></span>
- </p>
-<p>
- The simplest form of spatial predicate is a <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>.
- In this case Values intersecting the <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>
- are returned. More spatial predicates may be generated by one of the
- functions listed below:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>,
- </li>
-</ul></div>
-<p>
- It is possible to negate spatial predicates:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>
- </li>
-</ul></div>
-<p>
- <span class="bold"><strong>Value predicate</strong></span>
- </p>
-<p>
- This is a special kind of predicate which allows to pass a user-defined
- functor which checks if Value should be returned by the query. It's generated
- by:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
- </li></ul></div>
-<p>
- <span class="bold"><strong>Nearest predicate</strong></span>
- </p>
-<p>
- If the nearest predicate is passed a k-nearest neighbor search will be
- performed. It has two variants. Passing the first one will result in
- returning k number of values, the second one will result in returning
- only one, closest value. In both cases values will be returned to the
- output iterator. Only one nearest predicate may be passed to the query.
- It may be generated by:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">boost::geometry::index::nearest()</a></code>.
- </li></ul></div>
-<p>
- <span class="bold"><strong>Connecting predicates</strong></span>
- </p>
-<p>
- A set of predicates may be generated by:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_tuple</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="keyword">operator</span><span class="special">&&()</span></code></code>
- </li>
-</ul></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</sp
an><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">predicates</span></code>
- </p>
- </td>
-<td>
- <p>
- Predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">OutIter</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">out_it</span></code>
- </p>
- </td>
-<td>
- <p>
- The output iterator, e.g. generated by std::back_inserter().
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.returns">Returns</a>
- </h6>
-<p>
- The number of values found.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h4"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.example">Example</a>
- </h6>
-<p>
-</p>
-<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">box1</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">),</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">)),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">)</span> <span class="special">&&</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">value</span><span class="special">(</span><span class="identifier">my_fun</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-</pre>
-<p>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.h5"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____outiter_.throws">Throws</a>
- </h6>
-<p>
- If Value copy constructor or copy assignment throws.
- </p>
-<div class="warning"><table border="0" summary="Warning">
-<tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="http://www.boost.org/doc/libs/release/doc/src/images/warning.png"></td>
-<th align="left">Warning</th>
-</tr>
-<tr><td align="left" valign="top"><p>
- Only one <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- perdicate may be passed to the query.
- </p></td></tr>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___"></a><a name="group__rtree__functions_1ga35b54dcaed4e4d5fb38e9ef4b78ee3c7"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___" title="query(rtree<...> const &, Predicates const &, typename rtree<...>::value_type &)">query(rtree<...>
- const &, Predicates const &, typename rtree<...>::value_type
- &)</a>
-</h5></div></div></div>
-<p>
- Finds value meeting passed predicates e.g. nearest to some Point and
- intersecting some Box.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.description">Description</a>
- </h6>
-<p>
- This query function performs k-nearest neighbor searches. It allows to
- pass a set of predicates. The value will be returned only if all predicates
- are met. This query requires that one of the predicates must be one-value
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate.
- </p>
-<p>
- <span class="bold"><strong>Spatial predicates</strong></span>
- </p>
-<p>
- The simplest form of spatial predicate is a <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>.
- In this case Values intersecting the <code class="literal"><code class="computeroutput"><span class="identifier">Geometry</span></code></code>
- are returned. More spatial predicates may be generated by one of the
- functions listed below:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>,
- </li>
-</ul></div>
-<p>
- It is possible to negate spatial predicates:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">boost::geometry::index::covered_by()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">boost::geometry::index::disjoint()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">boost::geometry::index::intersects()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">boost::geometry::index::overlaps()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="special">!</span> </code><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">boost::geometry::index::within()</a></code>
- </li>
-</ul></div>
-<p>
- <span class="bold"><strong>Value predicate</strong></span>
- </p>
-<p>
- This is a special kind of predicate which allows to pass a user-defined
- functor which checks if Value should be returned by the query. It's generated
- by:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
- </li></ul></div>
-<p>
- <span class="bold"><strong>Nearest predicate</strong></span>
- </p>
-<p>
- This query requires that one of the predicates must be one-value <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate. It may be generated by <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- taking only one parameter - distance predicates.
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">boost::geometry::index::nearest()</a></code>.
- </li></ul></div>
-<p>
- <span class="bold"><strong>Connecting predicates</strong></span>
- </p>
-<p>
- A set of predicates may be generated by:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_tuple</span><span class="special">()</span></code></code>
- </li>
-<li class="listitem">
- <code class="literal"><code class="computeroutput"><span class="keyword">operator</span><span class="special">&&()</span></code></code>
- </li>
-</ul></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">size_type</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</sp
an><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">>::</span><span class="identifier">value_type</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">value</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">predicates</span></code>
- </p>
- </td>
-<td>
- <p>
- Predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span>
- <span class="special">>::</span><span class="identifier">value_type</span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">value</span></code>
- </p>
- </td>
-<td>
- <p>
- The reference to value which will hold the result of the query.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.returns">Returns</a>
- </h6>
-<p>
- The number of values found (1 if value was found, 0 otherwise).
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.h4"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.example">Example</a>
- </h6>
-<p>
-</p>
-<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">)),</span> <span class="identifier">value</span><span class="special">);</span>
-<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">),</span> <span class="identifier">value</span><span class="special">);</span>
-</pre>
-<p>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.h5"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.throws"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.query_rtree______const____predicates_const____typename_rtree_______value_type___.throws">Throws</a>
- </h6>
-<p>
- If Value copy constructor or copy assignment throws.
- </p>
-<div class="warning"><table border="0" summary="Warning">
-<tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="http://www.boost.org/doc/libs/release/doc/src/images/warning.png"></td>
-<th align="left">Warning</th>
-</tr>
-<tr><td align="left" valign="top"><p>
- This query requires that one of the predicates must be one-value <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate.
- </p></td></tr>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_"></a><a name="group__rtree__functions_1gadcec162d2391c2c9cc4215a5578d1721"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_" title="spatial_query(rtree<...> const &, Predicates const &, OutIter)">spatial_query(rtree<...>
- const &, Predicates const &, OutIter)</a>
-</h5></div></div></div>
-<p>
- Find values meeting spatial predicates.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a930bf17d595a91d8ae924383a0387920">rtree::spatial_query</a></code>
- with parameters <code class="literal"><code class="computeroutput"><span class="special">(</span><span class="identifier">Predicates</span> <span class="keyword">const</span><span class="special">&,</span> <span class="identifier">OutIter</span><span class="special">)</span></code></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">spatial_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">OutIter</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">out_it</span></code>
- </p>
- </td>
-<td>
- <p>
- The output iterator of the result range.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.spatial_query_rtree______const____predicates_const____outiter_.returns">Returns</a>
- </h6>
-<p>
- The number of found values.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___"></a><a name="group__rtree__functions_1gacabbd521b88b67a700e1246e5889d343"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___" title="nearest_query(rtree<...> const &, DistancesPredicates const &, Value &)">nearest_query(rtree<...>
- const &, DistancesPredicates const &, Value &)</a>
-</h5></div></div></div>
-<p>
- Find the value meeting distances predicates.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909">rtree::nearest_query</a></code>
- with parameters <code class="literal"><code class="computeroutput"><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">dpred</span><span class="special">,</span> <span class="identifier">value_type</span>
- <span class="special">&</span> <span class="identifier">v</span><span class="special">)</span></code></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Value</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
- </p>
- </td>
-<td>
- <p>
- The distances predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Value</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">v</span></code>
- </p>
- </td>
-<td>
- <p>
- The result.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____value___.returns">Returns</a>
- </h6>
-<p>
- The number of found values.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___"></a><a name="group__rtree__functions_1gaf963f417d4ab54a2782928020dd8c3ad"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___" title="nearest_query(rtree<...> const &, DistancesPredicates const &, Predicates const &, Value &)">nearest_query(rtree<...>
- const &, DistancesPredicates const &, Predicates const &, Value
- &)</a>
-</h5></div></div></div>
-<p>
- Find the value meeting distances and spatial predicates.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909">rtree::nearest_query</a></code>
- with parameters <code class="literal"><code class="computeroutput"><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">dpred</span><span class="special">,</span> <span class="identifier">Predicates</span>
- <span class="keyword">const</span><span class="special">&</span>
- <span class="identifier">pred</span><span class="special">,</span>
- <span class="identifier">value_type</span> <span class="special">&</span>
- <span class="identifier">v</span><span class="special">)</span></code></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Value</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
- </p>
- </td>
-<td>
- <p>
- The distances predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Value</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">v</span></code>
- </p>
- </td>
-<td>
- <p>
- The result.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____predicates_const____value___.returns">Returns</a>
- </h6>
-<p>
- The number of found values.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_"></a><a name="group__rtree__functions_1ga74550ecb22e4ac69a445c1a6b0be9a1b"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_" title="nearest_query(rtree<...> const &, DistancesPredicates const &, typename rtree<...>::size_type, OutIter)">nearest_query(rtree<...>
- const &, DistancesPredicates const &, typename rtree<...>::size_type,
- OutIter)</a>
-</h5></div></div></div>
-<p>
- Find k values meeting distances predicates.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909">rtree::nearest_query</a></code>
- with parameters <code class="literal"><code class="computeroutput"><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&</span> <span class="identifier">dpred</span><span class="special">,</span> <span class="identifier">size_type</span>
- <span class="identifier">k</span><span class="special">,</span>
- <span class="identifier">OutIter</span> <span class="identifier">out_it</span><span class="special">)</span></code></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">>::</span><span class="identifier">size_type</span></code> <code class="computeroutput"><span class="identifier">k</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
- </p>
- </td>
-<td>
- <p>
- The distances predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span>
- <span class="special">>::</span><span class="identifier">size_type</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">k</span></code>
- </p>
- </td>
-<td>
- <p>
- The max number of values.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">OutIter</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">out_it</span></code>
- </p>
- </td>
-<td>
- <p>
- The output iterator of the result range.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__outiter_.returns">Returns</a>
- </h6>
-<p>
- The number of found values.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_"></a><a name="group__rtree__functions_1ga8057af533a3e28e09337bab2c7a146aa"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_" title="nearest_query(rtree<...> const &, DistancesPredicates const &, typename rtree<...>::size_type, Predicates const &, OutIter)">nearest_query(rtree<...>
- const &, DistancesPredicates const &, typename rtree<...>::size_type,
- Predicates const &, OutIter)</a>
-</h5></div></div></div>
-<p>
- Find k values meeting distances and spatial predicates.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a788295b315bd0ddeb93b1cc050fdf909">rtree::nearest_query</a></code>
- with parameters <code class="literal"><code class="computeroutput"><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&</span> <span class="identifier">dpred</span><span class="special">,</span> <span class="identifier">size_type</span>
- <span class="identifier">k</span><span class="special">,</span>
- <span class="identifier">Predicates</span> <span class="keyword">const</span>
- <span class="special">&</span> <span class="identifier">pred</span><span class="special">,</span> <span class="identifier">OutIter</span>
- <span class="identifier">out_it</span><span class="special">)</span></code></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">OutIter</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest_query</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">>::</span><span class="identifier">size_type</span></code> <code class="computeroutput"><span class="identifier">k</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">OutIter</span></code> <code class="computeroutput"><span class="identifier">out_it</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
- </p>
- </td>
-<td>
- <p>
- The distances predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span>
- <span class="special">>::</span><span class="identifier">size_type</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">k</span></code>
- </p>
- </td>
-<td>
- <p>
- The max number of values.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial predicates.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">OutIter</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">out_it</span></code>
- </p>
- </td>
-<td>
- <p>
- The output iterator of the result range.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.nearest_query_rtree______const____distancespredicates_const____typename_rtree_______size_type__predicates_const____outiter_.returns">Returns</a>
- </h6>
-<p>
- The number of found values.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________"></a><a name="group__rtree__functions_1ga0c65d7b29b1edf72f1d236ccf211f63c"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________" title="clear(rtree<...> &)">clear(rtree<...>
- &)</a>
-</h5></div></div></div>
-<p>
- Remove all values from the index.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09">rtree::clear()</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">clear</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___"></a><a name="group__rtree__functions_1gaec0b88a9d8b408753e3069134f1598c7"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___" title="size(rtree<...> const &)">size(rtree<...>
- const &)</a>
-</h5></div></div></div>
-<p>
- Get the number of values stored in the index.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd">rtree::size()</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">size</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.returns">Returns</a>
- </h6>
-<p>
- The number of values stored in the index.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___"></a><a name="group__rtree__functions_1ga459e3d404fec7cbd66794714cbdd129e"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___" title="empty(rtree<...> const &)">empty(rtree<...>
- const &)</a>
-</h5></div></div></div>
-<p>
- Query if there are no values stored in the index.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c">rtree::empty()</a></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">bool</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">empty</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.returns">Returns</a>
- </h6>
-<p>
- true if there are no values in the index.
- </p>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___"></a><a name="group__rtree__functions_1gae10fbc3d536235b89aa3cb3641768bca"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___" title="bounds(rtree<...> const &)">bounds(rtree<...>
- const &)</a>
-</h5></div></div></div>
-<p>
- Get the box containing all stored values or an invalid box if the index
- has no values.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.description">Description</a>
- </h6>
-<p>
- It calls <code class="literal"><code class="computeroutput"><span class="identifier">rtree</span><span class="special">::</span><span class="identifier">envelope</span><span class="special">()</span></code></code>.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">bounds_type</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">bounds</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</spa
n><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
- <span class="identifier">Value</span><span class="special">,</span>
- <span class="identifier">Options</span><span class="special">,</span>
- <span class="identifier">Translator</span><span class="special">,</span>
- <span class="identifier">Allocator</span> <span class="special">></span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">tree</span></code>
- </p>
- </td>
-<td>
- <p>
- The spatial index.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.returns">Returns</a>
- </h6>
-<p>
- The box containing all stored values or an invalid box.
- </p>
-</div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h4 class="title">
-<a name="geometry_index.r_tree.reference.parameters"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters" title="R-tree parameters">R-tree
- parameters</a>
-</h4></div></div></div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear"></a><a name="structboost_1_1geometry_1_1index_1_1linear"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear" title="boost::geometry::index::linear">boost::geometry::index::linear</a>
-</h5></div></div></div>
-<p>
- <a class="indexterm" name="idp12058912"></a><a class="indexterm" name="idp12059240"></a><a class="indexterm" name="idp12059584"></a><a class="indexterm" name="idp12059928"></a>
-Linear r-tree creation algorithm parameters.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.header">Header</a>
- </h6>
-<p>
- <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">struct</span> <span class="identifier">linear</span></code>
-<code class="computeroutput"><span class="special">{</span></code>
-<code class="computeroutput"> <span class="comment">// ...</span></code>
-<code class="computeroutput"><span class="special">};</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.h2"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.template_parameter_s_">Template
- parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Parameter
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code>
- </p>
- </td>
-<td>
- <p>
- Maximum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code>
- </p>
- </td>
-<td>
- <p>
- Minimum number of elements in nodes.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic"></a><a name="structboost_1_1geometry_1_1index_1_1quadratic"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic" title="boost::geometry::index::quadratic">boost::geometry::index::quadratic</a>
-</h5></div></div></div>
-<p>
- <a class="indexterm" name="idp12083872"></a><a class="indexterm" name="idp12084200"></a><a class="indexterm" name="idp12084544"></a><a class="indexterm" name="idp12084888"></a>
-Quadratic r-tree creation algorithm parameters.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.header">Header</a>
- </h6>
-<p>
- <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">struct</span> <span class="identifier">quadratic</span></code>
-<code class="computeroutput"><span class="special">{</span></code>
-<code class="computeroutput"> <span class="comment">// ...</span></code>
-<code class="computeroutput"><span class="special">};</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.h2"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.template_parameter_s_">Template
- parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Parameter
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code>
- </p>
- </td>
-<td>
- <p>
- Maximum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code>
- </p>
- </td>
-<td>
- <p>
- Minimum number of elements in nodes.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar"></a><a name="structboost_1_1geometry_1_1index_1_1rstar"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar" title="boost::geometry::index::rstar">boost::geometry::index::rstar</a>
-</h5></div></div></div>
-<p>
- <a class="indexterm" name="idp12108888"></a><a class="indexterm" name="idp12109216"></a><a class="indexterm" name="idp12109560"></a><a class="indexterm" name="idp12109904"></a>
-R*-tree creation algorithm parameters.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.header">Header</a>
- </h6>
-<p>
- <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">OverlapCostThreshold</span></code> = <code class="computeroutput"><span class="number">0</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">ReinsertedElements</span></code> = <code class="literal"><a class="link" href="../../">detail::default_rstar_reinserted_elements_s</a></code><code class="computeroutput"><span class="special"><</span><span class="identifier">MaxElements</span><span class="special">>::</span><span class="identifier">value</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="keyword">struct</span> <span class="identifier">rstar</span></code>
-<code class="computeroutput"><span class="special">{</span></code>
-<code class="computeroutput"> <span class="comment">// ...</span></code>
-<code class="computeroutput"><span class="special">};</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.h2"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.template_parameter_s_">Template
- parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Parameter
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code>
- </p>
- </td>
-<td>
- <p>
- Maximum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code>
- </p>
- </td>
-<td>
- <p>
- Minimum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">OverlapCostThreshold</span></code>
- </p>
- </td>
-<td>
- <p>
- The number of leaf node children elements above which nearly
- minimum overlap cost is calculated instead of minimum overlap
- cost. If 0 minimum overlap cost is always calculated.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">ReinsertedElements</span></code>
- </p>
- </td>
-<td>
- <p>
- Number of elements reinserted by forced reinsertions algorithm.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1linear"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear" title="boost::geometry::index::runtime::linear">boost::geometry::index::runtime::linear</a>
-</h5></div></div></div>
-<p>
- <a class="indexterm" name="idp12143568"></a><a class="indexterm" name="idp12143896"></a><a class="indexterm" name="idp12144240"></a><a class="indexterm" name="idp12144584"></a><a class="indexterm" name="idp12144928"></a>
-Linear r-tree creation algorithm parameters.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.header">Header</a>
- </h6>
-<p>
- <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">class</span> <span class="identifier">linear</span></code>
-<code class="computeroutput"><span class="special">{</span></code>
-<code class="computeroutput"> <span class="comment">// ...</span></code>
-<code class="computeroutput"><span class="special">};</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.h2"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.constructor_s__and_destructor">Constructor(s)
- and destructor</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Function
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1runtime_1_1linear_1a31efc1a8faba0fd037066bc1bc72b6fd"><code class="computeroutput"><span class="identifier">linear</span><span class="special">(</span><span class="identifier">size_t</span><span class="special">,</span>
- <span class="identifier">size_t</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- The constructor.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<div class="section">
-<div class="titlepage"><div><div><h6 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1linear_1a31efc1a8faba0fd037066bc1bc72b6fd"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_" title="linear(size_t, size_t)">linear(size_t,
- size_t)</a>
-</h6></div></div></div>
-<p>
- The constructor.
- </p>
-<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.synopsis">Synopsis</a>
- </h7><pre class="programlisting"><code class="computeroutput"><span class="identifier">linear</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">max_elements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">min_elements</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.parameter_s_">Parameter(s)</a>
- </h7><div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">max_elements</span></code>
- </p>
- </td>
-<td>
- <p>
- Maximum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">min_elements</span></code>
- </p>
- </td>
-<td>
- <p>
- Minimum number of elements in nodes.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1quadratic"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic" title="boost::geometry::index::runtime::quadratic">boost::geometry::index::runtime::quadratic</a>
-</h5></div></div></div>
-<p>
- <a class="indexterm" name="idp12183456"></a><a class="indexterm" name="idp12183784"></a><a class="indexterm" name="idp12184128"></a><a class="indexterm" name="idp12184472"></a><a class="indexterm" name="idp12184816"></a>
-Quadratic r-tree creation algorithm parameters.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.header">Header</a>
- </h6>
-<p>
- <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">class</span> <span class="identifier">quadratic</span></code>
-<code class="computeroutput"><span class="special">{</span></code>
-<code class="computeroutput"> <span class="comment">// ...</span></code>
-<code class="computeroutput"><span class="special">};</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.h2"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.constructor_s__and_destructor">Constructor(s)
- and destructor</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Function
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1runtime_1_1quadratic_1ae14911a22f8f91807254c58744b81563"><code class="computeroutput"><span class="identifier">quadratic</span><span class="special">(</span><span class="identifier">size_t</span><span class="special">,</span>
- <span class="identifier">size_t</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- The constructor.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<div class="section">
-<div class="titlepage"><div><div><h6 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1quadratic_1ae14911a22f8f91807254c58744b81563"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_" title="quadratic(size_t, size_t)">quadratic(size_t,
- size_t)</a>
-</h6></div></div></div>
-<p>
- The constructor.
- </p>
-<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.synopsis">Synopsis</a>
- </h7><pre class="programlisting"><code class="computeroutput"><span class="identifier">quadratic</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">max_elements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">min_elements</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.parameter_s_">Parameter(s)</a>
- </h7><div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">max_elements</span></code>
- </p>
- </td>
-<td>
- <p>
- Maximum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">min_elements</span></code>
- </p>
- </td>
-<td>
- <p>
- Minimum number of elements in nodes.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1rstar"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar" title="boost::geometry::index::runtime::rstar">boost::geometry::index::runtime::rstar</a>
-</h5></div></div></div>
-<p>
- <a class="indexterm" name="idp12223504"></a><a class="indexterm" name="idp12223832"></a><a class="indexterm" name="idp12224176"></a><a class="indexterm" name="idp12224520"></a><a class="indexterm" name="idp12224864"></a>
-R*-tree creation algorithm parameters.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.header">Header</a>
- </h6>
-<p>
- <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">class</span> <span class="identifier">rstar</span></code>
-<code class="computeroutput"><span class="special">{</span></code>
-<code class="computeroutput"> <span class="comment">// ...</span></code>
-<code class="computeroutput"><span class="special">};</span></code>
-</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.h2"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.constructor_s__and_destructor">Constructor(s)
- and destructor</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Function
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1runtime_1_1rstar_1a44d70eb723daa4fca13a1cfa20bf346f"><code class="computeroutput"><span class="identifier">rstar</span><span class="special">(</span><span class="identifier">size_t</span><span class="special">,</span>
- <span class="identifier">size_t</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- The constructor.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<div class="section">
-<div class="titlepage"><div><div><h6 class="title">
-<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1rstar_1a44d70eb723daa4fca13a1cfa20bf346f"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_" title="rstar(size_t, size_t)">rstar(size_t,
- size_t)</a>
-</h6></div></div></div>
-<p>
- The constructor.
- </p>
-<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.synopsis">Synopsis</a>
- </h7><pre class="programlisting"><code class="computeroutput"><span class="identifier">rstar</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">max_elements</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">min_elements</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">overlap_cost_threshold</span></code> = <code class="computeroutput"><span class="number">0</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">reinserted_elements</span></code> = <code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">default_rstar_reinserted_elements_d</span><span class="special">()</span></code><code class="computeroutput"><span class="special">)</span></code>
-</pre>
-<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.parameter_s_">Parameter(s)</a>
- </h7><div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">max_elements</span></code>
- </p>
- </td>
-<td>
- <p>
- Maximum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">min_elements</span></code>
- </p>
- </td>
-<td>
- <p>
- Minimum number of elements in nodes.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">overlap_cost_threshold</span></code>
- </p>
- </td>
-<td>
- <p>
- The number of leaf node children elements above which nearly
- minimum overlap cost is calculated instead of minimum overlap
- cost. If 0 minimum overlap cost is always calculated.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">reinserted_elements</span></code>
- </p>
- </td>
-<td>
- <p>
- Number of elements reinserted by forced reinsertions algorithm.
- </p>
- </td>
-</tr>
-</tbody>
+<tr><td align="left" valign="top"><p>
+ Only one <code class="literal"><a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556">nearest()</a></code>
+ perdicate may be passed to the query.
+ </p></td></tr>
</table></div>
</div>
-</div>
-</div>
-<div class="section">
-<div class="titlepage"><div><div><h4 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates" title="Predicates (boost::geometry::index::)">Predicates
- (boost::geometry::index::)</a>
-</h4></div></div></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.functions">Functions</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Function
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61"><code class="computeroutput"><span class="identifier">covered_by</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">covered_by()</a></code>
- predicate.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d"><code class="computeroutput"><span class="identifier">disjoint</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">disjoint()</a></code>
- predicate.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0"><code class="computeroutput"><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">intersects()</a></code>
- predicate.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88"><code class="computeroutput"><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">overlaps()</a></code>
- predicate.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d"><code class="computeroutput"><span class="identifier">within</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">within()</a></code>
- predicate.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce"><code class="computeroutput"><span class="identifier">value</span><span class="special">(</span><span class="identifier">Fun</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate value predicate.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b"><code class="computeroutput"><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">DistancePredicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="keyword">unsigned</span><span class="special">)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate nearest predicate.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__predicates_1ga54f507955e8dba2c928d6592d5970638"><code class="computeroutput"><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">DistancePredicates</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- Generate nearest predicate.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___"></a><a name="group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___" title="covered_by(Geometry const &)">covered_by(Geometry
- const &)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________"></a><a name="group__rtree__functions_1ga0c65d7b29b1edf72f1d236ccf211f63c"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________" title="clear(rtree<...> &)">clear(rtree<...>
+ &)</a>
</h5></div></div></div>
<p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">covered_by()</a></code>
- predicate.
+ Remove all values from the index.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.description">Description</a>
</h6>
<p>
- Generate a predicate defining Value and Geometry relationship. Value
- will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">covered_by</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae6027e42d28a4bf93e74b055c79e6b09">rtree::clear()</a></code>.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">covered_by</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">covered_by</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">void</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">clear</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.template_parameter_s_">Template
- parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Parameter
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Geometry</span></code>
- </p>
- </td>
-<td>
- <p>
- The Geometry type.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.clear_rtree________.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -7597,18 +4218,22 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
<span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">g</span></code>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
</p>
</td>
<td>
<p>
- The Geometry object.
+ The spatial index.
</p>
</td>
</tr></tbody>
@@ -7616,66 +4241,32 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___"></a><a name="group__predicates_1ga351bb3b82e019ff45adf789385b8007d"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___" title="disjoint(Geometry const &)">disjoint(Geometry
+<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___"></a><a name="group__rtree__functions_1gaec0b88a9d8b408753e3069134f1598c7"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___" title="size(rtree<...> const &)">size(rtree<...>
const &)</a>
</h5></div></div></div>
<p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">disjoint()</a></code>
- predicate.
+ Get the number of values stored in the index.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.description">Description</a>
</h6>
<p>
- Generate a predicate defining Value and Geometry relationship. Value
- will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">disjoint</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1a89561a834563f2ed6fc782bad16143fd">rtree::size()</a></code>.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">disjoint</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">disjoint</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">size</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.template_parameter_s_">Template
- parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Parameter
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody><tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Geometry</span></code>
- </p>
- </td>
-<td>
- <p>
- The Geometry type.
- </p>
- </td>
-</tr></tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -7703,61 +4294,78 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="keyword">const</span> <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">g</span></code>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
</p>
</td>
<td>
<p>
- The Geometry object.
+ The spatial index.
</p>
</td>
</tr></tbody>
</table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.size_rtree______const___.returns">Returns</a>
+ </h6>
+<p>
+ The number of values stored in the index.
+ </p>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___"></a><a name="group__predicates_1ga7301c50e0272976b9f1434536383e6d0"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___" title="intersects(Geometry const &)">intersects(Geometry
+<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___"></a><a name="group__rtree__functions_1ga459e3d404fec7cbd66794714cbdd129e"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___" title="empty(rtree<...> const &)">empty(rtree<...>
const &)</a>
</h5></div></div></div>
<p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">intersects()</a></code>
- predicate.
+ Query if there are no values stored in the index.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.description">Description</a>
</h6>
<p>
- Generate a predicate defining Value and Geometry relationship. Value
- will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
+ It calls <code class="literal"><a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb975564c55804c">rtree::empty()</a></code>.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">intersects</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">intersects</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">bool</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">empty</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.template_parameter_s_">Template
- parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
+<col>
</colgroup>
<thead><tr>
<th>
<p>
- Parameter
+ Type
+ </p>
+ </th>
+<th>
+ <p>
+ Name
</p>
</th>
<th>
@@ -7769,19 +4377,63 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span></code>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="keyword">const</span> <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- The Geometry type.
+ <code class="computeroutput"><span class="identifier">tree</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The spatial index.
</p>
</td>
</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.empty_rtree______const___.returns">Returns</a>
+ </h6>
+<p>
+ true if there are no values in the index.
+ </p>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___"></a><a name="group__rtree__functions_1gae10fbc3d536235b89aa3cb3641768bca"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___" title="bounds(rtree<...> const &)">bounds(rtree<...>
+ const &)</a>
+</h5></div></div></div>
+<p>
+ Get the box containing all stored values or an invalid box if the index
+ has no values.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.description">Description</a>
+ </h6>
+<p>
+ It calls <code class="literal"><code class="computeroutput"><span class="identifier">rtree</span><span class="special">::</span><span class="identifier">envelope</span><span class="special">()</span></code></code>.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Options</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Translator</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Allocator</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</span><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span><span class="special">>::</span><span class="identifier">bounds_type</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">bounds</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span> <span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Options</spa
n><span class="special">,</span> <span class="identifier">Translator</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="special">></span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">tree</span></code><code class="computeroutput"><span class="special">)</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -7809,50 +4461,68 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">rtree</span><span class="special"><</span>
+ <span class="identifier">Value</span><span class="special">,</span>
+ <span class="identifier">Options</span><span class="special">,</span>
+ <span class="identifier">Translator</span><span class="special">,</span>
+ <span class="identifier">Allocator</span> <span class="special">></span>
+ <span class="keyword">const</span> <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">g</span></code>
+ <code class="computeroutput"><span class="identifier">tree</span></code>
</p>
</td>
<td>
<p>
- The Geometry object.
+ The spatial index.
</p>
</td>
</tr></tbody>
</table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__rtree__functions.bounds_rtree______const___.returns">Returns</a>
+ </h6>
+<p>
+ The box containing all stored values or an invalid box.
+ </p>
</div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="geometry_index.r_tree.reference.parameters"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters" title="R-tree parameters">R-tree
+ parameters</a>
+</h4></div></div></div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___"></a><a name="group__predicates_1ga5511236f56be1defcccbf11e742ccd88"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___" title="overlaps(Geometry const &)">overlaps(Geometry
- const &)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear"></a><a name="structboost_1_1geometry_1_1index_1_1linear"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear" title="boost::geometry::index::linear">boost::geometry::index::linear</a>
</h5></div></div></div>
<p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">overlaps()</a></code>
- predicate.
+ <a class="indexterm" name="id904984"></a><a class="indexterm" name="id904988"></a><a class="indexterm" name="id904993"></a><a class="indexterm" name="id904998"></a>
+Linear r-tree creation algorithm parameters.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.header">Header</a>
</h6>
<p>
- Generate a predicate defining Value and Geometry relationship. Value
- will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
+ <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">overlaps</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">struct</span> <span class="identifier">linear</span></code>
+<code class="computeroutput"><span class="special">{</span></code>
+<code class="computeroutput"> <span class="comment">// ...</span></code>
+<code class="computeroutput"><span class="special">};</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_linear.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -7872,38 +4542,73 @@
</p>
</th>
</tr></thead>
-<tbody><tr>
+<tbody>
+<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code>
</p>
</td>
<td>
<p>
- The Geometry type.
+ Maximum number of elements in nodes.
</p>
</td>
-</tr></tbody>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Minimum number of elements in nodes.
+ </p>
+ </td>
+</tr>
+</tbody>
</table></div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic"></a><a name="structboost_1_1geometry_1_1index_1_1quadratic"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic" title="boost::geometry::index::quadratic">boost::geometry::index::quadratic</a>
+</h5></div></div></div>
+<p>
+ <a class="indexterm" name="id905292"></a><a class="indexterm" name="id905297"></a><a class="indexterm" name="id905302"></a><a class="indexterm" name="id905306"></a>
+Quadratic r-tree creation algorithm parameters.
+ </p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.header">Header</a>
+ </h6>
+<p>
+ <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">struct</span> <span class="identifier">quadratic</span></code>
+<code class="computeroutput"><span class="special">{</span></code>
+<code class="computeroutput"> <span class="comment">// ...</span></code>
+<code class="computeroutput"><span class="special">};</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_quadratic.template_parameter_s_">Template
+ parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
-<col>
</colgroup>
<thead><tr>
<th>
<p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
+ Parameter
</p>
</th>
<th>
@@ -7912,53 +4617,65 @@
</p>
</th>
</tr></thead>
-<tbody><tr>
+<tbody>
+<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">g</span></code>
+ Maximum number of elements in nodes.
</p>
</td>
+</tr>
+<tr>
<td>
<p>
- The Geometry object.
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code>
</p>
</td>
-</tr></tbody>
+<td>
+ <p>
+ Minimum number of elements in nodes.
+ </p>
+ </td>
+</tr>
+</tbody>
</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___"></a><a name="group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___" title="within(Geometry const &)">within(Geometry
- const &)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar"></a><a name="structboost_1_1geometry_1_1index_1_1rstar"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar" title="boost::geometry::index::rstar">boost::geometry::index::rstar</a>
</h5></div></div></div>
<p>
- Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">within()</a></code>
- predicate.
+ <a class="indexterm" name="id905600"></a><a class="indexterm" name="id905605"></a><a class="indexterm" name="id905610"></a><a class="indexterm" name="id905615"></a>
+R*-tree creation algorithm parameters.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.header">Header</a>
</h6>
<p>
- Generate a predicate defining Value and Geometry relationship. Value
- will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
+ <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">within</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">within</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">OverlapCostThreshold</span></code> = <code class="computeroutput"><span class="number">0</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">ReinsertedElements</span></code> = <code class="literal"><a class="link" href="../../">detail::default_rstar_reinserted_elements_s</a></code><code class="computeroutput"><span class="special"><</span><span class="identifier">MaxElements</span><span class="special">>::</span><span class="identifier">value</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="keyword">struct</span> <span class="identifier">rstar</span></code>
+<code class="computeroutput"><span class="special">{</span></code>
+<code class="computeroutput"> <span class="comment">// ...</span></code>
+<code class="computeroutput"><span class="special">};</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_rstar.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -7978,93 +4695,88 @@
</p>
</th>
</tr></thead>
-<tbody><tr>
+<tbody>
+<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MaxElements</span></code>
</p>
</td>
<td>
<p>
- The Geometry type.
+ Maximum number of elements in nodes.
</p>
</td>
-</tr></tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
+</tr>
+<tr>
+<td>
<p>
- Type
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">MinElements</span></code>
</p>
- </th>
-<th>
+ </td>
+<td>
<p>
- Name
+ Minimum number of elements in nodes.
</p>
- </th>
-<th>
+ </td>
+</tr>
+<tr>
+<td>
<p>
- Description
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">OverlapCostThreshold</span></code>
</p>
- </th>
-</tr></thead>
-<tbody><tr>
+ </td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
+ The number of leaf node children elements above which nearly
+ minimum overlap cost is calculated instead of minimum overlap
+ cost. If 0 minimum overlap cost is always calculated.
</p>
</td>
+</tr>
+<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">g</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span> <span class="identifier">ReinsertedElements</span></code>
</p>
</td>
<td>
<p>
- The Geometry object.
+ Number of elements reinserted by forced reinsertions algorithm.
</p>
</td>
-</tr></tbody>
+</tr>
+</tbody>
</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___"></a><a name="group__predicates_1ga8acb81106fce01da72f310184ab4d9ce"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___" title="value(Fun const &)">value(Fun
- const &)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1linear"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear" title="boost::geometry::index::runtime::linear">boost::geometry::index::runtime::linear</a>
</h5></div></div></div>
<p>
- Generate value predicate.
+ <a class="indexterm" name="id906035"></a><a class="indexterm" name="id906040"></a><a class="indexterm" name="id906044"></a><a class="indexterm" name="id906049"></a><a class="indexterm" name="id906054"></a>
+Linear r-tree creation algorithm parameters.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.header">Header</a>
</h6>
<p>
- A wrapper around user-defined functor describing if Value should be returned
- by spatial query.
+ <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Fun</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">value</span><span class="special"><</span><span class="identifier">Fun</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Fun</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">fun</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">class</span> <span class="identifier">linear</span></code>
+<code class="computeroutput"><span class="special">{</span></code>
+<code class="computeroutput"> <span class="comment">// ...</span></code>
+<code class="computeroutput"><span class="special">};</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.template_parameter_s_">Template
- parameter(s)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.constructor_s__and_destructor">Constructor(s)
+ and destructor</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -8074,7 +4786,7 @@
<thead><tr>
<th>
<p>
- Parameter
+ Function
</p>
</th>
<th>
@@ -8086,35 +4798,131 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Fun</span></code>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1runtime_1_1linear_1a31efc1a8faba0fd037066bc1bc72b6fd"><code class="computeroutput"><span class="identifier">linear</span><span class="special">(</span><span class="identifier">size_t</span><span class="special">,</span>
+ <span class="identifier">size_t</span><span class="special">)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ The constructor.
</p>
</td>
+</tr></tbody>
+</table></div>
+<div class="section">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1linear_1a31efc1a8faba0fd037066bc1bc72b6fd"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_" title="linear(size_t, size_t)">linear(size_t,
+ size_t)</a>
+</h6></div></div></div>
+<p>
+ The constructor.
+ </p>
+<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.synopsis">Synopsis</a>
+ </h7><pre class="programlisting"><code class="computeroutput"><span class="identifier">linear</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">max_elements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">min_elements</span></code><code class="computeroutput"><span class="special">)</span></code>
+</pre>
+<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_linear.linear_size_t__size_t_.parameter_s_">Parameter(s)</a>
+ </h7><div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Type
+ </p>
+ </th>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">max_elements</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Maximum number of elements in nodes.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">min_elements</span></code>
+ </p>
+ </td>
<td>
- <p>
- Functor type.
- </p>
- </td>
-</tr></tbody>
+ <p>
+ Minimum number of elements in nodes.
+ </p>
+ </td>
+</tr>
+</tbody>
</table></div>
+</div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1quadratic"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic" title="boost::geometry::index::runtime::quadratic">boost::geometry::index::runtime::quadratic</a>
+</h5></div></div></div>
+<p>
+ <a class="indexterm" name="id906512"></a><a class="indexterm" name="id906517"></a><a class="indexterm" name="id906522"></a><a class="indexterm" name="id906527"></a><a class="indexterm" name="id906532"></a>
+Quadratic r-tree creation algorithm parameters.
+ </p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.header">Header</a>
+ </h6>
+<p>
+ <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">class</span> <span class="identifier">quadratic</span></code>
+<code class="computeroutput"><span class="special">{</span></code>
+<code class="computeroutput"> <span class="comment">// ...</span></code>
+<code class="computeroutput"><span class="special">};</span></code>
+</pre>
+<h6>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.constructor_s__and_destructor">Constructor(s)
+ and destructor</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
-<col>
</colgroup>
<thead><tr>
<th>
<p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
+ Function
</p>
</th>
<th>
@@ -8126,108 +4934,32 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Fun</span> <span class="keyword">const</span>
- <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">fun</span></code>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1runtime_1_1quadratic_1ae14911a22f8f91807254c58744b81563"><code class="computeroutput"><span class="identifier">quadratic</span><span class="special">(</span><span class="identifier">size_t</span><span class="special">,</span>
+ <span class="identifier">size_t</span><span class="special">)</span></code></a>
</p>
</td>
<td>
<p>
- The functor.
+ The constructor.
</p>
</td>
</tr></tbody>
</table></div>
-</div>
<div class="section">
-<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_"></a><a name="group__predicates_1ga162233fd11b980853f8b8335cb70d57b"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_" title="nearest(DistancePredicates const &, unsigned)">nearest(DistancePredicates
- const &, unsigned)</a>
-</h5></div></div></div>
-<p>
- Generate nearest predicate.
- </p>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.description">Description</a>
- </h6>
-<p>
- When nearest predicate is passed to the query, k-nearest neighbour search
- will be performed.
- </p>
-<p>
- <span class="bold"><strong>Distances predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>. In this the case values
- closest to <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- are returned.
- </p>
-<p>
- It is possible to define how distance between values and query Point
- is calculated. This is done by passing PointRelation. It can be generated
- by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<p>
- It is possible to define distances bounds, for example that a distance
- must be between min_distance and max_distance. This is done by passing
- DistancesPredicates which can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">boost::geometry::index::unbounded()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">boost::geometry::index::min_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">boost::geometry::index::max_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">boost::geometry::index::bounded()</a></code>.
- </li>
-</ul></div>
+<div class="titlepage"><div><div><h6 class="title">
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1quadratic_1ae14911a22f8f91807254c58744b81563"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_" title="quadratic(size_t, size_t)">quadratic(size_t,
+ size_t)</a>
+</h6></div></div></div>
<p>
- MinRelation and MaxRelation describes bounds and can be generated by
- following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.synopsis">Synopsis</a>
- </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancePredicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">nearest</span><span class="special"><</span><span class="identifier">DistancePredicates</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancePredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">unsigned</span></code> <code class="computeroutput"><span class="identifier">k</span></code><code cla
ss="computeroutput"><span class="special">)</span></code>
+ The constructor.
+ </p>
+<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.synopsis">Synopsis</a>
+ </h7><pre class="programlisting"><code class="computeroutput"><span class="identifier">quadratic</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">max_elements</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">min_elements</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.parameter_s_">Parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
+<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_quadratic.quadratic_size_t__size_t_.parameter_s_">Parameter(s)</a>
+ </h7><div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
@@ -8235,183 +4967,98 @@
</colgroup>
<thead><tr>
<th>
- <p>
- Type
- </p>
- </th>
+ <p>
+ Type
+ </p>
+ </th>
<th>
- <p>
- Name
- </p>
- </th>
+ <p>
+ Name
+ </p>
+ </th>
<th>
- <p>
- Description
- </p>
- </th>
+ <p>
+ Description
+ </p>
+ </th>
</tr></thead>
<tbody>
<tr>
<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancePredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
- </p>
- </td>
+ <p>
+ <code class="computeroutput"><span class="identifier">max_elements</span></code>
+ </p>
+ </td>
<td>
- <p>
- The distance predicates.
- </p>
- </td>
+ <p>
+ Maximum number of elements in nodes.
+ </p>
+ </td>
</tr>
<tr>
<td>
- <p>
- <code class="computeroutput"><span class="keyword">unsigned</span></code>
- </p>
- </td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
<td>
- <p>
- <code class="computeroutput"><span class="identifier">k</span></code>
- </p>
- </td>
+ <p>
+ <code class="computeroutput"><span class="identifier">min_elements</span></code>
+ </p>
+ </td>
<td>
- <p>
- The maximum number of values to return.
- </p>
- </td>
+ <p>
+ Minimum number of elements in nodes.
+ </p>
+ </td>
</tr>
</tbody>
</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const____unsigned_.example">Example</a>
- </h6>
-<p>
-</p>
-<pre class="programlisting"><span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_furthest</span><span class="special">(</span><span class="number">10</span><span class="special">),</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_nearest</span><span class="special">(</span><span class="number">20</span><span class="special">)),</span> <span class="number">5</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">
back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-</pre>
-<p>
- </p>
-<div class="warning"><table border="0" summary="Warning">
-<tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="http://www.boost.org/doc/libs/release/doc/src/images/warning.png"></td>
-<th align="left">Warning</th>
-</tr>
-<tr><td align="left" valign="top"><p>
- Only one <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate may be used in a query. This version may be used only in
- queries returning a set of values - using output iterator.
- </p></td></tr>
-</table></div>
+</div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___"></a><a name="group__predicates_1ga54f507955e8dba2c928d6592d5970638"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___" title="nearest(DistancePredicates const &)">nearest(DistancePredicates
- const &)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1rstar"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar" title="boost::geometry::index::runtime::rstar">boost::geometry::index::runtime::rstar</a>
</h5></div></div></div>
<p>
- Generate nearest predicate.
+ <a class="indexterm" name="id908288"></a><a class="indexterm" name="id908292"></a><a class="indexterm" name="id908297"></a><a class="indexterm" name="id908302"></a><a class="indexterm" name="id908307"></a>
+R*-tree creation algorithm parameters.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.header">Header</a>
</h6>
<p>
- When nearest predicate is passed to the query, k-nearest neighbour search
- will be performed.
- </p>
-<p>
- <span class="bold"><strong>Distances predicates</strong></span> may be a <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>. In this the case value
- closest to <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- is returned.
- </p>
-<p>
- It is possible to define how distance between value and query Point is
- calculated. This is done by passing PointRelation. It can be generated
- by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
-<p>
- It is possible to define distances bounds, for example that a distance
- must be between min_distance and max_distance. This is done by passing
- DistancesPredicates which can be generated by following functions:
- </p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">boost::geometry::index::unbounded()</a></code>
- - default,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">boost::geometry::index::min_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">boost::geometry::index::max_bounded()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">boost::geometry::index::bounded()</a></code>.
- </li>
-</ul></div>
-<p>
- MinRelation and MaxRelation describes bounds and can be generated by
- following functions:
+ <code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">parameters</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
- </li>
-<li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
- </li>
-</ul></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancePredicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">nearest_one</span><span class="special"><</span><span class="identifier">DistancePredicates</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancePredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">class</span> <span class="identifier">rstar</span></code>
+<code class="computeroutput"><span class="special">{</span></code>
+<code class="computeroutput"> <span class="comment">// ...</span></code>
+<code class="computeroutput"><span class="special">};</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.constructor_s__and_destructor">Constructor(s)
+ and destructor</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
-<col>
</colgroup>
<thead><tr>
<th>
<p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
+ Function
</p>
</th>
<th>
@@ -8423,56 +5070,141 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">DistancePredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
+ <a class="link" href="reference.html#classboost_1_1geometry_1_1index_1_1runtime_1_1rstar_1a44d70eb723daa4fca13a1cfa20bf346f"><code class="computeroutput"><span class="identifier">rstar</span><span class="special">(</span><span class="identifier">size_t</span><span class="special">,</span>
+ <span class="identifier">size_t</span><span class="special">)</span></code></a>
</p>
</td>
<td>
<p>
- The distance predicates.
+ The constructor.
</p>
</td>
</tr></tbody>
</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_distancepredicates_const___.example">Example</a>
- </h6>
+<div class="section">
+<div class="titlepage"><div><div><h6 class="title">
+<a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_"></a><a name="classboost_1_1geometry_1_1index_1_1runtime_1_1rstar_1a44d70eb723daa4fca13a1cfa20bf346f"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_" title="rstar(size_t, size_t)">rstar(size_t,
+ size_t)</a>
+</h6></div></div></div>
<p>
-</p>
-<pre class="programlisting"><span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="identifier">value</span><span class="special">);</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">value</span><span class="special">);</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">))</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">value</span><span class="special">);</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">bounded</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_furthest</span><span class="special">(</span><span class="number">10</span><span class="special">),</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_nearest</span><span class="special">(</span><span class="number">20</span><span class="special">))),</span> <span class="identifier">value</span><span class="special">);</span>
+ The constructor.
+ </p>
+<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.synopsis">Synopsis</a>
+ </h7><pre class="programlisting"><code class="computeroutput"><span class="identifier">rstar</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">max_elements</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">min_elements</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">overlap_cost_threshold</span></code> = <code class="computeroutput"><span class="number">0</span></code><code class="computeroutput"><span class="special">,</span></code>
+ <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">reinserted_elements</span></code> = <code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">default_rstar_reinserted_elements_d</span><span class="special">()</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
-<p>
- </p>
-<div class="warning"><table border="0" summary="Warning">
+<h7><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.parameters.boost_geometry_index_runtime_rstar.rstar_size_t__size_t_.parameter_s_">Parameter(s)</a>
+ </h7><div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Type
+ </p>
+ </th>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
<tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="http://www.boost.org/doc/libs/release/doc/src/images/warning.png"></td>
-<th align="left">Warning</th>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">max_elements</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Maximum number of elements in nodes.
+ </p>
+ </td>
</tr>
-<tr><td align="left" valign="top"><p>
- Only one <code class="literal"><a class="link" href="reference.html#group__predicates_1ga162233fd11b980853f8b8335cb70d57b">nearest()</a></code>
- predicate may be used in a query. This version may be used only in
- queries returning one value.
- </p></td></tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">min_elements</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Minimum number of elements in nodes.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">overlap_cost_threshold</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ The number of leaf node children elements above which nearly
+ minimum overlap cost is calculated instead of minimum overlap
+ cost. If 0 minimum overlap cost is always calculated.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">size_t</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">reinserted_elements</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Number of elements reinserted by forced reinsertions algorithm.
+ </p>
+ </td>
+</tr>
+</tbody>
</table></div>
</div>
</div>
+</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates" title="Distance predicates (boost::geometry::index::)">Distance
- predicates (boost::geometry::index::)</a>
+<a name="geometry_index.r_tree.reference.group__predicates"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates" title="Predicates (boost::geometry::index::)">Predicates
+ (boost::geometry::index::)</a>
</h4></div></div></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.functions">Functions</a>
+<a name="geometry_index.r_tree.reference.group__predicates.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.functions">Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -8495,103 +5227,96 @@
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636"><code class="computeroutput"><span class="identifier">to_nearest</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span>
+ <a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61"><code class="computeroutput"><span class="identifier">covered_by</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a>
- relationship.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">covered_by()</a></code>
+ predicate.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0"><code class="computeroutput"><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span>
+ <a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d"><code class="computeroutput"><span class="identifier">disjoint</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a>
- relationship.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">disjoint()</a></code>
+ predicate.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02"><code class="computeroutput"><span class="identifier">to_furthest</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span>
+ <a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0"><code class="computeroutput"><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a>
- relationship.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">intersects()</a></code>
+ predicate.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db"><code class="computeroutput"><span class="identifier">unbounded</span><span class="special">(</span><span class="identifier">PointRelation</span> <span class="keyword">const</span>
+ <a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88"><code class="computeroutput"><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">unbounded()</a>
- distance predicate.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">overlaps()</a></code>
+ predicate.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098"><code class="computeroutput"><span class="identifier">min_bounded</span><span class="special">(</span><span class="identifier">PointRelation</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">MinRelation</span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ <a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d"><code class="computeroutput"><span class="identifier">within</span><span class="special">(</span><span class="identifier">Geometry</span> <span class="keyword">const</span>
+ <span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">min_bounded()</a>
- distance predicate.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">within()</a></code>
+ predicate.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079"><code class="computeroutput"><span class="identifier">max_bounded</span><span class="special">(</span><span class="identifier">PointRelation</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">MaxRelation</span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
+ <a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce"><code class="computeroutput"><span class="identifier">value</span><span class="special">(</span><span class="identifier">Fun</span> <span class="keyword">const</span>
+ <span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">max_bounded()</a>
- distance predicate.
+ Generate value predicate.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347"><code class="computeroutput"><span class="identifier">bounded</span><span class="special">(</span><span class="identifier">PointRelation</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">MinRelation</span>
- <span class="keyword">const</span> <span class="special">&,</span>
- <span class="identifier">MaxRelation</span> <span class="keyword">const</span>
- <span class="special">&)</span></code></a>
+ <a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556"><code class="computeroutput"><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">PointOrRelation</span> <span class="keyword">const</span>
+ <span class="special">&,</span> <span class="keyword">unsigned</span><span class="special">)</span></code></a>
</p>
</td>
<td>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">bounded()</a>
- distance predicate.
+ Generate nearest predicate.
</p>
</td>
</tr>
@@ -8599,36 +5324,31 @@
</table></div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___"></a><a name="group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___" title="to_nearest(T const &)">to_nearest(T
+<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___"></a><a name="group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___" title="covered_by(Geometry const &)">covered_by(Geometry
const &)</a>
</h5></div></div></div>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a>
- relationship.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61">covered_by()</a></code>
+ predicate.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.description">Description</a>
</h6>
<p>
- Generate a nearest query Point and Value's Indexable relationship while
- calculating distances. This function may be used to define that knn query
- should calculate distances as smallest as possible between query Point
- and Indexable's points. In other words it should be the distance to the
- nearest Indexable's point. This function may be also used to define distances
- bounds which indicates that Indexable's nearest point should be closer
- or further than value v. This is default relation.
+ Generate a predicate defining Value and Geometry relationship. Value
+ will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">covered_by</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">T</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">to_nearest</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_nearest</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">covered_by</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">covered_by</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -8651,20 +5371,19 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">T</span></code>
+ <code class="computeroutput"><span class="identifier">Geometry</span></code>
</p>
</td>
<td>
<p>
- Type of wrapped object. This may be a Point for PointRelation
- or CoordinateType for MinRelation or MaxRelation
+ The Geometry type.
</p>
</td>
</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_nearest_t_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -8692,18 +5411,18 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span>
+ <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
<span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">v</span></code>
+ <code class="computeroutput"><span class="identifier">g</span></code>
</p>
</td>
<td>
<p>
- Point or distance value.
+ The Geometry object.
</p>
</td>
</tr></tbody>
@@ -8711,34 +5430,31 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___"></a><a name="group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___" title="to_centroid(T const &)">to_centroid(T
+<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___"></a><a name="group__predicates_1ga351bb3b82e019ff45adf789385b8007d"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___" title="disjoint(Geometry const &)">disjoint(Geometry
const &)</a>
</h5></div></div></div>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a>
- relationship.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga351bb3b82e019ff45adf789385b8007d">disjoint()</a></code>
+ predicate.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.description">Description</a>
</h6>
<p>
- Generate a nearest query Point and Value's Indexable relationship while
- calculating distances. This function may be used to define that knn query
- should calculate distances between query Point and Indexable's centroid.
- This function may be also used to define distances bounds which indicates
- that Indexable's centroid should be closer or further than value v.
+ Generate a predicate defining Value and Geometry relationship. Value
+ will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">disjoint</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">T</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_centroid</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">disjoint</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">disjoint</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -8761,20 +5477,19 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">T</span></code>
+ <code class="computeroutput"><span class="identifier">Geometry</span></code>
</p>
</td>
<td>
<p>
- Type of wrapped object. This may be a Point for PointRelation
- or some CoordinateType for MinRelation or MaxRelation
+ The Geometry type.
</p>
</td>
</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_centroid_t_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -8802,18 +5517,18 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span>
+ <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
<span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">v</span></code>
+ <code class="computeroutput"><span class="identifier">g</span></code>
</p>
</td>
<td>
<p>
- Point or distance value.
+ The Geometry object.
</p>
</td>
</tr></tbody>
@@ -8821,36 +5536,31 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___"></a><a name="group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___" title="to_furthest(T const &)">to_furthest(T
+<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___"></a><a name="group__predicates_1ga7301c50e0272976b9f1434536383e6d0"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___" title="intersects(Geometry const &)">intersects(Geometry
const &)</a>
</h5></div></div></div>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a>
- relationship.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga7301c50e0272976b9f1434536383e6d0">intersects()</a></code>
+ predicate.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.description">Description</a>
</h6>
<p>
- Generate a nearest query Point and Value's Indexable relationship while
- calculating distances. This function may be used to define that knn query
- should calculate distances as biggest as possible between query Point
- and Indexable's points. In other words it should be the distance to the
- furthest Indexable's point. This function may be also used to define
- distances bounds which indicates that Indexable's furthest point should
- be closer or further than value v.
+ Generate a predicate defining Value and Geometry relationship. Value
+ will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">T</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">to_furthest</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_furthest</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">intersects</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">intersects</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -8873,20 +5583,19 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">T</span></code>
+ <code class="computeroutput"><span class="identifier">Geometry</span></code>
</p>
</td>
<td>
- <p>
- Type of wrapped object. This may be a Point for PointRelation
- or some CoordinateType for MinRelation or MaxRelation
+ <p>
+ The Geometry type.
</p>
</td>
</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.to_furthest_t_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -8914,18 +5623,18 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span>
+ <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
<span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">v</span></code>
+ <code class="computeroutput"><span class="identifier">g</span></code>
</p>
</td>
<td>
<p>
- Point or distance value.
+ The Geometry object.
</p>
</td>
</tr></tbody>
@@ -8933,34 +5642,31 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___"></a><a name="group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___" title="unbounded(PointRelation const &)">unbounded(PointRelation
+<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___"></a><a name="group__predicates_1ga5511236f56be1defcccbf11e742ccd88"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___" title="overlaps(Geometry const &)">overlaps(Geometry
const &)</a>
</h5></div></div></div>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga1b0f969b575a94ca710b9345861f64db">unbounded()</a>
- distance predicate.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1ga5511236f56be1defcccbf11e742ccd88">overlaps()</a></code>
+ predicate.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.description">Description</a>
</h6>
<p>
- Generate a distance predicate. This defines distances bounds which are
- used by knn query. This function indicates that there is no distance
- bounds and Values should be returned if distances between Point and Indexable
- are the smallest. Distance calculation is defined by PointRelation. This
- is default nearest predicate.
+ Generate a predicate defining Value and Geometry relationship. Value
+ will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">PointRelation</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">unbounded</span><span class="special"><</span><span class="identifier">PointRelation</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">unbounded</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pr</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">overlaps</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -8983,19 +5689,19 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">PointRelation</span></code>
+ <code class="computeroutput"><span class="identifier">Geometry</span></code>
</p>
</td>
<td>
<p>
- PointRelation type.
+ The Geometry type.
</p>
</td>
</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.unbounded_pointrelation_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -9023,21 +5729,18 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">pr</span></code>
+ <code class="computeroutput"><span class="identifier">g</span></code>
</p>
</td>
<td>
<p>
- The point relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">index::to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">index::to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">index::to_furthest()</a></code>
- with <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- passed as a parameter.
+ The Geometry object.
</p>
</td>
</tr></tbody>
@@ -9045,36 +5748,31 @@
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___"></a><a name="group__distance__predicates_1ga39c7c94776ab840e164848e53d376098"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___" title="min_bounded(PointRelation const &, MinRelation const &)">min_bounded(PointRelation
- const &, MinRelation const &)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___"></a><a name="group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___" title="within(Geometry const &)">within(Geometry
+ const &)</a>
</h5></div></div></div>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga39c7c94776ab840e164848e53d376098">min_bounded()</a>
- distance predicate.
+ Generate <code class="literal"><a class="link" href="reference.html#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d">within()</a></code>
+ predicate.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.description">Description</a>
</h6>
<p>
- Generate a distance predicate. This defines distances bounds which are
- used by knn query. This function indicates that Values should be returned
- only if distances between Point and Indexable are greater or equal to
- some min_distance passed in MinRelation. Check for closest Value is defined
- by PointRelation. So it is possible e.g. to return Values with centroids
- closest to some Point but only if nearest points are further than some
- distance.
+ Generate a predicate defining Value and Geometry relationship. Value
+ will be returned by the query if <code class="literal"><code class="computeroutput"><span class="identifier">bg</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">Indexable</span><span class="special">,</span> <span class="identifier">Geometry</span><span class="special">)</span></code></code> returns true.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">PointRelation</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">MinRelation</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">min_bounded</span><span class="special"><</span><span class="identifier">PointRelation</span><span class="special">,</span> <span class="identifier">MinRelation</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">min_bounded</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pr</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">MinRelation</span> <span clas
s="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">minr</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Geometry</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">within</span><span class="special"><</span><span class="identifier">Geometry</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">within</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">g</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -9094,36 +5792,22 @@
</p>
</th>
</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">PointRelation</span></code>
- </p>
- </td>
-<td>
- <p>
- PointRelation type.
- </p>
- </td>
-</tr>
-<tr>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">MinRelation</span></code>
+ <code class="computeroutput"><span class="identifier">Geometry</span></code>
</p>
</td>
<td>
<p>
- MinRelation type.
+ The Geometry type.
</p>
</td>
-</tr>
-</tbody>
+</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.min_bounded_pointrelation_const____minrelation_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -9148,83 +5832,52 @@
</p>
</th>
</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">pr</span></code>
- </p>
- </td>
-<td>
- <p>
- The point relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a></code>
- with <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- passed as a parameter.
- </p>
- </td>
-</tr>
-<tr>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">MinRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">Geometry</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">minr</span></code>
+ <code class="computeroutput"><span class="identifier">g</span></code>
</p>
</td>
<td>
<p>
- The minimum bound relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a></code>
- with distance value passed as a parameter.
+ The Geometry object.
</p>
</td>
-</tr>
-</tbody>
+</tr></tbody>
</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___"></a><a name="group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___" title="max_bounded(PointRelation const &, MaxRelation const &)">max_bounded(PointRelation
- const &, MaxRelation const &)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___"></a><a name="group__predicates_1ga8acb81106fce01da72f310184ab4d9ce"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___" title="value(Fun const &)">value(Fun
+ const &)</a>
</h5></div></div></div>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga843735643378288b0e14e19cc9b4e079">max_bounded()</a>
- distance predicate.
+ Generate value predicate.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.description">Description</a>
</h6>
<p>
- Generate a distance predicate. This defines distances bounds which are
- used by knn query. This function indicates that Values should be returned
- only if distances between Point and Indexable are lesser or equal to
- some max_distance passed in MaxRelation. Check for closest Value is defined
- by PointRelation. So it is possible e.g. to return Values with centroids
- closest to some Point but only if nearest points are closer than some
- distance.
+ A wrapper around user-defined functor describing if Value should be returned
+ by spatial query.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">PointRelation</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">MaxRelation</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">max_bounded</span><span class="special"><</span><span class="identifier">PointRelation</span><span class="special">,</span> <span class="identifier">MaxRelation</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">max_bounded</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pr</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">MaxRelation</span> <span clas
s="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">maxr</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Fun</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">value</span><span class="special"><</span><span class="identifier">Fun</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Fun</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">fun</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -9244,36 +5897,22 @@
</p>
</th>
</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">PointRelation</span></code>
- </p>
- </td>
-<td>
- <p>
- PointRelation type.
- </p>
- </td>
-</tr>
-<tr>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">MaxRelation</span></code>
+ <code class="computeroutput"><span class="identifier">Fun</span></code>
</p>
</td>
<td>
<p>
- MaxRelation type.
+ Functor type.
</p>
</td>
-</tr>
-</tbody>
+</tr></tbody>
</table></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.max_bounded_pointrelation_const____maxrelation_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -9298,149 +5937,72 @@
</p>
</th>
</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">pr</span></code>
- </p>
- </td>
-<td>
- <p>
- The point relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a></code>
- with <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- passed as a parameter.
- </p>
- </td>
-</tr>
-<tr>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">MaxRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">Fun</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">maxr</span></code>
+ <code class="computeroutput"><span class="identifier">fun</span></code>
</p>
</td>
<td>
<p>
- The maximum bound relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a></code>
- with distance value passed as a parameter.
+ The functor.
</p>
</td>
-</tr>
-</tbody>
+</tr></tbody>
</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___"></a><a name="group__distance__predicates_1ga20621ca608b1420c38182346b965f347"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___" title="bounded(PointRelation const &, MinRelation const &, MaxRelation const &)">bounded(PointRelation
- const &, MinRelation const &, MaxRelation const &)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_"></a><a name="group__predicates_1gae80a2c204673a8b11c4fc137cfff6556"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_" title="nearest(PointOrRelation const &, unsigned)">nearest(PointOrRelation
+ const &, unsigned)</a>
</h5></div></div></div>
<p>
- Generate <a class="link" href="reference.html#group__distance__predicates_1ga20621ca608b1420c38182346b965f347">bounded()</a>
- distance predicate.
+ Generate nearest predicate.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.description">Description</a>
</h6>
<p>
- Generate a distance predicate. This defines distances bounds which are
- used by knn query. This function indicates that Values should be returned
- only if distances between Point and Indexable are greater or equal to
- some min_distance passed in MinRelation and lesser or equal to some max_distance
- passed in MaxRelation. Check for closest Value is defined by PointRelation.
- So it is possible e.g. to return Values with centroids closest to some
- Point but only if nearest points are further than some distance and closer
- than some other distance.
+ When nearest predicate is passed to the query, k-nearest neighbour search
+ will be performed.
+ </p>
+<p>
+ The simplest way of defining the knn query is passing a <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code> to which <code class="literal"><code class="computeroutput"><span class="identifier">Values</span></code></code> must be closest.
+ </p>
+<p>
+ It is possible to define how distance between values and query Point
+ is calculated. This is done by passing PointRelation. It can be generated
+ by following functions:
</p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636">boost::geometry::index::to_nearest()</a></code>
+ - default,
+ </li>
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0">boost::geometry::index::to_centroid()</a></code>,
+ </li>
+<li class="listitem">
+ <code class="literal"><a class="link" href="reference.html#group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02">boost::geometry::index::to_furthest()</a></code>.
+ </li>
+</ul></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">PointRelation</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">MinRelation</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">MaxRelation</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">bounded</span><span class="special"><</span><span class="identifier">PointRelation</span><span class="special">,</span> <span class="identifier">MinRelation</span><span class="special">,</span> <span class="identifier">MaxRelation</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">bounded</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pr</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">MinRelation</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">minr</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">MaxRelation</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">maxr</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">PointOrRelation</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">nearest</span><span class="special"><</span><span class="identifier">PointOrRelation</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">nearest</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">PointOrRelation</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">point_relation</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">unsigned</span></code> <code class="computeroutput"><span class="identifier">k</span></code><code
class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.template_parameter_s_">Template
- parameter(s)</a>
- </h6>
-<div class="informaltable"><table class="table">
-<colgroup>
-<col>
-<col>
-</colgroup>
-<thead><tr>
-<th>
- <p>
- Parameter
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">PointRelation</span></code>
- </p>
- </td>
-<td>
- <p>
- PointRelation type.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">MinRelation</span></code>
- </p>
- </td>
-<td>
- <p>
- MinRelation type.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">MaxRelation</span></code>
- </p>
- </td>
-<td>
- <p>
- MaxRelation type.
- </p>
- </td>
-</tr>
-</tbody>
-</table></div>
-<h6>
-<a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__distance__predicates.bounded_pointrelation_const____minrelation_const____maxrelation_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -9469,76 +6031,71 @@
<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">PointRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">PointOrRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">pr</span></code>
+ <code class="computeroutput"><span class="identifier">point_relation</span></code>
</p>
</td>
<td>
<p>
- The point relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a></code>
- with <code class="literal"><code class="computeroutput"><span class="identifier">Point</span></code></code>
- passed as a parameter.
+ The point or relation describing how the distance will be calculated.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">MinRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="keyword">unsigned</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">minr</span></code>
+ <code class="computeroutput"><span class="identifier">k</span></code>
</p>
</td>
<td>
<p>
- The minimum bound relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a></code>
- with distance value passed as a parameter.
+ The maximum number of values to return.
</p>
</td>
</tr>
+</tbody>
+</table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="number">5</span><span class="special">)</span> <span class="special">&&</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
+<div class="warning"><table border="0" summary="Warning">
<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">MaxRelation</span> <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">maxr</span></code>
- </p>
- </td>
-<td>
- <p>
- The maximum bound relation. This may be generated by <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a></code>,
- <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a></code>
- or <code class="literal"><a class="link" href="reference.html#group__distance__predicates_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a></code>
- with distance value passed as a parameter.
- </p>
- </td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="http://www.boost.org/doc/libs/release/doc/src/images/warning.png"></td>
+<th align="left">Warning</th>
</tr>
-</tbody>
+<tr><td align="left" valign="top"><p>
+ Only one <code class="literal"><a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556">nearest()</a></code>
+ predicate may be used in a query.
+ </p></td></tr>
</table></div>
</div>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
-<a name="geometry_index.r_tree.reference.group__adaptors"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors" title="Adaptors (boost::geometry::index::adaptors::)">Adaptors
- (boost::geometry::index::adaptors::)</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations" title="Nearest relations (boost::geometry::index::)">Nearest
+ relations (boost::geometry::index::)</a>
</h4></div></div></div>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.functions">Functions</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.functions">Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -9561,53 +6118,42 @@
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__adaptors_1ga8e094e1f312fc00336a3536f51a69468"><code class="computeroutput"><span class="identifier">nearest_queried</span><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">size_t</span><span class="special">,</span> <span class="identifier">Predicates</span>
- <span class="keyword">const</span> <span class="special">&)</span></code></a>
- </p>
- </td>
-<td>
- <p>
- The nearest query index adaptor generator.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <a class="link" href="reference.html#group__adaptors_1ga3478395ded5855dc0b6c2f36a89de9f6"><code class="computeroutput"><span class="identifier">nearest_queried</span><span class="special">(</span><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span>
- <span class="special">&,</span> <span class="identifier">size_t</span><span class="special">)</span></code></a>
+ <a class="link" href="reference.html#group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636"><code class="computeroutput"><span class="identifier">to_nearest</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span>
+ <span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- The nearest query index adaptor generator.
+ Generate <a class="link" href="reference.html#group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a>
+ relationship.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__adaptors_1ga4716cd5423bfed3ff3e69e9ec274ac81"><code class="computeroutput"><span class="identifier">queried</span><span class="special">(</span><span class="identifier">Predicates</span> <span class="keyword">const</span>
+ <a class="link" href="reference.html#group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0"><code class="computeroutput"><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- The query index adaptor generator.
+ Generate <a class="link" href="reference.html#group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a>
+ relationship.
</p>
</td>
</tr>
<tr>
<td>
<p>
- <a class="link" href="reference.html#group__adaptors_1ga3068771f0f9cca706269ec35a809db2a"><code class="computeroutput"><span class="identifier">spatial_queried</span><span class="special">(</span><span class="identifier">Predicates</span> <span class="keyword">const</span>
+ <a class="link" href="reference.html#group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02"><code class="computeroutput"><span class="identifier">to_furthest</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span>
<span class="special">&)</span></code></a>
</p>
</td>
<td>
<p>
- The spatial query index adaptor generator.
+ Generate <a class="link" href="reference.html#group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a>
+ relationship.
</p>
</td>
</tr>
@@ -9615,40 +6161,47 @@
</table></div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___"></a><a name="group__adaptors_1ga8e094e1f312fc00336a3536f51a69468"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___" title="nearest_queried(DistancesPredicates const &, size_t, Predicates const &)">nearest_queried(DistancesPredicates
- const &, size_t, Predicates const &)</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___"></a><a name="group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___" title="to_nearest(T const &)">to_nearest(T
+ const &)</a>
</h5></div></div></div>
<p>
- The nearest query index adaptor generator.
+ Generate <a class="link" href="reference.html#group__nearest__relations_1gace3c7dbc60840c2a61da36e975d56636">to_nearest()</a>
+ relationship.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.description">Description</a>
+ </h6>
+<p>
+ Generate a nearest query Point and Value's Indexable relationship while
+ calculating distances. This function may be used to define that knn query
+ should calculate distances as smallest as possible between query Point
+ and Indexable's points. In other words it should be the distance to the
+ nearest Indexable's point. This function may be also used to define distances
+ bounds which indicates that Indexable's nearest point should be closer
+ or further than value v. This is default relation.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">nearest_query</span><span class="special"><</span><span class="identifier">DistancesPredicates</span><span class="special">,</span> <span class="identifier">Predicates</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">nearest_queried</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span>
</code>
- <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">k</span></code><code class="computeroutput"><span class="special">,</span></code>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">T</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">to_nearest</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_nearest</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t__predicates_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.template_parameter_s_">Template
+ parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
-<col>
</colgroup>
<thead><tr>
<th>
<p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
+ Parameter
</p>
</th>
<th>
@@ -9657,96 +6210,108 @@
</p>
</th>
</tr></thead>
-<tbody>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
- </p>
- </td>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
+ <code class="computeroutput"><span class="identifier">T</span></code>
</p>
</td>
<td>
<p>
- Distance predicates.
+ Type of wrapped object. This may be a Point for PointRelation
+ or CoordinateType for MinRelation or MaxRelation
</p>
</td>
-</tr>
-<tr>
-<td>
+</tr></tbody>
+</table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_nearest_t_const___.parameter_s_">Parameter(s)</a>
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
<p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
+ Type
</p>
- </td>
-<td>
+ </th>
+<th>
<p>
- <code class="computeroutput"><span class="identifier">k</span></code>
+ Name
</p>
- </td>
-<td>
+ </th>
+<th>
<p>
- The number of values to find.
+ Description
</p>
- </td>
-</tr>
-<tr>
+ </th>
+</tr></thead>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
+ <code class="computeroutput"><span class="identifier">v</span></code>
</p>
</td>
<td>
<p>
- Spatial predicates.
+ Point or distance value.
</p>
</td>
-</tr>
-</tbody>
+</tr></tbody>
</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_"></a><a name="group__adaptors_1ga3478395ded5855dc0b6c2f36a89de9f6"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_" title="nearest_queried(DistancesPredicates const &, size_t)">nearest_queried(DistancesPredicates
- const &, size_t)</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___"></a><a name="group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___" title="to_centroid(T const &)">to_centroid(T
+ const &)</a>
</h5></div></div></div>
<p>
- The nearest query index adaptor generator.
+ Generate <a class="link" href="reference.html#group__nearest__relations_1gaccbba95d864d8dcf8a694796c840fbe0">to_centroid()</a>
+ relationship.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.description">Description</a>
+ </h6>
+<p>
+ Generate a nearest query Point and Value's Indexable relationship while
+ calculating distances. This function may be used to define that knn query
+ should calculate distances between query Point and Indexable's centroid.
+ This function may be also used to define distances bounds which indicates
+ that Indexable's centroid should be closer or further than value v.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.synopsis">Synopsis</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">DistancesPredicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">nearest_query</span><span class="special"><</span><span class="identifier">DistancesPredicates</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">detail</span><span class="special">::</span><span class="identifier">empty</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">nearest_queried</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">DistancesPredicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
<code class="computeroutput"><span class="identifier">dpred</span></code><code class="computeroutput"><span class="special">,</span></code> <code class="computeroutput"><span class="identifier">size_t</span></code> <code class="computeroutput"><span class="identifier">k</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">T</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_centroid</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.nearest_queried_distancespredicates_const____size_t_.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.template_parameter_s_">Template
+ parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
-<col>
</colgroup>
<thead><tr>
<th>
<p>
- Type
- </p>
- </th>
-<th>
- <p>
- Name
+ Parameter
</p>
</th>
<th>
@@ -9755,63 +6320,135 @@
</p>
</th>
</tr></thead>
-<tbody>
-<tr>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">DistancesPredicates</span>
- <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">T</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">dpred</span></code>
+ Type of wrapped object. This may be a Point for PointRelation
+ or some CoordinateType for MinRelation or MaxRelation
</p>
</td>
-<td>
+</tr></tbody>
+</table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_centroid_t_const___.parameter_s_">Parameter(s)</a>
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
<p>
- Distance predicates.
+ Type
</p>
- </td>
-</tr>
-<tr>
+ </th>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">size_t</span></code>
+ <code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">k</span></code>
+ <code class="computeroutput"><span class="identifier">v</span></code>
</p>
</td>
<td>
<p>
- The number of values to find.
+ Point or distance value.
</p>
</td>
-</tr>
-</tbody>
+</tr></tbody>
</table></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___"></a><a name="group__adaptors_1ga4716cd5423bfed3ff3e69e9ec274ac81"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___" title="queried(Predicates const &)">queried(Predicates
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___"></a><a name="group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___" title="to_furthest(T const &)">to_furthest(T
const &)</a>
</h5></div></div></div>
<p>
- The query index adaptor generator.
+ Generate <a class="link" href="reference.html#group__nearest__relations_1ga67dddd8a7fcaae150970e1db0401de02">to_furthest()</a>
+ relationship.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.description">Description</a>
</h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">query</span><span class="special"><</span><span class="identifier">Predicates</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">queried</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">)</span></code>
+<p>
+ Generate a nearest query Point and Value's Indexable relationship while
+ calculating distances. This function may be used to define that knn query
+ should calculate distances as biggest as possible between query Point
+ and Indexable's points. In other words it should be the distance to the
+ furthest Indexable's point. This function may be also used to define
+ distances bounds which indicates that Indexable's furthest point should
+ be closer or further than value v.
+ </p>
+<h6>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.synopsis">Synopsis</a>
+ </h6>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">T</span></code><code class="computeroutput"><span class="special">></span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">to_furthest</span><span class="special"><</span><span class="identifier">T</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">to_furthest</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">v</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.template_parameter_s_">Template
+ parameter(s)</a>
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">T</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Type of wrapped object. This may be a Point for PointRelation
+ or some CoordinateType for MinRelation or MaxRelation
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.h3"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__nearest__relations.to_furthest_t_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -9839,40 +6476,82 @@
<tbody><tr>
<td>
<p>
- <code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code>
+ <code class="computeroutput"><span class="identifier">T</span> <span class="keyword">const</span>
+ <span class="special">&</span></code>
</p>
</td>
<td>
<p>
- <code class="computeroutput"><span class="identifier">pred</span></code>
+ <code class="computeroutput"><span class="identifier">v</span></code>
</p>
</td>
<td>
<p>
- Predicates.
+ Point or distance value.
</p>
</td>
</tr></tbody>
</table></div>
</div>
+</div>
+<div class="section">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="geometry_index.r_tree.reference.group__adaptors"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors" title="Adaptors (boost::geometry::index::adaptors::)">Adaptors
+ (boost::geometry::index::adaptors::)</a>
+</h4></div></div></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__adaptors.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__adaptors.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.functions">Functions</a>
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Function
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <a class="link" href="reference.html#group__adaptors_1ga4716cd5423bfed3ff3e69e9ec274ac81"><code class="computeroutput"><span class="identifier">queried</span><span class="special">(</span><span class="identifier">Predicates</span> <span class="keyword">const</span>
+ <span class="special">&)</span></code></a>
+ </p>
+ </td>
+<td>
+ <p>
+ The query index adaptor generator.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___"></a><a name="group__adaptors_1ga3068771f0f9cca706269ec35a809db2a"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___" title="spatial_queried(Predicates const &)">spatial_queried(Predicates
+<a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___"></a><a name="group__adaptors_1ga4716cd5423bfed3ff3e69e9ec274ac81"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___" title="queried(Predicates const &)">queried(Predicates
const &)</a>
</h5></div></div></div>
<p>
- The spatial query index adaptor generator.
+ The query index adaptor generator.
</p>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.h0"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Predicates</span></code><code class="computeroutput"><span class="special">></span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">spatial_query</span><span class="special"><</span><span class="identifier">Predicates</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">spatial_queried</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">)</span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">query</span><span class="special"><</span><span class="identifier">Predicates</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">adaptors</span><span class="special">::</span><span class="identifier">queried</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Predicates</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
-<a name="geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.spatial_queried_predicates_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.h1"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__adaptors.queried_predicates_const___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -9910,7 +6589,7 @@
</td>
<td>
<p>
- Spatial predicates.
+ Predicates.
</p>
</td>
</tr></tbody>
@@ -9927,12 +6606,12 @@
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def"></a><a name="structboost_1_1geometry_1_1index_1_1translator_1_1def"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def" title="boost::geometry::index::translator::def">boost::geometry::index::translator::def</a>
</h5></div></div></div>
<p>
- <a class="indexterm" name="idp13073352"></a><a class="indexterm" name="idp13073680"></a><a class="indexterm" name="idp13074024"></a><a class="indexterm" name="idp13074368"></a><a class="indexterm" name="idp13074712"></a>
+ <a class="indexterm" name="id914419"></a><a class="indexterm" name="id914424"></a><a class="indexterm" name="id914429"></a><a class="indexterm" name="id914433"></a><a class="indexterm" name="id914438"></a>
The default translator.
</p>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.h0"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.description">Description</a>
</h6>
<p>
It translates Value object to Indexable object. The default version handles
@@ -9941,14 +6620,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.h1"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.header">Header</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.header">Header</a>
</h6>
<p>
<code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">translator</span><span class="special">/</span><span class="identifier">def</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
</p>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.h2"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Value</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="computeroutput"><span class="keyword">struct</span> <span class="identifier">def</span></code>
@@ -9958,7 +6637,7 @@
</pre>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.h3"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.template_parameter_s_">Template
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_def.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -9997,12 +6676,12 @@
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index"></a><a name="classboost_1_1geometry_1_1index_1_1translator_1_1index"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index" title="boost::geometry::index::translator::index">boost::geometry::index::translator::index</a>
</h5></div></div></div>
<p>
- <a class="indexterm" name="idp13098088"></a><a class="indexterm" name="idp13098416"></a><a class="indexterm" name="idp13098760"></a><a class="indexterm" name="idp13099104"></a><a class="indexterm" name="idp13099448"></a>
+ <a class="indexterm" name="id914702"></a><a class="indexterm" name="id914707"></a><a class="indexterm" name="id914712"></a><a class="indexterm" name="id914717"></a><a class="indexterm" name="id914721"></a>
The index translator.
</p>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.h0"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.description">Description</a>
</h6>
<p>
This translator translates from index of an element in an external Container
@@ -10014,14 +6693,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.h1"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.header">Header</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.header"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.header">Header</a>
</h6>
<p>
<code class="computeroutput"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">geometry</span><span class="special">/</span><span class="identifier">index</span><span class="special">/</span><span class="identifier">translator</span><span class="special">/</span><span class="identifier">index</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span></code>
</p>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.h2"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Container</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="computeroutput"><span class="keyword">class</span> <span class="identifier">index</span></code>
@@ -10031,7 +6710,7 @@
</pre>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.h3"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.template_parameter_s_">Template
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.template_parameter_s_">Template
parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
@@ -10066,7 +6745,7 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.h4"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.constructor_s__and_destructor">Constructor(s)
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.constructor_s__and_destructor"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.constructor_s__and_destructor">Constructor(s)
and destructor</a>
</h6>
<div class="informaltable"><table class="table">
@@ -10109,11 +6788,18 @@
The constructor.
</p>
<h7><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.synopsis">Synopsis</a>
</h7><pre class="programlisting"><code class="computeroutput"><span class="identifier">index</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Container</span> <span class="keyword">const</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">c</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h7><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.modifier_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.modifier_s_">Modifier(s)</a>
+ </h7><p>
+</p>
+<pre class="programlisting"><span class="keyword">explicit</span></pre>
+<p>
+ </p>
+<h7><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.h2"></a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.translators.boost_geometry_index_translator_index.index_container_const___.parameter_s_">Parameter(s)</a>
</h7><div class="informaltable"><table class="table">
<colgroup>
<col>
@@ -10165,7 +6851,7 @@
</h4></div></div></div>
<h6>
<a name="geometry_index.r_tree.reference.group__inserters.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__inserters.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.functions">Functions</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__inserters.functions"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.functions">Functions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -10207,7 +6893,7 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.description">Description</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.description">Description</a>
</h6>
<p>
Returns insert iterator capable to insert values to the container (spatial
@@ -10215,14 +6901,14 @@
</p>
<h6>
<a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.synopsis">Synopsis</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special"><</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Container</span></code><code class="computeroutput"><span class="special">></span></code>
<code class="computeroutput"><span class="identifier">insert_iterator</span><span class="special"><</span><span class="identifier">Container</span><span class="special">></span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">inserter</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Container</span> <span class="special">&</span></code> <code class="computeroutput"><span class="identifier">c</span></code><code class="computeroutput"><span class="special">)</span></code>
</pre>
<h6>
<a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.parameter_s_">Parameter(s)</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.parameter_s_">Parameter(s)</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@@ -10268,7 +6954,7 @@
</table></div>
<h6>
<a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.returns">Returns</a>
+ <span class="phrase"><a name="geometry_index.r_tree.reference.group__inserters.inserter_container___.returns"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__inserters.inserter_container___.returns">Returns</a>
</h6>
<p>
The insert iterator inserting values to the container.
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/rtree_quickstart.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/rtree_quickstart.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Quick Start</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="../../index.html" title="Chapter 1. Geometry Index">
<link rel="up" href="../r_tree.html" title="R-tree">
<link rel="prev" href="introduction.html" title="Introduction">
@@ -150,7 +150,7 @@
</p>
<h4>
<a name="geometry_index.r_tree.rtree_quickstart.h0"></a>
- <span><a name="geometry_index.r_tree.rtree_quickstart.more"></a></span><a class="link" href="rtree_quickstart.html#geometry_index.r_tree.rtree_quickstart.more">More</a>
+ <span class="phrase"><a name="geometry_index.r_tree.rtree_quickstart.more"></a></span><a class="link" href="rtree_quickstart.html#geometry_index.r_tree.rtree_quickstart.more">More</a>
</h4>
<p>
More information about the R-tree implementation, other algorithms and queries
==============================================================================
--- sandbox-branches/geometry/index/doc/html/index.html (original)
+++ sandbox-branches/geometry/index/doc/html/index.html 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Chapter 1. Geometry Index</title>
<link rel="stylesheet" href="http://www.boost.org/doc/libs/release/doc/src/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="index.html" title="Chapter 1. Geometry Index">
<link rel="next" href="geometry_index/introduction.html" title="Introduction">
</head>
@@ -50,7 +50,7 @@
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: February 06, 2013 at 16:48:24 GMT</small></p></td>
+<td align="left"><p><small>Last revised: February 11, 2013 at 19:05:08 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>
==============================================================================
--- sandbox-branches/geometry/index/doc/make_qbk.py (original)
+++ sandbox-branches/geometry/index/doc/make_qbk.py 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -28,7 +28,7 @@
os.system(cmd % ("classboost_1_1geometry_1_1index_1_1runtime_1_1rstar", "rtree_runtime_rstar"))
os.system(cmd % ("group__predicates", "predicates"))
-os.system(cmd % ("group__distance__predicates", "distance_predicates"))
+os.system(cmd % ("group__nearest__relations", "nearest_relations"))
os.system(cmd % ("group__adaptors", "adaptors"))
os.system(cmd % ("structboost_1_1geometry_1_1index_1_1translator_1_1def", "translator_def"))
os.system(cmd % ("classboost_1_1geometry_1_1index_1_1translator_1_1index", "translator_index"))
==============================================================================
--- sandbox-branches/geometry/index/doc/rtree.qbk (original)
+++ sandbox-branches/geometry/index/doc/rtree.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -32,7 +32,7 @@
[endsect]
[include generated/predicates.qbk]
-[include generated/distance_predicates.qbk]
+[include generated/nearest_relations.qbk]
[include generated/adaptors.qbk]
[section:translators Translators (boost::geometry::index::translators::)]
==============================================================================
--- sandbox-branches/geometry/index/doc/rtree/query.qbk (original)
+++ sandbox-branches/geometry/index/doc/rtree/query.qbk 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -86,15 +86,11 @@
[section Nearest neighbours queries]
Nearest neighbours queries returns `__value__`s which are closest to some point in space.
-Additionally it is possible to pass define how the distance to the `Value` should be calculated
-or distance predicates defining minimal and maximal distances. The examples of some knn
-queries may be found in the table below. All queries returns 5 closest `Values`.
-The query point, region and result Values are orange.
-
-[table
-[[Basic knn query] [knn query - distance to Indexable's furthest point greather than ...] [knn query - distance to Indexable's closest point greather than ...]]
-[[[$../images/knn.png]] [[$../images/knn_inters.png]] [[$../images/knn_cover.png]]]
-]
+Additionally it is possible to pass define how the distance to the `Value` should be calculated.
+The examples of some knn queries may be found in the table below. All queries returns 5 closest `Values`.
+The query point and Values are orange.
+
+[$../images/knn.png]
[section k nearest neighbours]
@@ -122,71 +118,17 @@
[endsect]
-[section One nearest neighbour]
-
-Another type of nearest neighbour query is searching for the one closest `__value__`.
-If it is found, 1 is returned by the method or function. This kind of query
-has only two forms.
-
-Method call
+[section Distance calculation]
- __value__ returned_value;
- __point__ pt(...);
- size_t n = rt.query(index::nearest(pt), returned_value);
-
-Function call
+It is possible to define how distance to the non-point `__value__` should be calculated. To do this one may pass
+a relation object generated as follows:
- __value__ Value returned_value;
- __point__ pt(...);
- size_t n = index::query(rt, index::nearest(pt), returned_value);
-
-[endsect]
-
-[section Distances predicates]
-
-It is possible to define if calculated distance between query point and `__value__` should be
-greater, lesser or between some other distances. Those are called `DistancesPredicate`s and
-may be defined as follows.
-
- std::vector<__Value__> returned_values;
- __point__ pt(...);
-
- /* default - without bounds */
- index::query(rt, index::nearest(pt, k), std::back_inserter(returned_values));
-
- /* same as default */
- index::query(rt, index::nearest(index::unbounded(pt), k), std::back_inserter(returned_values));
-
- /* distance must be greater than or equal to 10 */
- index::query(rt, index::nearest(index::min_bounded(pt, 10), k), std::back_inserter(returned_values));
-
- /* distance must be lesser than or equal to 500 */
- index::query(rt, index::nearest(index::max_bounded(pt, 500), k), std::back_inserter(returned_values));
-
- /* distance must be between 10 and 500 */
- index::query(rt, index::nearest(index::bounded(pt, 10, 500), k), std::back_inserter(returned_values));
-
-Furthermore, it's possible to define if the closest, furthest or centroidal point of the
-non-point `__indexable__` should be taken into account in the routine calculating distance.
-
- std::vector<__value__> returned_values;
- __point__ pt(...);
-
- /* default - distance between Indexable's closest point and a query point
- must be greater than 10 */
- index::query(rt, index::nearest(index::min_bounded(pt, 10), k), std::back_inserter(returned_values));
-
- /* same as default - distance between Indexable's closest point and a query point
- must be greater than 10 */
- index::query(rt, index::nearest(index::min_bounded(pt, index::to_nearest(10)), k), std::back_inserter(returned_values));
-
- /* distance between Indexable's furthest point and a query point
- must be greater than 10 */
- index::query(rt, index::nearest(index::min_bounded(pt, index::to_furthest(10)), k), std::back_inserter(returned_values));
-
- /* distance between Indexable's centroid and a query point
- must be greater than 10 */
- index::query(rt, index::nearest(index::min_bounded(pt, index::to_centroid(10)), k), std::back_inserter(returned_values));
+ /* caluclate distance to the Indexables' nearest points */
+ tree::query(index::nearest(index::to_nearest(pt), k), std::back_inserter(returned_values)); // default
+ /* caluclate distance to the Indexables' centroid */
+ tree::query(index::nearest(index::to_centroid(pt), k), std::back_inserter(returned_values));
+ /* caluclate distance to the Indexables' furthest points */
+ tree::query(index::nearest(index::to_furthest(pt), k), std::back_inserter(returned_values));
[endsect]
@@ -212,11 +154,7 @@
[section Passing a set of predicates]
-It's possible to use some number of predicates in one query by passing:
-
-* `std::pair<Pred1, Pred2>`,
-* `boost::tuple<Pred1, Pred2, Pred3, ...>`
-* predicates connected by `operator&&` e.g. `Pred1 && Pred2 && Pred3 && ...`.
+It's possible to use some number of predicates in one query by connecting them with `operator&&` e.g. `Pred1 && Pred2 && Pred3 && ...`.
These predicates are connected by logical AND. Passing all predicates together not only makes possible
to construct advanced queries but is also faster than separate calls because the tree is traversed only once.
@@ -231,8 +169,6 @@
Of course it's possible to connect different types of predicates together.
- rt.query(index::nearest(index::bounded(pt, index::to_furthest(1), 10)) && index::intersects(b), returned_value);
-
index::query(rt, index::nearest(pt, k) && index::within(b), std::back_inserter(returned_values));
BOOST_FOREACH(Value & v, rt | index::adaptors::queried(index::nearest(pt, k) && index::covered_by(b)))
==============================================================================
--- sandbox-branches/geometry/index/test/Jamfile.v2 (original)
+++ sandbox-branches/geometry/index/test/Jamfile.v2 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -21,7 +21,7 @@
test-suite boost-geometry-index
:
- [ run static_vector.cpp ]
+ [ run varray.cpp ]
;
build-project algorithms ;
==============================================================================
--- sandbox-branches/geometry/index/test/rtree/test_rtree.hpp (original)
+++ sandbox-branches/geometry/index/test/rtree/test_rtree.hpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -552,24 +552,18 @@
BOOST_CHECK( bgi::detail::rtree::are_boxes_ok(rtree) );
std::vector<Value> output;
- size_t n = rtree.spatial_query(pred, std::back_inserter(output));
+ size_t n = rtree.query(pred, std::back_inserter(output));
BOOST_CHECK( expected_output.size() == n );
test_compare_outputs(rtree, output, expected_output);
std::vector<Value> output2;
- size_t n2 = spatial_query(rtree, pred, std::back_inserter(output2));
+ size_t n2 = query(rtree, pred, std::back_inserter(output2));
BOOST_CHECK( n == n2 );
test_exactly_the_same_outputs(rtree, output, output2);
- std::vector<Value> output3;
- size_t n3 = rtree.query(pred, std::back_inserter(output3));
-
- BOOST_CHECK( n == n3 );
- test_exactly_the_same_outputs(rtree, output, output3);
-
- test_exactly_the_same_outputs(rtree, output, rtree | bgi::adaptors::spatial_queried(pred));
+ test_exactly_the_same_outputs(rtree, output, rtree | bgi::adaptors::queried(pred));
}
// rtree specific queries tests
@@ -741,53 +735,6 @@
// rtree nearest queries
-template <typename Rtree, typename Value, typename Point>
-void test_nearest_query(Rtree const& rtree, std::vector<Value> const& input, Point const& pt)
-{
- // TODO: Nearest object may not be the same as found by the rtree if distances are equal
- // Should all objects with the same closest distance be picked?
-
- typedef typename bg::default_distance_result<Point, typename Rtree::indexable_type>::type D;
- D smallest_d = (std::numeric_limits<D>::max)();
- Value expected_output(generate_value_default<Value>::apply());
- BOOST_FOREACH(Value const& v, input)
- {
- D d = bgi::detail::comparable_distance_near(pt, rtree.translator()(v));
- if ( d < smallest_d )
- {
- smallest_d = d;
- expected_output = v;
- }
- }
- size_t n = ( (std::numeric_limits<D>::max)() == smallest_d ) ? 0 : 1;
-
- Value output(generate_value_default<Value>::apply());
- size_t n_res = rtree.nearest_query(pt, output);
-
- BOOST_CHECK(n == n_res);
- if ( n == n_res && 0 < n )
- {
- // TODO - perform explicit check here?
- // should all objects which are closest be checked and should exactly the same be found?
-
- if ( !rtree.translator().equals(output, expected_output) )
- {
- D d1 = bgi::detail::comparable_distance_near(pt, rtree.translator()(output));
- D d2 = bgi::detail::comparable_distance_near(pt, rtree.translator()(expected_output));
- BOOST_CHECK(d1 == d2);
- }
- }
-
- Value output2(generate_value_default<Value>::apply());
- size_t n_res2 = rtree.query(bgi::nearest(pt), output2);
-
- BOOST_CHECK(n == n_res2);
- if ( 0 < n_res2 )
- {
- BOOST_CHECK(rtree.translator().equals(output, output2));
- }
-}
-
template <typename Rtree, typename Point>
struct TestNearestKLess
{
@@ -849,7 +796,7 @@
// calculate output using rtree
std::vector<Value> output;
- rtree.nearest_query(pt, k, std::back_inserter(output));
+ rtree.query(bgi::nearest(pt, k), std::back_inserter(output));
// check output
bool are_sizes_ok = (expected_output.size() == output.size());
@@ -869,33 +816,30 @@
}
}
- test_exactly_the_same_outputs(rtree, output, rtree | bgi::adaptors::nearest_queried(pt, k));
+ test_exactly_the_same_outputs(rtree, output, rtree | bgi::adaptors::queried(bgi::nearest(pt, k)));
std::vector<Value> output2(k, generate_value_default<Value>::apply());
- size_t found_count = rtree.nearest_query(pt, k, output2.begin());
+ size_t found_count = rtree.query(bgi::nearest(pt, k), output2.begin());
output2.resize(found_count, generate_value_default<Value>::apply());
test_exactly_the_same_outputs(rtree, output, output2);
-
- std::vector<Value> output3(k, generate_value_default<Value>::apply());
- found_count = rtree.query(bgi::nearest(pt, k), output3.begin());
- output3.resize(found_count, generate_value_default<Value>::apply());
-
- test_exactly_the_same_outputs(rtree, output, output3);
}
// rtree nearest not found
-template <typename Rtree, typename Point, typename CoordinateType>
-void test_nearest_query_not_found(Rtree const& rtree, Point const& pt, CoordinateType max_distance_1, CoordinateType max_distance_k)
+struct AlwaysFalse
+{
+ template <typename Value>
+ bool operator()(Value const& v) const { return false; }
+};
+
+template <typename Rtree, typename Point>
+void test_nearest_query_not_found(Rtree const& rtree, Point const& pt)
{
typedef typename Rtree::value_type Value;
- Value output(generate_value_default<Value>::apply());
- size_t n_res = rtree.nearest_query(bgi::max_bounded(pt, max_distance_1), output);
- BOOST_CHECK(0 == n_res);
std::vector<Value> output_v;
- n_res = rtree.nearest_query(bgi::max_bounded(pt, max_distance_k), 5, std::back_inserter(output_v));
+ size_t n_res = rtree.query(bgi::nearest(pt, 5) && bgi::value(AlwaysFalse()), std::back_inserter(output_v));
BOOST_CHECK(output_v.size() == n_res);
BOOST_CHECK(n_res < 5);
}
@@ -908,7 +852,7 @@
size_t s = tree.size();
std::vector<Value> expected_output;
- tree.spatial_query(qbox, std::back_inserter(expected_output));
+ tree.query(qbox, std::back_inserter(expected_output));
// copy constructor
bgi::rtree<Value, Algo> t1(tree);
@@ -917,7 +861,7 @@
BOOST_CHECK(tree.size() == t1.size());
std::vector<Value> output;
- t1.spatial_query(qbox, std::back_inserter(output));
+ t1.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t1, output, expected_output);
// copying assignment operator
@@ -927,7 +871,7 @@
BOOST_CHECK(tree.size() == t1.size());
output.clear();
- t1.spatial_query(qbox, std::back_inserter(output));
+ t1.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t1, output, expected_output);
bgi::rtree<Value, Algo> t2(tree.parameters());
@@ -938,11 +882,11 @@
BOOST_CHECK(0 == t1.size());
output.clear();
- t1.spatial_query(qbox, std::back_inserter(output));
+ t1.query(qbox, std::back_inserter(output));
BOOST_CHECK(output.empty());
output.clear();
- t2.spatial_query(qbox, std::back_inserter(output));
+ t2.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t2, output, expected_output);
t2.swap(t1);
@@ -953,7 +897,7 @@
BOOST_CHECK(t1.size() == 0);
output.clear();
- t3.spatial_query(qbox, std::back_inserter(output));
+ t3.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t3, output, expected_output);
// moving assignment operator
@@ -963,7 +907,7 @@
BOOST_CHECK(t3.size() == 0);
output.clear();
- t1.spatial_query(qbox, std::back_inserter(output));
+ t1.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t1, output, expected_output);
//TODO - test SWAP
@@ -977,7 +921,7 @@
typedef bgi::rtree<Value, Algo> T;
std::vector<Value> expected_output;
- tree.spatial_query(qbox, std::back_inserter(expected_output));
+ tree.query(qbox, std::back_inserter(expected_output));
{
T t(tree.parameters());
@@ -985,7 +929,7 @@
t.insert(v);
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- t.spatial_query(qbox, std::back_inserter(output));
+ t.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
{
@@ -993,21 +937,21 @@
std::copy(input.begin(), input.end(), bgi::inserter(t));
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- t.spatial_query(qbox, std::back_inserter(output));
+ t.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
{
T t(input.begin(), input.end(), tree.parameters());
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- t.spatial_query(qbox, std::back_inserter(output));
+ t.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
{
T t(input, tree.parameters());
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- t.spatial_query(qbox, std::back_inserter(output));
+ t.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
{
@@ -1015,7 +959,7 @@
t.insert(input.begin(), input.end());
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- t.spatial_query(qbox, std::back_inserter(output));
+ t.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
{
@@ -1023,7 +967,7 @@
t.insert(input);
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- t.spatial_query(qbox, std::back_inserter(output));
+ t.query(qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
@@ -1033,7 +977,7 @@
bgi::insert(t, v);
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- bgi::spatial_query(t, qbox, std::back_inserter(output));
+ bgi::query(t, qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
{
@@ -1041,7 +985,7 @@
bgi::insert(t, input.begin(), input.end());
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- bgi::spatial_query(t, qbox, std::back_inserter(output));
+ bgi::query(t, qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
{
@@ -1049,7 +993,7 @@
bgi::insert(t, input);
BOOST_CHECK(tree.size() == t.size());
std::vector<Value> output;
- bgi::spatial_query(t, qbox, std::back_inserter(output));
+ bgi::query(t, qbox, std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
}
@@ -1062,11 +1006,11 @@
typedef bgi::rtree<Value, Algo> T;
std::vector<Value> values_to_remove;
- tree.spatial_query(qbox, std::back_inserter(values_to_remove));
+ tree.query(qbox, std::back_inserter(values_to_remove));
BOOST_CHECK(0 < values_to_remove.size());
std::vector<Value> expected_output;
- tree.spatial_query(bgi::disjoint(qbox), std::back_inserter(expected_output));
+ tree.query(bgi::disjoint(qbox), std::back_inserter(expected_output));
size_t expected_removed_count = values_to_remove.size();
size_t expected_size_after_remove = tree.size() - values_to_remove.size();
@@ -1081,7 +1025,7 @@
r += t.remove(v);
BOOST_CHECK( r == expected_removed_count );
std::vector<Value> output;
- t.spatial_query(bgi::disjoint(qbox), std::back_inserter(output));
+ t.query(bgi::disjoint(qbox), std::back_inserter(output));
BOOST_CHECK( t.size() == expected_size_after_remove );
BOOST_CHECK( output.size() == tree.size() - expected_removed_count );
test_compare_outputs(t, output, expected_output);
@@ -1091,7 +1035,7 @@
size_t r = t.remove(values_to_remove.begin(), values_to_remove.end());
BOOST_CHECK( r == expected_removed_count );
std::vector<Value> output;
- t.spatial_query(bgi::disjoint(qbox), std::back_inserter(output));
+ t.query(bgi::disjoint(qbox), std::back_inserter(output));
BOOST_CHECK( t.size() == expected_size_after_remove );
BOOST_CHECK( output.size() == tree.size() - expected_removed_count );
test_compare_outputs(t, output, expected_output);
@@ -1101,7 +1045,7 @@
size_t r = t.remove(values_to_remove);
BOOST_CHECK( r == expected_removed_count );
std::vector<Value> output;
- t.spatial_query(bgi::disjoint(qbox), std::back_inserter(output));
+ t.query(bgi::disjoint(qbox), std::back_inserter(output));
BOOST_CHECK( t.size() == expected_size_after_remove );
BOOST_CHECK( output.size() == tree.size() - expected_removed_count );
test_compare_outputs(t, output, expected_output);
@@ -1114,7 +1058,7 @@
r += bgi::remove(t, v);
BOOST_CHECK( r == expected_removed_count );
std::vector<Value> output;
- bgi::spatial_query(t, bgi::disjoint(qbox), std::back_inserter(output));
+ bgi::query(t, bgi::disjoint(qbox), std::back_inserter(output));
BOOST_CHECK( t.size() == expected_size_after_remove );
BOOST_CHECK( output.size() == tree.size() - expected_removed_count );
test_compare_outputs(t, output, expected_output);
@@ -1124,7 +1068,7 @@
size_t r = bgi::remove(t, values_to_remove.begin(), values_to_remove.end());
BOOST_CHECK( r == expected_removed_count );
std::vector<Value> output;
- bgi::spatial_query(t, bgi::disjoint(qbox), std::back_inserter(output));
+ bgi::query(t, bgi::disjoint(qbox), std::back_inserter(output));
BOOST_CHECK( t.size() == expected_size_after_remove );
BOOST_CHECK( output.size() == tree.size() - expected_removed_count );
test_compare_outputs(t, output, expected_output);
@@ -1134,7 +1078,7 @@
size_t r = bgi::remove(t, values_to_remove);
BOOST_CHECK( r == expected_removed_count );
std::vector<Value> output;
- bgi::spatial_query(t, bgi::disjoint(qbox), std::back_inserter(output));
+ bgi::query(t, bgi::disjoint(qbox), std::back_inserter(output));
BOOST_CHECK( t.size() == expected_size_after_remove );
BOOST_CHECK( output.size() == tree.size() - expected_removed_count );
test_compare_outputs(t, output, expected_output);
@@ -1147,7 +1091,7 @@
typedef bgi::rtree<Value, Algo> T;
std::vector<Value> values_to_remove;
- tree.spatial_query(qbox, std::back_inserter(values_to_remove));
+ tree.query(qbox, std::back_inserter(values_to_remove));
BOOST_CHECK(0 < values_to_remove.size());
//clear
@@ -1155,7 +1099,7 @@
T t(tree);
std::vector<Value> expected_output;
- t.spatial_query(bgi::intersects(qbox), std::back_inserter(expected_output));
+ t.query(bgi::intersects(qbox), std::back_inserter(expected_output));
size_t s = t.size();
t.clear();
BOOST_CHECK(t.empty());
@@ -1163,7 +1107,7 @@
t.insert(input);
BOOST_CHECK(t.size() == s);
std::vector<Value> output;
- t.spatial_query(bgi::intersects(qbox), std::back_inserter(output));
+ t.query(bgi::intersects(qbox), std::back_inserter(output));
test_exactly_the_same_outputs(t, output, expected_output);
}
}
@@ -1196,9 +1140,8 @@
P pt;
bg::centroid(qbox, pt);
- test_nearest_query(tree, input, pt);
test_nearest_query_k(tree, input, pt, 10);
- test_nearest_query_not_found(tree, generate_outside_point<P>::apply(), 1, 3);
+ test_nearest_query_not_found(tree, generate_outside_point<P>::apply());
test_copy_assignment_swap_move(tree, qbox);
@@ -1217,9 +1160,8 @@
test_overlaps(empty_tree, empty_input, qbox);
//test_touches(empty_tree, empty_input, qbox);
test_within(empty_tree, empty_input, qbox);
- test_nearest_query(empty_tree, empty_input, pt);
test_nearest_query_k(empty_tree, empty_input, pt, 10);
- test_nearest_query_not_found(empty_tree, generate_outside_point<P>::apply(), 1, 3);
+ test_nearest_query_not_found(empty_tree, generate_outside_point<P>::apply());
test_copy_assignment_swap_move(empty_tree, qbox);
}
@@ -1243,7 +1185,7 @@
BOOST_CHECK(t.size() + rest_count == Value::counter());
std::vector<Value> values_to_remove;
- t.spatial_query(qbox, std::back_inserter(values_to_remove));
+ t.query(qbox, std::back_inserter(values_to_remove));
rest_count += values_to_remove.size();
==============================================================================
--- sandbox-branches/geometry/index/test/static_vector.cpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
+++ (empty file)
@@ -1,490 +0,0 @@
-// Boost.Geometry Index
-// Unit Test
-
-// Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
-
-// Use, modification and distribution is subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#include <boost/test/included/test_exec_monitor.hpp>
-#include <boost/test/impl/execution_monitor.ipp>
-
-#include <boost/geometry/index/detail/static_vector.hpp>
-
-using namespace boost::geometry::index::detail;
-
-class value_ndc
-{
-public:
- explicit value_ndc(int a) : aa(a) {}
- ~value_ndc() {}
- bool operator==(value_ndc const& v) const { return aa == v.aa; }
-private:
- value_ndc(value_ndc const&) {}
- value_ndc & operator=(value_ndc const&) { return *this; }
- int aa;
-};
-
-class value_nd
-{
-public:
- explicit value_nd(int a) : aa(a) {}
- ~value_nd() {}
- bool operator==(value_nd const& v) const { return aa == v.aa; }
-private:
- int aa;
-};
-
-class value_nc
-{
-public:
- explicit value_nc(int a = 0) : aa(a) {}
- ~value_nc() {}
- bool operator==(value_nc const& v) const { return aa == v.aa; }
-private:
- value_nc(value_nc const&) {}
- value_nc & operator=(value_ndc const&) { return *this; }
- int aa;
-};
-
-class counting_value
-{
-public:
- explicit counting_value(int a = 0) : aa(a) { ++c(); }
- counting_value(counting_value const& v) : aa(v.aa) { ++c(); }
- counting_value & operator=(counting_value const& v) { aa = v.aa; return *this; }
- ~counting_value() { --c(); }
- bool operator==(counting_value const& v) const { return aa == v.aa; }
- static size_t count() { return c(); }
-private:
- static size_t & c() { static size_t co = 0; return co; }
- int aa;
-};
-
-template <typename T, size_t N>
-void test_ctor_ndc()
-{
- static_vector<T, N> s;
- BOOST_CHECK(s.size() == 0);
- BOOST_CHECK(s.capacity() == N);
- BOOST_CHECK_THROW( s.at(0), std::out_of_range );
-}
-
-template <typename T, size_t N>
-void test_ctor_nc(size_t n)
-{
- static_vector<T, N> s(n);
- BOOST_CHECK(s.size() == n);
- BOOST_CHECK(s.capacity() == N);
- BOOST_CHECK_THROW( s.at(n), std::out_of_range );
- if ( !boost::has_trivial_constructor<T>::value )
- {
- for ( size_t i = 0 ; i < n ; ++i )
- BOOST_CHECK(T() == s[i]);
- }
-}
-
-template <typename T, size_t N>
-void test_ctor_nd(size_t n, T const& v)
-{
- static_vector<T, N> s(n, v);
- BOOST_CHECK(s.size() == n);
- BOOST_CHECK(s.capacity() == N);
- BOOST_CHECK_THROW( s.at(n), std::out_of_range );
- if ( 1 < n )
- {
- BOOST_CHECK(v == s[0]);
- BOOST_CHECK(v == s.at(0));
- BOOST_CHECK(v == s[1]);
- BOOST_CHECK(v == s.at(1));
- s[0] = T(10);
- BOOST_CHECK(T(10) == s[0]);
- BOOST_CHECK(T(10) == s.at(0));
- s.at(1) = T(20);
- BOOST_CHECK(T(20) == s[1]);
- BOOST_CHECK(T(20) == s.at(1));
- }
-}
-
-template <typename T, size_t N>
-void test_resize_nc(size_t n)
-{
- static_vector<T, N> s;
-
- s.resize(n);
- BOOST_CHECK(s.size() == n);
- BOOST_CHECK(s.capacity() == N);
- BOOST_CHECK_THROW( s.at(n), std::out_of_range );
-
- if ( !boost::has_trivial_constructor<T>::value )
- {
- for ( size_t i = 0 ; i < n ; ++i )
- BOOST_CHECK(T() == s[i]);
- }
-}
-
-template <typename T, size_t N>
-void test_resize_nd(size_t n, T const& v)
-{
- static_vector<T, N> s;
-
- s.resize(n, v);
- BOOST_CHECK(s.size() == n);
- BOOST_CHECK(s.capacity() == N);
- BOOST_CHECK_THROW( s.at(n), std::out_of_range );
- if ( 1 < n )
- {
- BOOST_CHECK(v == s[0]);
- BOOST_CHECK(v == s.at(0));
- BOOST_CHECK(v == s[1]);
- BOOST_CHECK(v == s.at(1));
- s[0] = T(10);
- BOOST_CHECK(T(10) == s[0]);
- BOOST_CHECK(T(10) == s.at(0));
- s.at(1) = T(20);
- BOOST_CHECK(T(20) == s[1]);
- BOOST_CHECK(T(20) == s.at(1));
- }
-}
-
-template <typename T, size_t N>
-void test_push_back_nd()
-{
- static_vector<T, N> s;
-
- BOOST_CHECK(s.size() == 0);
- BOOST_CHECK_THROW( s.at(0), std::out_of_range );
-
- for ( size_t i = 0 ; i < N ; ++i )
- {
- s.push_back(T(i));
- BOOST_CHECK(s.size() == i + 1);
- BOOST_CHECK_THROW( s.at(i + 1), std::out_of_range );
- BOOST_CHECK(T(i) == s.at(i));
- BOOST_CHECK(T(i) == s[i]);
- BOOST_CHECK(T(i) == s.back());
- BOOST_CHECK(T(0) == s.front());
- }
-}
-
-template <typename T, size_t N>
-void test_pop_back_nd()
-{
- static_vector<T, N> s;
-
- for ( size_t i = 0 ; i < N ; ++i )
- s.push_back(T(i));
-
- for ( size_t i = N ; i > 1 ; --i )
- {
- s.pop_back();
- BOOST_CHECK(s.size() == i - 1);
- BOOST_CHECK_THROW( s.at(i - 1), std::out_of_range );
- BOOST_CHECK(T(i - 2) == s.at(i - 2));
- BOOST_CHECK(T(i - 2) == s[i - 2]);
- BOOST_CHECK(T(i - 2) == s.back());
- BOOST_CHECK(T(0) == s.front());
- }
-}
-
-template <typename It1, typename It2>
-void test_compare_ranges(It1 first1, It1 last1, It2 first2, It2 last2)
-{
- BOOST_CHECK(std::distance(first1, last1) == std::distance(first2, last2));
- for ( ; first1 != last1 && first2 != last2 ; ++first1, ++first2 )
- BOOST_CHECK(*first1 == *first2);
-}
-
-template <typename T, size_t N>
-void test_copy_and_assign_nd(T const& val)
-{
- static_vector<T, N> s;
- std::vector<T> v;
- std::list<T> l;
-
- for ( size_t i = 0 ; i < N ; ++i )
- {
- s.push_back(T(i));
- v.push_back(T(i));
- l.push_back(T(i));
- }
- // copy ctor
- {
- static_vector<T, N> s1(s);
- BOOST_CHECK(s.size() == s1.size());
- test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
- }
- // copy assignment
- {
- static_vector<T, N> s1;
- BOOST_CHECK(0 == s1.size());
- s1 = s;
- BOOST_CHECK(s.size() == s1.size());
- test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
- }
- // ctor(Iter, Iter)
- {
- static_vector<T, N> s1(s.begin(), s.end());
- BOOST_CHECK(s.size() == s1.size());
- test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
- }
- {
- static_vector<T, N> s1(v.begin(), v.end());
- BOOST_CHECK(v.size() == s1.size());
- test_compare_ranges(v.begin(), v.end(), s1.begin(), s1.end());
- }
- {
- static_vector<T, N> s1(l.begin(), l.end());
- BOOST_CHECK(l.size() == s1.size());
- test_compare_ranges(l.begin(), l.end(), s1.begin(), s1.end());
- }
- // assign(Iter, Iter)
- {
- static_vector<T, N> s1;
- BOOST_CHECK(0 == s1.size());
- s1.assign(s.begin(), s.end());
- BOOST_CHECK(s.size() == s1.size());
- test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
- }
- {
- static_vector<T, N> s1;
- BOOST_CHECK(0 == s1.size());
- s1.assign(v.begin(), v.end());
- BOOST_CHECK(v.size() == s1.size());
- test_compare_ranges(v.begin(), v.end(), s1.begin(), s1.end());
- }
- {
- static_vector<T, N> s1;
- BOOST_CHECK(0 == s1.size());
- s1.assign(l.begin(), l.end());
- BOOST_CHECK(l.size() == s1.size());
- test_compare_ranges(l.begin(), l.end(), s1.begin(), s1.end());
- }
- // assign(N, V)
- {
- static_vector<T, N> s1(s);
- test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
- std::vector<T> a(N, val);
- s1.assign(N, val);
- test_compare_ranges(a.begin(), a.end(), s1.begin(), s1.end());
- }
-}
-
-template <typename T, size_t N>
-void test_iterators_nd()
-{
- static_vector<T, N> s;
- std::vector<T> v;
-
- for ( size_t i = 0 ; i < N ; ++i )
- {
- s.push_back(T(i));
- v.push_back(T(i));
- }
-
- test_compare_ranges(s.begin(), s.end(), v.begin(), v.end());
- test_compare_ranges(s.rbegin(), s.rend(), v.rbegin(), v.rend());
-
- s.assign(v.rbegin(), v.rend());
-
- test_compare_ranges(s.begin(), s.end(), v.rbegin(), v.rend());
- test_compare_ranges(s.rbegin(), s.rend(), v.begin(), v.end());
-}
-
-template <typename T, size_t N>
-void test_erase_nd()
-{
- static_vector<T, N> s;
-
- for ( size_t i = 0 ; i < N ; ++i )
- s.push_back(T(i));
-
- // erase(pos)
- {
- for ( size_t i = 0 ; i < N ; ++i )
- {
- static_vector<T, N> s1(s);
- s1.erase(s1.begin() + i);
- BOOST_CHECK(s1.size() == N - 1);
- for ( size_t j = 0 ; j < i ; ++j )
- BOOST_CHECK(s1[j] == T(j));
- for ( size_t j = i+1 ; j < N ; ++j )
- BOOST_CHECK(s1[j-1] == T(j));
- }
- }
- // erase(first, last)
- {
- size_t n = N/3;
- for ( size_t i = 0 ; i <= N ; ++i )
- {
- static_vector<T, N> s1(s);
- size_t removed = i + n < N ? n : N - i;
- s1.erase(s1.begin() + i, s1.begin() + i + removed);
- BOOST_CHECK(s1.size() == N - removed);
- for ( size_t j = 0 ; j < i ; ++j )
- BOOST_CHECK(s1[j] == T(j));
- for ( size_t j = i+n ; j < N ; ++j )
- BOOST_CHECK(s1[j-n] == T(j));
- }
- }
-}
-
-template <typename T, size_t N>
-void test_insert_nd(T const& val)
-{
- size_t h = N/2;
-
- static_vector<T, N> s, ss;
- std::vector<T> v;
- std::list<T> l;
-
- for ( size_t i = 0 ; i < h ; ++i )
- {
- s.push_back(T(i));
- ss.push_back(T(100 + i));
- v.push_back(T(100 + i));
- l.push_back(T(100 + i));
- }
-
- // insert(pos, val)
- {
- for ( size_t i = 0 ; i <= h ; ++i )
- {
- static_vector<T, N> s1(s);
- s1.insert(s1.begin() + i, val);
- BOOST_CHECK(s1.size() == h+1);
- for ( size_t j = 0 ; j < i ; ++j )
- BOOST_CHECK(s1[j] == T(j));
- BOOST_CHECK(s1[i] == val);
- for ( size_t j = 0 ; j < h-i ; ++j )
- BOOST_CHECK(s1[j+i+1] == T(j+i));
- }
- }
- // insert(pos, n, val)
- {
- size_t n = size_t(h/1.5f);
- for ( size_t i = 0 ; i <= h ; ++i )
- {
- static_vector<T, N> s1(s);
- s1.insert(s1.begin() + i, n, val);
- BOOST_CHECK(s1.size() == h+n);
- for ( size_t j = 0 ; j < i ; ++j )
- BOOST_CHECK(s1[j] == T(j));
- for ( size_t j = 0 ; j < n ; ++j )
- BOOST_CHECK(s1[j+i] == val);
- for ( size_t j = 0 ; j < h-i ; ++j )
- BOOST_CHECK(s1[j+i+n] == T(j+i));
- }
- }
- // insert(pos, first, last)
- {
- size_t n = size_t(h/1.5f);
- for ( size_t i = 0 ; i <= h ; ++i )
- {
- static_vector<T, N> s1(s);
- s1.insert(s1.begin() + i, ss.begin(), ss.begin() + n);
- BOOST_CHECK(s1.size() == h+n);
- for ( size_t j = 0 ; j < i ; ++j )
- BOOST_CHECK(s1[j] == T(j));
- for ( size_t j = 0 ; j < n ; ++j )
- BOOST_CHECK(s1[j+i] == T(100 + j));
- for ( size_t j = 0 ; j < h-i ; ++j )
- BOOST_CHECK(s1[j+i+n] == T(j+i));
- }
- }
- {
- size_t n = size_t(h/1.5f);
- for ( size_t i = 0 ; i <= h ; ++i )
- {
- static_vector<T, N> s1(s);
- s1.insert(s1.begin() + i, v.begin(), v.begin() + n);
- BOOST_CHECK(s1.size() == h+n);
- for ( size_t j = 0 ; j < i ; ++j )
- BOOST_CHECK(s1[j] == T(j));
- for ( size_t j = 0 ; j < n ; ++j )
- BOOST_CHECK(s1[j+i] == T(100 + j));
- for ( size_t j = 0 ; j < h-i ; ++j )
- BOOST_CHECK(s1[j+i+n] == T(j+i));
- }
- }
- {
- size_t n = size_t(h/1.5f);
- for ( size_t i = 0 ; i <= h ; ++i )
- {
- static_vector<T, N> s1(s);
- typename std::list<T>::iterator it = l.begin();
- std::advance(it, n);
- s1.insert(s1.begin() + i, l.begin(), it);
- BOOST_CHECK(s1.size() == h+n);
- for ( size_t j = 0 ; j < i ; ++j )
- BOOST_CHECK(s1[j] == T(j));
- for ( size_t j = 0 ; j < n ; ++j )
- BOOST_CHECK(s1[j+i] == T(100 + j));
- for ( size_t j = 0 ; j < h-i ; ++j )
- BOOST_CHECK(s1[j+i+n] == T(j+i));
- }
- }
-}
-
-int test_main(int, char* [])
-{
- BOOST_CHECK(counting_value::count() == 0);
-
- test_ctor_ndc<int, 10>();
- test_ctor_ndc<value_ndc, 10>();
- test_ctor_ndc<counting_value, 10>();
- BOOST_CHECK(counting_value::count() == 0);
-
- test_ctor_nc<int, 10>(5);
- test_ctor_nc<value_nc, 10>(5);
- test_ctor_nc<counting_value, 10>(5);
- BOOST_CHECK(counting_value::count() == 0);
-
- test_ctor_nd<int, 10>(5, 1);
- test_ctor_nd<value_nd, 10>(5, value_nd(1));
- test_ctor_nd<counting_value, 10>(5, counting_value(1));
- BOOST_CHECK(counting_value::count() == 0);
-
- test_resize_nc<int, 10>(5);
- test_resize_nc<value_nc, 10>(5);
- test_resize_nc<counting_value, 10>(5);
- BOOST_CHECK(counting_value::count() == 0);
-
- test_resize_nd<int, 10>(5, 1);
- test_resize_nd<value_nd, 10>(5, value_nd(1));
- test_resize_nd<counting_value, 10>(5, counting_value(1));
- BOOST_CHECK(counting_value::count() == 0);
-
- test_push_back_nd<int, 10>();
- test_push_back_nd<value_nd, 10>();
- test_push_back_nd<counting_value, 10>();
- BOOST_CHECK(counting_value::count() == 0);
-
- test_pop_back_nd<int, 10>();
- test_pop_back_nd<value_nd, 10>();
- test_pop_back_nd<counting_value, 10>();
- BOOST_CHECK(counting_value::count() == 0);
-
- test_copy_and_assign_nd<int, 10>(1);
- test_copy_and_assign_nd<value_nd, 10>(value_nd(1));
- test_copy_and_assign_nd<counting_value, 10>(counting_value(1));
- BOOST_CHECK(counting_value::count() == 0);
-
- test_iterators_nd<int, 10>();
- test_iterators_nd<value_nd, 10>();
- test_iterators_nd<counting_value, 10>();
- BOOST_CHECK(counting_value::count() == 0);
-
- test_erase_nd<int, 10>();
- test_erase_nd<value_nd, 10>();
- test_erase_nd<counting_value, 10>();
- BOOST_CHECK(counting_value::count() == 0);
-
- test_insert_nd<int, 10>(50);
- test_insert_nd<value_nd, 10>(value_nd(50));
- test_insert_nd<counting_value, 10>(counting_value(50));
- BOOST_CHECK(counting_value::count() == 0);
-
- return 0;
-}
==============================================================================
--- (empty file)
+++ sandbox-branches/geometry/index/test/varray.cpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -0,0 +1,490 @@
+// Boost.Geometry Index
+// Unit Test
+
+// Copyright (c) 2011-2013 Adam Wulkiewicz, Lodz, Poland.
+
+// Use, modification and distribution is subject to the Boost Software License,
+// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#include <boost/test/included/test_exec_monitor.hpp>
+#include <boost/test/impl/execution_monitor.ipp>
+
+#include <boost/geometry/index/detail/varray.hpp>
+
+using namespace boost::geometry::index::detail;
+
+class value_ndc
+{
+public:
+ explicit value_ndc(int a) : aa(a) {}
+ ~value_ndc() {}
+ bool operator==(value_ndc const& v) const { return aa == v.aa; }
+private:
+ value_ndc(value_ndc const&) {}
+ value_ndc & operator=(value_ndc const&) { return *this; }
+ int aa;
+};
+
+class value_nd
+{
+public:
+ explicit value_nd(int a) : aa(a) {}
+ ~value_nd() {}
+ bool operator==(value_nd const& v) const { return aa == v.aa; }
+private:
+ int aa;
+};
+
+class value_nc
+{
+public:
+ explicit value_nc(int a = 0) : aa(a) {}
+ ~value_nc() {}
+ bool operator==(value_nc const& v) const { return aa == v.aa; }
+private:
+ value_nc(value_nc const&) {}
+ value_nc & operator=(value_ndc const&) { return *this; }
+ int aa;
+};
+
+class counting_value
+{
+public:
+ explicit counting_value(int a = 0) : aa(a) { ++c(); }
+ counting_value(counting_value const& v) : aa(v.aa) { ++c(); }
+ counting_value & operator=(counting_value const& v) { aa = v.aa; return *this; }
+ ~counting_value() { --c(); }
+ bool operator==(counting_value const& v) const { return aa == v.aa; }
+ static size_t count() { return c(); }
+private:
+ static size_t & c() { static size_t co = 0; return co; }
+ int aa;
+};
+
+template <typename T, size_t N>
+void test_ctor_ndc()
+{
+ varray<T, N> s;
+ BOOST_CHECK(s.size() == 0);
+ BOOST_CHECK(s.capacity() == N);
+ BOOST_CHECK_THROW( s.at(0), std::out_of_range );
+}
+
+template <typename T, size_t N>
+void test_ctor_nc(size_t n)
+{
+ varray<T, N> s(n);
+ BOOST_CHECK(s.size() == n);
+ BOOST_CHECK(s.capacity() == N);
+ BOOST_CHECK_THROW( s.at(n), std::out_of_range );
+ if ( !boost::has_trivial_constructor<T>::value )
+ {
+ for ( size_t i = 0 ; i < n ; ++i )
+ BOOST_CHECK(T() == s[i]);
+ }
+}
+
+template <typename T, size_t N>
+void test_ctor_nd(size_t n, T const& v)
+{
+ varray<T, N> s(n, v);
+ BOOST_CHECK(s.size() == n);
+ BOOST_CHECK(s.capacity() == N);
+ BOOST_CHECK_THROW( s.at(n), std::out_of_range );
+ if ( 1 < n )
+ {
+ BOOST_CHECK(v == s[0]);
+ BOOST_CHECK(v == s.at(0));
+ BOOST_CHECK(v == s[1]);
+ BOOST_CHECK(v == s.at(1));
+ s[0] = T(10);
+ BOOST_CHECK(T(10) == s[0]);
+ BOOST_CHECK(T(10) == s.at(0));
+ s.at(1) = T(20);
+ BOOST_CHECK(T(20) == s[1]);
+ BOOST_CHECK(T(20) == s.at(1));
+ }
+}
+
+template <typename T, size_t N>
+void test_resize_nc(size_t n)
+{
+ varray<T, N> s;
+
+ s.resize(n);
+ BOOST_CHECK(s.size() == n);
+ BOOST_CHECK(s.capacity() == N);
+ BOOST_CHECK_THROW( s.at(n), std::out_of_range );
+
+ if ( !boost::has_trivial_constructor<T>::value )
+ {
+ for ( size_t i = 0 ; i < n ; ++i )
+ BOOST_CHECK(T() == s[i]);
+ }
+}
+
+template <typename T, size_t N>
+void test_resize_nd(size_t n, T const& v)
+{
+ varray<T, N> s;
+
+ s.resize(n, v);
+ BOOST_CHECK(s.size() == n);
+ BOOST_CHECK(s.capacity() == N);
+ BOOST_CHECK_THROW( s.at(n), std::out_of_range );
+ if ( 1 < n )
+ {
+ BOOST_CHECK(v == s[0]);
+ BOOST_CHECK(v == s.at(0));
+ BOOST_CHECK(v == s[1]);
+ BOOST_CHECK(v == s.at(1));
+ s[0] = T(10);
+ BOOST_CHECK(T(10) == s[0]);
+ BOOST_CHECK(T(10) == s.at(0));
+ s.at(1) = T(20);
+ BOOST_CHECK(T(20) == s[1]);
+ BOOST_CHECK(T(20) == s.at(1));
+ }
+}
+
+template <typename T, size_t N>
+void test_push_back_nd()
+{
+ varray<T, N> s;
+
+ BOOST_CHECK(s.size() == 0);
+ BOOST_CHECK_THROW( s.at(0), std::out_of_range );
+
+ for ( size_t i = 0 ; i < N ; ++i )
+ {
+ s.push_back(T(i));
+ BOOST_CHECK(s.size() == i + 1);
+ BOOST_CHECK_THROW( s.at(i + 1), std::out_of_range );
+ BOOST_CHECK(T(i) == s.at(i));
+ BOOST_CHECK(T(i) == s[i]);
+ BOOST_CHECK(T(i) == s.back());
+ BOOST_CHECK(T(0) == s.front());
+ }
+}
+
+template <typename T, size_t N>
+void test_pop_back_nd()
+{
+ varray<T, N> s;
+
+ for ( size_t i = 0 ; i < N ; ++i )
+ s.push_back(T(i));
+
+ for ( size_t i = N ; i > 1 ; --i )
+ {
+ s.pop_back();
+ BOOST_CHECK(s.size() == i - 1);
+ BOOST_CHECK_THROW( s.at(i - 1), std::out_of_range );
+ BOOST_CHECK(T(i - 2) == s.at(i - 2));
+ BOOST_CHECK(T(i - 2) == s[i - 2]);
+ BOOST_CHECK(T(i - 2) == s.back());
+ BOOST_CHECK(T(0) == s.front());
+ }
+}
+
+template <typename It1, typename It2>
+void test_compare_ranges(It1 first1, It1 last1, It2 first2, It2 last2)
+{
+ BOOST_CHECK(std::distance(first1, last1) == std::distance(first2, last2));
+ for ( ; first1 != last1 && first2 != last2 ; ++first1, ++first2 )
+ BOOST_CHECK(*first1 == *first2);
+}
+
+template <typename T, size_t N>
+void test_copy_and_assign_nd(T const& val)
+{
+ varray<T, N> s;
+ std::vector<T> v;
+ std::list<T> l;
+
+ for ( size_t i = 0 ; i < N ; ++i )
+ {
+ s.push_back(T(i));
+ v.push_back(T(i));
+ l.push_back(T(i));
+ }
+ // copy ctor
+ {
+ varray<T, N> s1(s);
+ BOOST_CHECK(s.size() == s1.size());
+ test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
+ }
+ // copy assignment
+ {
+ varray<T, N> s1;
+ BOOST_CHECK(0 == s1.size());
+ s1 = s;
+ BOOST_CHECK(s.size() == s1.size());
+ test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
+ }
+ // ctor(Iter, Iter)
+ {
+ varray<T, N> s1(s.begin(), s.end());
+ BOOST_CHECK(s.size() == s1.size());
+ test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
+ }
+ {
+ varray<T, N> s1(v.begin(), v.end());
+ BOOST_CHECK(v.size() == s1.size());
+ test_compare_ranges(v.begin(), v.end(), s1.begin(), s1.end());
+ }
+ {
+ varray<T, N> s1(l.begin(), l.end());
+ BOOST_CHECK(l.size() == s1.size());
+ test_compare_ranges(l.begin(), l.end(), s1.begin(), s1.end());
+ }
+ // assign(Iter, Iter)
+ {
+ varray<T, N> s1;
+ BOOST_CHECK(0 == s1.size());
+ s1.assign(s.begin(), s.end());
+ BOOST_CHECK(s.size() == s1.size());
+ test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
+ }
+ {
+ varray<T, N> s1;
+ BOOST_CHECK(0 == s1.size());
+ s1.assign(v.begin(), v.end());
+ BOOST_CHECK(v.size() == s1.size());
+ test_compare_ranges(v.begin(), v.end(), s1.begin(), s1.end());
+ }
+ {
+ varray<T, N> s1;
+ BOOST_CHECK(0 == s1.size());
+ s1.assign(l.begin(), l.end());
+ BOOST_CHECK(l.size() == s1.size());
+ test_compare_ranges(l.begin(), l.end(), s1.begin(), s1.end());
+ }
+ // assign(N, V)
+ {
+ varray<T, N> s1(s);
+ test_compare_ranges(s.begin(), s.end(), s1.begin(), s1.end());
+ std::vector<T> a(N, val);
+ s1.assign(N, val);
+ test_compare_ranges(a.begin(), a.end(), s1.begin(), s1.end());
+ }
+}
+
+template <typename T, size_t N>
+void test_iterators_nd()
+{
+ varray<T, N> s;
+ std::vector<T> v;
+
+ for ( size_t i = 0 ; i < N ; ++i )
+ {
+ s.push_back(T(i));
+ v.push_back(T(i));
+ }
+
+ test_compare_ranges(s.begin(), s.end(), v.begin(), v.end());
+ test_compare_ranges(s.rbegin(), s.rend(), v.rbegin(), v.rend());
+
+ s.assign(v.rbegin(), v.rend());
+
+ test_compare_ranges(s.begin(), s.end(), v.rbegin(), v.rend());
+ test_compare_ranges(s.rbegin(), s.rend(), v.begin(), v.end());
+}
+
+template <typename T, size_t N>
+void test_erase_nd()
+{
+ varray<T, N> s;
+
+ for ( size_t i = 0 ; i < N ; ++i )
+ s.push_back(T(i));
+
+ // erase(pos)
+ {
+ for ( size_t i = 0 ; i < N ; ++i )
+ {
+ varray<T, N> s1(s);
+ s1.erase(s1.begin() + i);
+ BOOST_CHECK(s1.size() == N - 1);
+ for ( size_t j = 0 ; j < i ; ++j )
+ BOOST_CHECK(s1[j] == T(j));
+ for ( size_t j = i+1 ; j < N ; ++j )
+ BOOST_CHECK(s1[j-1] == T(j));
+ }
+ }
+ // erase(first, last)
+ {
+ size_t n = N/3;
+ for ( size_t i = 0 ; i <= N ; ++i )
+ {
+ varray<T, N> s1(s);
+ size_t removed = i + n < N ? n : N - i;
+ s1.erase(s1.begin() + i, s1.begin() + i + removed);
+ BOOST_CHECK(s1.size() == N - removed);
+ for ( size_t j = 0 ; j < i ; ++j )
+ BOOST_CHECK(s1[j] == T(j));
+ for ( size_t j = i+n ; j < N ; ++j )
+ BOOST_CHECK(s1[j-n] == T(j));
+ }
+ }
+}
+
+template <typename T, size_t N>
+void test_insert_nd(T const& val)
+{
+ size_t h = N/2;
+
+ varray<T, N> s, ss;
+ std::vector<T> v;
+ std::list<T> l;
+
+ for ( size_t i = 0 ; i < h ; ++i )
+ {
+ s.push_back(T(i));
+ ss.push_back(T(100 + i));
+ v.push_back(T(100 + i));
+ l.push_back(T(100 + i));
+ }
+
+ // insert(pos, val)
+ {
+ for ( size_t i = 0 ; i <= h ; ++i )
+ {
+ varray<T, N> s1(s);
+ s1.insert(s1.begin() + i, val);
+ BOOST_CHECK(s1.size() == h+1);
+ for ( size_t j = 0 ; j < i ; ++j )
+ BOOST_CHECK(s1[j] == T(j));
+ BOOST_CHECK(s1[i] == val);
+ for ( size_t j = 0 ; j < h-i ; ++j )
+ BOOST_CHECK(s1[j+i+1] == T(j+i));
+ }
+ }
+ // insert(pos, n, val)
+ {
+ size_t n = size_t(h/1.5f);
+ for ( size_t i = 0 ; i <= h ; ++i )
+ {
+ varray<T, N> s1(s);
+ s1.insert(s1.begin() + i, n, val);
+ BOOST_CHECK(s1.size() == h+n);
+ for ( size_t j = 0 ; j < i ; ++j )
+ BOOST_CHECK(s1[j] == T(j));
+ for ( size_t j = 0 ; j < n ; ++j )
+ BOOST_CHECK(s1[j+i] == val);
+ for ( size_t j = 0 ; j < h-i ; ++j )
+ BOOST_CHECK(s1[j+i+n] == T(j+i));
+ }
+ }
+ // insert(pos, first, last)
+ {
+ size_t n = size_t(h/1.5f);
+ for ( size_t i = 0 ; i <= h ; ++i )
+ {
+ varray<T, N> s1(s);
+ s1.insert(s1.begin() + i, ss.begin(), ss.begin() + n);
+ BOOST_CHECK(s1.size() == h+n);
+ for ( size_t j = 0 ; j < i ; ++j )
+ BOOST_CHECK(s1[j] == T(j));
+ for ( size_t j = 0 ; j < n ; ++j )
+ BOOST_CHECK(s1[j+i] == T(100 + j));
+ for ( size_t j = 0 ; j < h-i ; ++j )
+ BOOST_CHECK(s1[j+i+n] == T(j+i));
+ }
+ }
+ {
+ size_t n = size_t(h/1.5f);
+ for ( size_t i = 0 ; i <= h ; ++i )
+ {
+ varray<T, N> s1(s);
+ s1.insert(s1.begin() + i, v.begin(), v.begin() + n);
+ BOOST_CHECK(s1.size() == h+n);
+ for ( size_t j = 0 ; j < i ; ++j )
+ BOOST_CHECK(s1[j] == T(j));
+ for ( size_t j = 0 ; j < n ; ++j )
+ BOOST_CHECK(s1[j+i] == T(100 + j));
+ for ( size_t j = 0 ; j < h-i ; ++j )
+ BOOST_CHECK(s1[j+i+n] == T(j+i));
+ }
+ }
+ {
+ size_t n = size_t(h/1.5f);
+ for ( size_t i = 0 ; i <= h ; ++i )
+ {
+ varray<T, N> s1(s);
+ typename std::list<T>::iterator it = l.begin();
+ std::advance(it, n);
+ s1.insert(s1.begin() + i, l.begin(), it);
+ BOOST_CHECK(s1.size() == h+n);
+ for ( size_t j = 0 ; j < i ; ++j )
+ BOOST_CHECK(s1[j] == T(j));
+ for ( size_t j = 0 ; j < n ; ++j )
+ BOOST_CHECK(s1[j+i] == T(100 + j));
+ for ( size_t j = 0 ; j < h-i ; ++j )
+ BOOST_CHECK(s1[j+i+n] == T(j+i));
+ }
+ }
+}
+
+int test_main(int, char* [])
+{
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_ctor_ndc<int, 10>();
+ test_ctor_ndc<value_ndc, 10>();
+ test_ctor_ndc<counting_value, 10>();
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_ctor_nc<int, 10>(5);
+ test_ctor_nc<value_nc, 10>(5);
+ test_ctor_nc<counting_value, 10>(5);
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_ctor_nd<int, 10>(5, 1);
+ test_ctor_nd<value_nd, 10>(5, value_nd(1));
+ test_ctor_nd<counting_value, 10>(5, counting_value(1));
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_resize_nc<int, 10>(5);
+ test_resize_nc<value_nc, 10>(5);
+ test_resize_nc<counting_value, 10>(5);
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_resize_nd<int, 10>(5, 1);
+ test_resize_nd<value_nd, 10>(5, value_nd(1));
+ test_resize_nd<counting_value, 10>(5, counting_value(1));
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_push_back_nd<int, 10>();
+ test_push_back_nd<value_nd, 10>();
+ test_push_back_nd<counting_value, 10>();
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_pop_back_nd<int, 10>();
+ test_pop_back_nd<value_nd, 10>();
+ test_pop_back_nd<counting_value, 10>();
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_copy_and_assign_nd<int, 10>(1);
+ test_copy_and_assign_nd<value_nd, 10>(value_nd(1));
+ test_copy_and_assign_nd<counting_value, 10>(counting_value(1));
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_iterators_nd<int, 10>();
+ test_iterators_nd<value_nd, 10>();
+ test_iterators_nd<counting_value, 10>();
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_erase_nd<int, 10>();
+ test_erase_nd<value_nd, 10>();
+ test_erase_nd<counting_value, 10>();
+ BOOST_CHECK(counting_value::count() == 0);
+
+ test_insert_nd<int, 10>(50);
+ test_insert_nd<value_nd, 10>(value_nd(50));
+ test_insert_nd<counting_value, 10>(counting_value(50));
+ BOOST_CHECK(counting_value::count() == 0);
+
+ return 0;
+}
==============================================================================
--- sandbox-branches/geometry/index/tests/additional_glut_vis.cpp (original)
+++ sandbox-branches/geometry/index/tests/additional_glut_vis.cpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -42,8 +42,6 @@
size_t found_count = 0;
P search_point;
-float min_distance = 10;
-float max_distance = 30;
size_t count = 5;
std::vector<B> nearest_boxes;
B search_box;
@@ -64,13 +62,8 @@
search_point = P(x, y);
nearest_boxes.clear();
- found_count = t.nearest_query(
- bgi::bounded(
- search_point,
- bgi::to_furthest(min_distance),
- bgi::to_nearest(max_distance)
- ),
- count,
+ found_count = t.query(
+ bgi::nearest(search_point, count),
std::back_inserter(nearest_boxes)
);
@@ -101,13 +94,13 @@
search_box = B(P(x - w, y - h), P(x + w, y + h));
nearest_boxes.clear();
- found_count = t.spatial_query(Predicate(search_box), std::back_inserter(nearest_boxes) );
+ found_count = t.query(Predicate(search_box), std::back_inserter(nearest_boxes) );
}
else
{
- search_box = t.box();
+ search_box = t.bounds();
nearest_boxes.clear();
- found_count = t.spatial_query(Predicate(search_box), std::back_inserter(nearest_boxes) );
+ found_count = t.query(Predicate(search_box), std::back_inserter(nearest_boxes) );
}
if ( found_count > 0 )
@@ -153,7 +146,7 @@
search_ring.push_back(P(x - w, y - h));
nearest_boxes.clear();
- found_count = t.spatial_query(Predicate(search_ring), std::back_inserter(nearest_boxes) );
+ found_count = t.query(Predicate(search_ring), std::back_inserter(nearest_boxes) );
if ( found_count > 0 )
{
@@ -209,7 +202,7 @@
search_poly.inners()[0].push_back(P(x - w/2, y - h/2));
nearest_boxes.clear();
- found_count = t.spatial_query(Predicate(search_poly), std::back_inserter(nearest_boxes) );
+ found_count = t.query(Predicate(search_poly), std::back_inserter(nearest_boxes) );
if ( found_count > 0 )
{
@@ -281,7 +274,7 @@
search_multi_poly[2].outer().push_back(P(x + 6*w/5, y + 6*h/5));
nearest_boxes.clear();
- found_count = t.spatial_query(Predicate(search_multi_poly), std::back_inserter(nearest_boxes) );
+ found_count = t.query(Predicate(search_multi_poly), std::back_inserter(nearest_boxes) );
if ( found_count > 0 )
{
@@ -338,7 +331,7 @@
search_valid = true;
}
-void draw_knn_area()
+void draw_knn_area(float min_distance, float max_distance)
{
float x = boost::geometry::get<0>(search_point);
float y = boost::geometry::get<1>(search_point);
@@ -428,7 +421,7 @@
glColor3f(1.0f, 0.5f, 0.0f);
if ( query_mode == qm_knn )
- draw_knn_area();
+ draw_knn_area(0, 0);
else if ( query_mode == qm_ri )
draw_ring(search_ring);
else if ( query_mode == qm_pi )
==============================================================================
--- sandbox-branches/geometry/index/tests/additional_sizes_and_times.cpp (original)
+++ sandbox-branches/geometry/index/tests/additional_sizes_and_times.cpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -202,7 +202,7 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t.spatial_query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
+ t.query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
@@ -229,7 +229,7 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t_copy.spatial_query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
+ t_copy.query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
@@ -248,7 +248,7 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t.spatial_query(!bgi::disjoint(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
+ t.query(!bgi::disjoint(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
@@ -266,7 +266,7 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t.spatial_query(B(P(x - 10, y - 10), P(x + 10, y + 10)), std::back_inserter(result));
+ t.query(B(P(x - 10, y - 10), P(x + 10, y + 10)), std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
@@ -284,11 +284,9 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t.spatial_query(
- std::make_pair(
- B(P(x - 10, y - 10), P(x + 10, y + 10)),
- bgi::value(test_pred< std::pair<B, size_t> >())
- ), std::back_inserter(result));
+ t.query(
+ B(P(x - 10, y - 10), P(x + 10, y + 10)) && bgi::value(test_pred< std::pair<B, size_t> >())
+ , std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
@@ -306,11 +304,9 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t.spatial_query(
- boost::make_tuple(
- B(P(x - 10, y - 10), P(x + 10, y + 10)),
- bgi::value(test_pred< std::pair<B, size_t> >())
- ), std::back_inserter(result));
+ t.query(
+ B(P(x - 10, y - 10), P(x + 10, y + 10)) && bgi::value(test_pred< std::pair<B, size_t> >())
+ , std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
@@ -347,23 +343,6 @@
// searching test
{
- std::cout << "nearest searching time test... ("
- << queries_count / 10 << ")\n";
- tim.restart();
- size_t temp = 0;
- for (size_t i = 0 ; i < queries_count / 10 ; ++i )
- {
- float x = coords[i].first + 100;
- float y = coords[i].second + 100;
- std::pair<B, size_t> result;
- temp += t.nearest_query(bgi::unbounded(P(x, y)), result);
- }
- std::cout << "time: " << tim.elapsed() << "s\n";
- std::cout << "found: " << temp << "\n";
- }
-
- // searching test
- {
std::cout << "nearest 5 searching time test... ("
<< queries_count / 10 << ")\n";
tim.restart();
@@ -373,7 +352,7 @@
float x = coords[i].first + 100;
float y = coords[i].second + 100;
std::vector< std::pair<B, size_t> > result;
- temp += t.nearest_query(P(x, y), 5, std::back_inserter(result));
+ temp += t.query(bgi::nearest(P(x, y), 5), std::back_inserter(result));
}
std::cout << "time: " << tim.elapsed() << "s\n";
std::cout << "found: " << temp << "\n";
@@ -449,7 +428,7 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t.spatial_query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
+ t.query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
@@ -493,7 +472,7 @@
float x = coords[i].first;
float y = coords[i].second;
std::deque< std::pair<B, size_t> > result;
- t.spatial_query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
+ t.query(bgi::intersects(B(P(x - 10, y - 10), P(x + 10, y + 10))), std::back_inserter(result));
temp += result.size();
}
std::cout << "time: " << tim.elapsed() << "s\n";
==============================================================================
--- sandbox-branches/geometry/index/tests/additional_speed.cpp (original)
+++ sandbox-branches/geometry/index/tests/additional_speed.cpp 2013-02-11 14:11:41 EST (Mon, 11 Feb 2013)
@@ -136,19 +136,6 @@
{
float x = coords[i].first + 100;
float y = coords[i].second + 100;
- temp += t.query(bgi::nearest(P(x, y)), result_one);
- }
- double time = tim.elapsed();
- std::cout << time << "s - query(nearest(P)) " << (queries_count / 10) << " found " << temp << '\n';
- }
-
- {
- tim.restart();
- size_t temp = 0;
- for (size_t i = 0 ; i < queries_count / 10 ; ++i )
- {
- float x = coords[i].first + 100;
- float y = coords[i].second + 100;
result.clear();
temp += t.query(bgi::nearest(P(x, y), 5), std::back_inserter(result));
}
@@ -157,28 +144,6 @@
}
{
- tim.restart();
- size_t temp = 0;
- for (size_t i = 0 ; i < queries_count / 10 ; ++i )
- {
- float x = coords[i].first + 100;
- float y = coords[i].second + 100;
- result.clear();
- temp += t.query(bgi::nearest(
- bgi::bounded(
- bgi::to_nearest(P(x, y)),
- bgi::to_centroid(0),
- bgi::to_furthest(100000)
- ),
- 5),
- std::back_inserter(result)
- );
- }
- double time = tim.elapsed();
- std::cout << time << "s - query(nearest(bounded(n, c, f), 5)) " << (queries_count / 10) << " found " << temp << '\n';
- }
-
- {
tim.restart();
for (size_t i = 0 ; i < values_count / 10 ; ++i )
{