diff --git a/doc/generated/rtree.qbk b/doc/generated/rtree.qbk index 5dcc7d03d..b00bb7df3 100644 --- a/doc/generated/rtree.qbk +++ b/doc/generated/rtree.qbk @@ -70,7 +70,7 @@ The Translator translates from Value to Indexable each time r-tree requires it. [[[#classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d] `allocator_type`][The type of allocator used by the container. ]] [[[#classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6] `size_type`][Unsigned integral type used by the container. ]] [[[#classboost_1_1geometry_1_1index_1_1rtree_1ac011da09678f034a7fab487a9b973bfc] `indexable_type`][The Indexable type to which Value is translated. ]] -[[[#classboost_1_1geometry_1_1index_1_1rtree_1a2803990c71c40e6770744d29e5bbd093] `envelope_type`][The Box type used by the R-tree. ]] +[[[#classboost_1_1geometry_1_1index_1_1rtree_1a653555282525601512c3b1bed1e9590f] `bounds_type`][The Box type used by the R-tree. ]] ] [heading Constructor(s) and destructor] @@ -89,31 +89,31 @@ The Translator translates from Value to Indexable each time r-tree requires it. [heading Member(s)] [table -[[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_1abd965047110c9f8ef6ff097e97487312 `query(Predicates const &, value_type &)`]][Finds value meeting passed predicates e.g. nearest to some Point and intersecting some Box. ]] -[[ `const`][[link classboost_1_1geometry_1_1index_1_1rtree_1a930bf17d595a91d8ae924383a0387920 `spatial_query(Predicates const &, OutIter)`]][Finds values meeting spatial predicates, e.g. intersecting some Box. ]] -[[ `const`][[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. ]] -[[ `const`][[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. ]] -[[ `const`][[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. ]] -[[ `const`][[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. ]] -[[ `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_1a131c273b6fc7e1c6d62cc5ebd015e77e `envelope()`]][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. ]] +[[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. ]] ] [#classboost_1_1geometry_1_1index_1_1rtree_1afa64d1b825b06d196b1164aec27c2d7b] @@ -126,8 +126,7 @@ The constructor. `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 Modifier(s)] -``explicit ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[[^[link classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a parameters_type]]][ `parameters` ][The parameters object. ]] @@ -210,8 +209,7 @@ The constructor. [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d allocator_type]] `allocator` = [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d allocator_type]]`()``)` ] -[heading Modifier(s)] -``explicit ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`Range const &`][ `rng` ][The range of Values. ]] @@ -659,8 +657,7 @@ A set of predicates may be generated by: [^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `query``(``Predicates const &` `predicates``,` `OutIter` `out_it``)` ] -[heading Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`Predicates const &`][ `predicates` ][Predicates. ]] @@ -738,8 +735,7 @@ A set of predicates may be generated by: [^[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 Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`Predicates const &`][ `predicates` ][Predicates. ]] @@ -790,8 +786,7 @@ Those predicates may be passed together in [^`std::pair`] or [^`boost::tuple`].[ [^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `spatial_query``(``Predicates const &` `pred``,` `OutIter` `out_it``)` ] -[heading Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`Predicates const &`][ `pred` ][The spatial predicates or a Geometry. ]] @@ -843,8 +838,7 @@ MinRelation and MaxRelation describes bounds and can be generated by following f [^[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 Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point.]] @@ -910,8 +904,7 @@ Those predicates may be passed together in [^`std::pair`] or [^`boost::tuple`].[ [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9979db9ef37591985256cb8ad31862bb value_type]]` &` `v``)` ] -[heading Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point. ]] @@ -961,8 +954,7 @@ MinRelation and MaxRelation describes bounds and can be generated by following f `OutIter` `out_it``)` ] -[heading Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point. ]] @@ -1032,8 +1024,7 @@ Those predicates may be passed together in [^`std::pair`] or [^`boost::tuple`].[ `OutIter` `out_it``)` ] -[heading Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`DistancesPredicates const &`][ `dpred` ][The distances predicates or a Point ]] @@ -1058,8 +1049,7 @@ Returns the number of stored values. [^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `size``()` ] -[heading Modifier(s)] -``const ``[heading Returns] +[heading Returns] The number of stored values. [heading Throws] Nothing. @@ -1076,8 +1066,7 @@ Query if the container is empty. `bool` `empty``()` ] -[heading Modifier(s)] -``const ``[heading Returns] +[heading Returns] true if the container is empty. [heading Throws] Nothing. @@ -1099,19 +1088,18 @@ Nothing. [endsect] -[#classboost_1_1geometry_1_1index_1_1rtree_1a131c273b6fc7e1c6d62cc5ebd015e77e] -[section envelope()] +[#classboost_1_1geometry_1_1index_1_1rtree_1ace84997927e26d7cdb5aa67f14cdf6cc] +[section bounds()] Returns the box able to contain all values stored in the container. [heading Description] Returns the box able to contain all values stored in the container. If the container is empty the result of [^`geometry::assign_inverse()`] is returned.[heading Synopsis] [pre -[^[link classboost_1_1geometry_1_1index_1_1rtree_1a2803990c71c40e6770744d29e5bbd093 envelope_type]]` const &` `envelope``()` +[^[link classboost_1_1geometry_1_1index_1_1rtree_1a653555282525601512c3b1bed1e9590f bounds_type]]` const &` `bounds``()` ] -[heading Modifier(s)] -``const ``[heading Returns] +[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. @@ -1129,8 +1117,7 @@ For indexable_type it returns the number of values which indexables equals the p [^[link classboost_1_1geometry_1_1index_1_1rtree_1a5c1a657074c527ed65f858c1ab6b36e6 size_type]] `count``(``ValueOrIndexable const &` `vori``)` ] -[heading Modifier(s)] -``const ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`ValueOrIndexable const &`][ `vori` ][The value or indexable which will be counted.]] @@ -1152,8 +1139,7 @@ Returns parameters. [^[link classboost_1_1geometry_1_1index_1_1rtree_1af85d4e399a807b3e4e46d38a0b4ffc5a parameters_type]]` const &` `parameters``()` ] -[heading Modifier(s)] -``const ``[heading Returns] +[heading Returns] The parameters object. [heading Throws] Nothing. @@ -1170,8 +1156,7 @@ Returns the translator object. [^[link classboost_1_1geometry_1_1index_1_1rtree_1adbc30a1fa986e2e856e0662111ac2d91 translator_type]]` const &` `translator``()` ] -[heading Modifier(s)] -``const ``[heading Returns] +[heading Returns] The translator object. [heading Throws] Nothing. @@ -1188,8 +1173,7 @@ Returns allocator used by the rtree. [^[link classboost_1_1geometry_1_1index_1_1rtree_1a9d35bc38fa697c6f600548fb5b38807d allocator_type]] `get_allocator``()` ] -[heading Modifier(s)] -``const ``[heading Returns] +[heading Returns] The allocator. [heading Throws] If allocator copy constructor throws. diff --git a/doc/generated/rtree_functions.qbk b/doc/generated/rtree_functions.qbk index 166edb286..c51a47873 100644 --- a/doc/generated/rtree_functions.qbk +++ b/doc/generated/rtree_functions.qbk @@ -20,7 +20,7 @@ [[[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. ]] -[[[link group__rtree__functions_1ga73a9002187db81c57c71f9ec204d57e4 `envelope(rtree<...> const &)`]][Get the box containing all stored values or an invalid box if the index has no values. ]] +[[[link group__rtree__functions_1gae10fbc3d536235b89aa3cb3641768bca `bounds(rtree<...> const &)`]][Get the box containing all stored values or an invalid box if the index has no values. ]] ] [#group__rtree__functions_1gac0ac9ed0e01f7494a5a3059e75d3c5cc] @@ -565,18 +565,18 @@ It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1ae889567443b0ba0dbdb9 true if there are no values in the index. [endsect] -[#group__rtree__functions_1ga73a9002187db81c57c71f9ec204d57e4] -[section envelope(rtree<...> const &)] +[#group__rtree__functions_1gae10fbc3d536235b89aa3cb3641768bca] +[section bounds(rtree<...> const &)] Get the box containing all stored values or an invalid box if the index has no values. [heading Description] -It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a131c273b6fc7e1c6d62cc5ebd015e77e rtree::envelope()]].[heading Synopsis] +It calls [^`rtree::envelope()`].[heading Synopsis] [pre `template<``typename Value``,` `typename Options``,` `typename Translator``,` `typename Allocator``>` -`rtree::box_type const& boost::geometry::index::envelope``(``rtree< Value, Options, Translator, Allocator > const &` `tree``)` +`rtree::bounds_type const& boost::geometry::index::bounds``(``rtree< Value, Options, Translator, Allocator > const &` `tree``)` ] [heading Parameter(s)] diff --git a/doc/generated/translator_index.qbk b/doc/generated/translator_index.qbk index 12c4725ca..186c971cb 100644 --- a/doc/generated/translator_index.qbk +++ b/doc/generated/translator_index.qbk @@ -43,8 +43,7 @@ The constructor. `index``(``Container const &` `c``)` ] -[heading Modifier(s)] -``explicit ``[heading Parameter(s)] +[heading Parameter(s)] [table [[Type][Name][Description]] [[`Container const &`][ `c` ][The container which stores indexed values. ]] diff --git a/doc/html/geometry_index/introduction.html b/doc/html/geometry_index/introduction.html index c00e43835..dd5718dbb 100644 --- a/doc/html/geometry_index/introduction.html +++ b/doc/html/geometry_index/introduction.html @@ -3,7 +3,7 @@ Introduction - + diff --git a/doc/html/geometry_index/r_tree.html b/doc/html/geometry_index/r_tree.html index d8f3103ee..d90bd1ce7 100644 --- a/doc/html/geometry_index/r_tree.html +++ b/doc/html/geometry_index/r_tree.html @@ -3,7 +3,7 @@ R-tree - + @@ -36,14 +36,14 @@ parameters
Values, Indexables and default Translator
-
Inserting - and splitting algorithms (compile-time)
-
Inserting - and splitting algorithms (run-time)
+
Balancing + algorithms (compile-time)
+
Balancing + algorithms (run-time)
Copying, moving and swapping
-
Inserting - and removing of Values
+
Inserting + and removing Values
Additional interface
Insert diff --git a/doc/html/geometry_index/r_tree/creation_and_modification.html b/doc/html/geometry_index/r_tree/creation_and_modification.html index cce4835e6..d80f7223e 100644 --- a/doc/html/geometry_index/r_tree/creation_and_modification.html +++ b/doc/html/geometry_index/r_tree/creation_and_modification.html @@ -3,7 +3,7 @@ Creation and modification - + @@ -32,14 +32,14 @@ parameters
Values, Indexables and default Translator
-
Inserting - and splitting algorithms (compile-time)
-
Inserting - and splitting algorithms (run-time)
+
Balancing + algorithms (compile-time)
+
Balancing + algorithms (run-time)
Copying, moving and swapping
-
Inserting - and removing of Values
+
Inserting + and removing Values
Additional interface
Insert @@ -55,7 +55,7 @@

rtree<Value, Parameters, Translator = translator::def<Value>, Allocator> = std::allocator<Value> >
 
-
    +
    • Value - type of object which will be stored in the container,
    • @@ -90,7 +90,7 @@ be handled by the default Translator - index::translator::def<Value> are defined as follows:

      -
        +
        • Indexable = Point | Box @@ -116,7 +116,7 @@ A Translator is a type which knows how to handle Values. It has two purposes:

          -
            +
            • it translates Value to a more suitable Indexable type which is needed by most of operations, @@ -134,7 +134,7 @@

              If comparison of two Values is required, the default translator:

              -
                +
                • for Point and Box @@ -156,38 +156,38 @@

                Values may be inserted to the R-tree in many various ways. Final internal structure of the R-tree depends on algorithms used in the - insertion process and parameters. The most important is nodes' splitting + insertion process and parameters. The most important is nodes' balancing algorithm. Currently, three well-known types of R-trees may be created.

                - Linear - classic R-tree using splitting algorithm of linear complexity + Linear - classic R-tree using balancing algorithm of linear complexity

                index::rtree< Value, index::linear<32, 8> > rt;
                 

                - Quadratic - classic R-tree using splitting algorithm of quadratic complexity + Quadratic - classic R-tree using balancing algorithm of quadratic complexity

                index::rtree< Value, index::quadratic<32, 8> > rt;
                 

                - R*-tree - splitting algorithm minimizing nodes' overlap with forced reinsertions + R*-tree - balancing algorithm minimizing nodes' overlap with forced reinsertions

                index::rtree< Value, index::rstar<32, 8> > rt;
                 

                - Splitting algorithm parameters may be passed to the R-tree in run time. + Balancing algorithm parameters may be passed to the R-tree in run time. To use run-time versions of the R-tree one may pass parameters defined in index::runtime namespace.

                @@ -235,11 +235,11 @@

                - The following code creates an R-tree using quadratic algorithm. + The following code creates an R-tree using quadratic balancing algorithm.

                using namespace boost::geometry;
                 typedef std::pair<Box, int> Value;
                diff --git a/doc/html/geometry_index/r_tree/introduction.html b/doc/html/geometry_index/r_tree/introduction.html
                index 28ae3b6fd..d5d164868 100644
                --- a/doc/html/geometry_index/r_tree/introduction.html
                +++ b/doc/html/geometry_index/r_tree/introduction.html
                @@ -3,7 +3,7 @@
                 
                 Introduction
                 
                -
                +
                 
                 
                 
                @@ -28,10 +28,10 @@
                 

            R-tree is a tree data structure used for spatial searching. It was proposed - by Antonin Guttman in 1984 [1] as an expansion of B-tree for multi-dimensional data. It may + by Antonin Guttman in 1984 [1] 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 [2]. + close to some point in space [2].

            The R-tree structure is presented on the image below. Each R-tree's node @@ -51,7 +51,7 @@

            The R-tree is a self-balanced data structure. The key part of balancing algorithm - is node splitting algorithm [3] [4]. Each algorithm produces different splits so the internal structure + is node splitting algorithm [3] [4]. 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 @@

          - Implementation + Implementation details

          Key features of this implementation of the R-tree are:

          -
            +
            • capable to store arbitrary Value type,
            • @@ -207,15 +207,22 @@
            - Contributors + Dependencies +
            +

            + R-tree depends on Boost.Move, Boost.Container, Boost.Tuple. +

            +
            + + Contributors

            The spatial index was originally started by Federico J. Fernandez during the Google-Of-Summer project 2008, mentored by Hartmut Kaiser.

            - - Spatial + + Spatial thanks

            @@ -224,20 +231,20 @@ list for their help.

            -

            -

            [1] +


            +

            [1] Guttman, A. (1984). R-Trees: A Dynamic Index Structure for Spatial Searching

            -

            [2] +

            [2] Cheung, K.; Fu, A. (1998). Enhanced Nearest Neighbour Search on the R-tree

            -

            [3] +

            [3] Greene, D. (1989). An implementation and performance analysis of spatial data access methods

            -

            [4] +

            [4] Beckmann, N.; Kriegel, H. P.; Schneider, R.; Seeger, B. (1990). The R*-tree: an efficient and robust access method for points and rectangles

            diff --git a/doc/html/geometry_index/r_tree/queries.html b/doc/html/geometry_index/r_tree/queries.html index 7c642bc32..7a9de8480 100644 --- a/doc/html/geometry_index/r_tree/queries.html +++ b/doc/html/geometry_index/r_tree/queries.html @@ -3,7 +3,7 @@ Queries - + @@ -41,10 +41,10 @@ query results into the other R-tree

- Queries returns Values which - meets some predicates. Currently supported are three types of predicates: + Queries returns Values which meets some predicates. Currently + supported are three types of predicates:

-
    +
    • spatial predicates - defining relationship between stored Values and some Geometry, @@ -60,7 +60,7 @@

      For example queries may be used to retrieve Values:

      -
        +
        • intersecting some area but not within other area,
        • @@ -81,7 +81,7 @@ is used as the predicate, this is a default spatial predicate described in the following section. Following queries returns Values intersecting some region defined as a Box. - These three methods are: + These three ways are:

          Method call @@ -111,9 +111,9 @@ queries

    - Spatial query returns Values which are related somehow to a geometry or - some number of geometries. Names of spatial predicates corresponds to names - of Boost.Geometry + Spatial query returns Values which are related somehow to + a geometry or some number of geometries. Names of spatial predicates corresponds + to names of Boost.Geometry algorithms. Examples of some basic queries may be found in tables below. The query region and result Values are orange. @@ -248,11 +248,12 @@ neighbours queries

- Nearest neighbours queries returns Values - which are closest to some point in space. Additionally it is possible to - pass distance predicates in order to define how the distance to the Value should be calculated or minimal - and maximal distances. The examples of some knn queries may be found in - the table below. All queries returns 5 closest Values. + Nearest neighbours queries returns Values 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.

@@ -305,7 +306,8 @@

There are three ways of performing knn queries. Following queries returns - k Values closest to some point in space. For Boxes + k Values + closest to some point in space. For Boxes Indexables the distance to the nearest point is calculated by default.

@@ -440,7 +442,7 @@ must be greater than 10 */

It's possible to use some number of predicates in one query by passing:

-
    +
    • std::pair<Pred1, Pred2>, diff --git a/doc/html/geometry_index/r_tree/reference.html b/doc/html/geometry_index/r_tree/reference.html index 4afc486ec..998b8ad46 100644 --- a/doc/html/geometry_index/r_tree/reference.html +++ b/doc/html/geometry_index/r_tree/reference.html @@ -3,7 +3,7 @@ Reference - + @@ -47,12 +47,12 @@ boost::geometry::index::rtree

- + The R-tree spatial index.

- Description + Description

This is self-balancing spatial index capable to store various types of @@ -60,7 +60,7 @@ The R-tree spatial index.

- Parameters + Parameters

The user must pass a type defining the Parameters which will be used in @@ -70,7 +70,7 @@ The R-tree spatial index.

Predefined algorithms with compile-time parameters are:

-
@@ -208,7 +208,7 @@ The R-tree spatial index.
- Typedef(s) + Typedef(s)
@@ -303,7 +303,7 @@ The R-tree spatial index.

- envelope_type + bounds_type

@@ -316,7 +316,7 @@ The R-tree spatial index.
- Constructor(s) + Constructor(s) and destructor
@@ -458,20 +458,14 @@ The R-tree spatial index.
- Member(s) + Member(s)
- - - - - - - - - - - - - - - - - - - - - - - - - -
-

- Modifier -

-

Function @@ -485,8 +479,6 @@ The R-tree spatial index.

-

operator=(const rtree @@ -500,8 +492,6 @@ The R-tree spatial index.

-

operator=(rtree &&) @@ -514,8 +504,6 @@ The R-tree spatial index.

-

swap(rtree &) @@ -528,8 +516,6 @@ The R-tree spatial index.

-

insert(value_type const @@ -543,8 +529,6 @@ The R-tree spatial index.

-

insert(Iterator, @@ -558,8 +542,6 @@ The R-tree spatial index.

-

insert(Range const @@ -573,8 +555,6 @@ The R-tree spatial index.

-

remove(value_type const @@ -588,8 +568,6 @@ The R-tree spatial index.

-

remove(Iterator, @@ -603,8 +581,6 @@ The R-tree spatial index.

-

remove(Range const @@ -618,11 +594,6 @@ The R-tree spatial index.

-

- const -

-

query(Predicates const @@ -637,11 +608,6 @@ The R-tree spatial index.

-

- const -

-

query(Predicates const @@ -657,11 +623,6 @@ The R-tree spatial index.

-

- const -

-

spatial_query(Predicates const @@ -676,11 +637,6 @@ The R-tree spatial index.

-

- const -

-

nearest_query(DistancesPredicates const @@ -696,11 +652,6 @@ The R-tree spatial index.

-

- const -

-

nearest_query(DistancesPredicates const @@ -717,11 +668,6 @@ The R-tree spatial index.

-

- const -

-

nearest_query(DistancesPredicates const @@ -736,11 +682,6 @@ The R-tree spatial index.

-

- const -

-

nearest_query(DistancesPredicates const @@ -757,11 +698,6 @@ The R-tree spatial index.

-

- const -

-

size() @@ -774,11 +710,6 @@ The R-tree spatial index.

-

- const -

-

empty() @@ -791,8 +722,6 @@ The R-tree spatial index.

-

clear() @@ -807,12 +736,7 @@ The R-tree spatial index.

- const -

-
-

- envelope() + bounds()

@@ -822,11 +746,6 @@ The R-tree spatial index.
-

- const -

-

count(ValueOrIndexable const @@ -840,11 +759,6 @@ The R-tree spatial index.

-

- const -

-

parameters() @@ -857,11 +771,6 @@ The R-tree spatial index.

-

- const -

-

translator() @@ -874,11 +783,6 @@ The R-tree spatial index.

-

- const -

-

get_allocator() @@ -901,22 +805,13 @@ The R-tree spatial index.

- Synopsis + Synopsis
rtree(parameters_type parameters = parameters_type(), translator_type const & translator = translator_type())
 
- Modifier(s) -
-

-

-
explicit
-

-

-
- - Parameter(s) + Parameter(s)
@@ -980,8 +875,8 @@ The R-tree spatial index.
- - Throws + + Throws

If allocator default constructor throws. @@ -997,7 +892,7 @@ The R-tree spatial index.

- Synopsis + Synopsis
rtree(parameters_type parameters,
       translator_type const & translator,
@@ -1005,7 +900,7 @@ The R-tree spatial index.
 
- Parameter(s) + Parameter(s)
@@ -1087,7 +982,7 @@ The R-tree spatial index.
- Throws + Throws

If allocator copy constructor throws. @@ -1103,7 +998,7 @@ The R-tree spatial index.

- Synopsis + Synopsis
template<typename Iterator>
 rtree(Iterator first,
@@ -1114,7 +1009,7 @@ The R-tree spatial index.
 
- Parameter(s) + Parameter(s)
@@ -1230,9 +1125,9 @@ The R-tree spatial index.
- Throws + Throws
-
    +
    • If allocator copy constructor throws.
    • @@ -1257,7 +1152,7 @@ The R-tree spatial index.

      - Synopsis + Synopsis
      template<typename Range>
       rtree(Range const & rng,
      @@ -1267,16 +1162,7 @@ The R-tree spatial index.
       
      - Modifier(s) -
      -

      -

      -
      explicit
      -

      -

      -
      - - Parameter(s) + Parameter(s)
      @@ -1375,10 +1261,10 @@ The R-tree spatial index.
      - - Throws + + Throws
      -
        +
        • If allocator copy constructor throws.
        • @@ -1402,13 +1288,13 @@ The R-tree spatial index.

          - Synopsis + Synopsis
          ~rtree()
           
          - Throws + Throws

          Nothing. @@ -1424,20 +1310,20 @@ The R-tree spatial index.

          - Description + Description

          It uses parameters, translator and allocator from the source tree.

          - Synopsis + Synopsis
          rtree(rtree const & src)
           
          - Parameter(s) + Parameter(s)
          @@ -1483,9 +1369,9 @@ The R-tree spatial index.
          - Throws + Throws
          -
            +
            • If allocator copy constructor throws.
            • @@ -1510,20 +1396,20 @@ The R-tree spatial index.

              - Description + Description

              It uses Parameters and translator from the source tree.

              - Synopsis + Synopsis
              rtree(rtree const & src, allocator_type const & allocator)
               
              - Parameter(s) + Parameter(s)
              @@ -1589,9 +1475,9 @@ The R-tree spatial index.
              - Throws + Throws
              -
                +
                • If allocator copy constructor throws.
                • @@ -1616,20 +1502,20 @@ The R-tree spatial index.

                  - Description + Description

                  It uses parameters, translator and allocator from the source tree.

                  - Synopsis + Synopsis
                  rtree(rtree && src)
                   
                  - Parameter(s) + Parameter(s)
                  @@ -1675,7 +1561,7 @@ The R-tree spatial index.
                  - Throws + Throws

                  Nothing. @@ -1691,20 +1577,20 @@ The R-tree spatial index.

                  - Description + Description

                  It uses parameters and translator from the source tree.

                  - Synopsis + Synopsis
                  rtree(rtree && src, allocator_type const & allocator)
                   
                  - Parameter(s) + Parameter(s)
                  @@ -1770,9 +1656,9 @@ The R-tree spatial index.
                  - Throws + Throws
                  -
                    +
                    • If allocator copy constructor throws.
                    • @@ -1798,20 +1684,20 @@ The R-tree spatial index.

                      - Description + Description

                      It uses parameters and translator from the source tree.

                      - Synopsis + Synopsis
                      rtree & operator=(const rtree & src)
                       
                      - Parameter(s) + Parameter(s)
                      @@ -1857,9 +1743,9 @@ The R-tree spatial index.
                      - Throws + Throws
                      -
                        +
                        • If Value copy constructor throws.
                        • @@ -1881,20 +1767,20 @@ The R-tree spatial index.

                          - Description + Description

                          It uses parameters and translator from the source tree.

                          - Synopsis + Synopsis
                          rtree & operator=(rtree && src)
                           
                          - Parameter(s) + Parameter(s)
                          @@ -1940,12 +1826,12 @@ The R-tree spatial index.
                          - Throws + Throws

                          Only if allocators aren't equal.

                          -
                            +
                            • If Value copy constructor throws.
                            • @@ -1967,20 +1853,20 @@ The R-tree spatial index.

                              - Description + Description

                              Parameters, translator and allocators are swapped as well.

                              - Synopsis + Synopsis
                              void swap(rtree & other)
                               
                              - Parameter(s) + Parameter(s)
                              @@ -2026,7 +1912,7 @@ The R-tree spatial index.
                              - Throws + Throws

                              If allocators swap throws. @@ -2042,13 +1928,13 @@ The R-tree spatial index.

                              - Synopsis + Synopsis
                              void insert(value_type const & value)
                               
                              - Parameter(s) + Parameter(s)
                              @@ -2094,9 +1980,9 @@ The R-tree spatial index.
                              - Throws + Throws
                              -
                                +
                                • If Value copy constructor or copy assignment throws.
                                • @@ -2129,14 +2015,14 @@ The R-tree spatial index.

                                  - Synopsis + Synopsis
                                  template<typename Iterator>
                                   void insert(Iterator first, Iterator last)
                                   
                                  - Parameter(s) + Parameter(s)
                                  @@ -2200,9 +2086,9 @@ The R-tree spatial index.
                                  - Throws + Throws
                                  -
                                    +
                                    • If Value copy constructor or copy assignment throws.
                                    • @@ -2235,14 +2121,14 @@ The R-tree spatial index.

                                      - Synopsis + Synopsis
                                      template<typename Range>
                                       void insert(Range const & rng)
                                       
                                      - Parameter(s) + Parameter(s)
                                      @@ -2288,9 +2174,9 @@ The R-tree spatial index.
                                      - Throws + Throws
                                      -
                                        +
                                        • If Value copy constructor or copy assignment throws.
                                        • @@ -2323,7 +2209,7 @@ The R-tree spatial index.

                                          - Description + Description

                                          In contrast to the std::set @@ -2332,13 +2218,13 @@ The R-tree spatial index.

                                          - Synopsis + Synopsis
                                          size_type remove(value_type const & value)
                                           
                                          - Parameter(s) + Parameter(s)
                                          @@ -2384,16 +2270,16 @@ The R-tree spatial index.
                                          - Returns + Returns

                                          1 if the value was removed, 0 otherwise.

                                          - Throws + Throws
                                          -
                                            +
                                            • If Value copy constructor or copy assignment throws.
                                            • @@ -2426,7 +2312,7 @@ The R-tree spatial index.

                                              - Description + Description

                                              In contrast to the std::set @@ -2437,14 +2323,14 @@ The R-tree spatial index.

                                              - Synopsis + Synopsis
                                              template<typename Iterator>
                                               size_type remove(Iterator first, Iterator last)
                                               
                                              - Parameter(s) + Parameter(s)
                                              @@ -2508,16 +2394,16 @@ The R-tree spatial index.
                                              - Returns + Returns

                                              The number of removed values.

                                              - Throws + Throws
                                              -
                                                +
                                                • If Value copy constructor or copy assignment throws.
                                                • @@ -2550,7 +2436,7 @@ The R-tree spatial index.

                                                  - Description + Description

                                                  In contrast to the std::set @@ -2560,14 +2446,14 @@ The R-tree spatial index.

                                                  - Synopsis + Synopsis
                                                  template<typename Range>
                                                   size_type remove(Range const & rng)
                                                   
                                                  - Parameter(s) + Parameter(s)
                                                  @@ -2613,16 +2499,16 @@ The R-tree spatial index.
                                                  - Returns + Returns

                                                  The number of removed values.

                                                  - Throws + Throws
                                                  -
                                                    +
                                                    • If Value copy constructor or copy assignment throws.
                                                    • @@ -2656,7 +2542,7 @@ The R-tree spatial index.

                                                      - Description + Description

                                                      This query function performs spatial and k-nearest neighbor searches. @@ -2672,7 +2558,7 @@ The R-tree spatial index. are returned. More spatial predicates may be generated by one of the functions listed below:

                                                      -
                                                        +
                                                        • boost::geometry::index::covered_by(),
                                                        • @@ -2693,7 +2579,7 @@ The R-tree spatial index.

                                                          It is possible to negate spatial predicates:

                                                          -
                                                            +
                                                            • ! boost::geometry::index::covered_by(),
                                                            • @@ -2718,7 +2604,7 @@ The R-tree spatial index. functor which checks if Value should be returned by the query. It's generated by:

                                                              -
                                                              • +

                                                                @@ -2732,7 +2618,7 @@ The R-tree spatial index. output iterator. Only one nearest predicate may be passed to the query. It may be generated by:

                                                                -
                                                                • +

                                                                  @@ -2741,7 +2627,7 @@ The R-tree spatial index.

                                                                  A set of predicates may be generated by:

                                                                  -
                                                                    +
                                                                    • std::make_pair()
                                                                    • @@ -2754,23 +2640,14 @@ The R-tree spatial index.
                                                                    - Synopsis + Synopsis
                                                                    template<typename Predicates, typename OutIter>
                                                                     size_type query(Predicates const & predicates, OutIter out_it)
                                                                     
                                                                    - Modifier(s) -
                                                                    -

                                                                    -

                                                                    -
                                                                    const
                                                                    -

                                                                    -

                                                                    -
                                                                    - - Parameter(s) + Parameter(s)
                                                                    @@ -2833,15 +2710,15 @@ The R-tree spatial index.
                                                                    - - Returns + + Returns

                                                                    The number of values found.

                                                                    - - Example + + Example

                                                                    @@ -2854,8 +2731,8 @@ The R-tree spatial index.

                                                                    - - Throws + + Throws

                                                                    If Value copy constructor or copy assignment throws. @@ -2882,7 +2759,7 @@ The R-tree spatial index.

                                                                    - Description + Description

                                                                    This query function performs k-nearest neighbor searches. It allows to @@ -2900,7 +2777,7 @@ The R-tree spatial index. are returned. More spatial predicates may be generated by one of the functions listed below:

                                                                    -
                                                                      +
                                                                      • boost::geometry::index::covered_by(),
                                                                      • @@ -2921,7 +2798,7 @@ The R-tree spatial index.

                                                                        It is possible to negate spatial predicates:

                                                                        -
                                                                          +
                                                                          • ! boost::geometry::index::covered_by(),
                                                                          • @@ -2946,7 +2823,7 @@ The R-tree spatial index. functor which checks if Value should be returned by the query. It's generated by:

                                                                            -
                                                                            • +

                                                                              @@ -2957,7 +2834,7 @@ The R-tree spatial index. predicate. It may be generated by nearest() taking only one parameter - distance predicates.

                                                                              -
                                                                              • +

                                                                                @@ -2966,7 +2843,7 @@ The R-tree spatial index.

                                                                                A set of predicates may be generated by:

                                                                                -
                                                                                  +
                                                                                  • std::make_pair()
                                                                                  • @@ -2979,23 +2856,14 @@ The R-tree spatial index.
                                                                                  - Synopsis + Synopsis
                                                                                  template<typename Predicates>
                                                                                   size_type query(Predicates const & predicates, value_type & value)
                                                                                   
                                                                                  - Modifier(s) -
                                                                                  -

                                                                                  -

                                                                                  -
                                                                                  const
                                                                                  -

                                                                                  -

                                                                                  -
                                                                                  - - Parameter(s) + Parameter(s)
                                                                                  @@ -3059,15 +2927,15 @@ The R-tree spatial index.
                                                                                  - - Returns + + Returns

                                                                                  The number of values found (1 if value was found, 0 otherwise).

                                                                                  - - Example + + Example

                                                                                  @@ -3077,8 +2945,8 @@ The R-tree spatial index.

                                                                                  - - Throws + + Throws

                                                                                  If Value copy constructor or copy assignment throws. @@ -3104,7 +2972,7 @@ The R-tree spatial index.

                                                                                  - Description + Description

                                                                                  Spatial predicates may be a Geometry. In this case Values @@ -3114,7 +2982,7 @@ The R-tree spatial index.

                                                                                  It may be generated by one of the functions listed below:

                                                                                  -
                                                                                    +
                                                                                    • boost::geometry::index::covered_by(),
                                                                                    • @@ -3156,23 +3024,14 @@ The R-tree spatial index.

                                                                                      - Synopsis + Synopsis
                                                                                      template<typename Predicates, typename OutIter>
                                                                                       size_type spatial_query(Predicates const & pred, OutIter out_it)
                                                                                       
                                                                                      - Modifier(s) -
                                                                                      -

                                                                                      -

                                                                                      -
                                                                                      const
                                                                                      -

                                                                                      -

                                                                                      -
                                                                                      - - Parameter(s) + Parameter(s)
                                                                                      @@ -3236,17 +3095,17 @@ The R-tree spatial index.
                                                                                      - - Returns + + Returns

                                                                                      The number of values found.

                                                                                      - - Throws + + Throws
                                                                                      -
                                                                                        +
                                                                                        • If Value copy constructor or copy assignment throws.
                                                                                        • @@ -3265,7 +3124,7 @@ The R-tree spatial index.

                                                                                          - Description + Description

                                                                                          Distances predicates may be a Point. In this the case the @@ -3276,7 +3135,7 @@ The R-tree spatial index. It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:

                                                                                          -
                                                                                            +
                                                                                            • boost::geometry::index::to_nearest() - default, @@ -3293,7 +3152,7 @@ The R-tree spatial index. distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:

                                                                                              -
                                                                                                +
                                                                                                • boost::geometry::index::unbounded() - default, @@ -3312,7 +3171,7 @@ The R-tree spatial index. MinRelation and MaxRelation describes bounds and can be generated by following functions:

                                                                                                  -
                                                                                                    +
                                                                                                    - Synopsis + Synopsis
                                                                                                    template<typename DistancesPredicates>
                                                                                                     size_type nearest_query(DistancesPredicates const & dpred, value_type & v)
                                                                                                     
                                                                                                    - Modifier(s) -
                                                                                                    -

                                                                                                    -

                                                                                                    -
                                                                                                    const
                                                                                                    -

                                                                                                    -

                                                                                                    -
                                                                                                    - - Parameter(s) + Parameter(s)
                                                                                                    @@ -3406,15 +3256,15 @@ The R-tree spatial index.
                                                                                                    - - Returns + + Returns

                                                                                                    The number of values found.

                                                                                                    - - Throws + + Throws

                                                                                                    If Value copy constructor or copy assignment throws. @@ -3431,7 +3281,7 @@ The R-tree spatial index.

                                                                                                    - Description + Description

                                                                                                    Distances predicates may be a Point. In this the case the @@ -3442,7 +3292,7 @@ The R-tree spatial index. It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:

                                                                                                    -
                                                                                                      +
                                                                                                      • boost::geometry::index::to_nearest() - default, @@ -3459,7 +3309,7 @@ The R-tree spatial index. distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:

                                                                                                        -
                                                                                                          +
                                                                                                          • boost::geometry::index::unbounded() - default, @@ -3478,7 +3328,7 @@ The R-tree spatial index. MinRelation and MaxRelation describes bounds and can be generated by following functions:

                                                                                                            -
                                                                                                              +
                                                                                                              • boost::geometry::index::to_nearest(),
                                                                                                              • @@ -3497,7 +3347,7 @@ The R-tree spatial index.

                                                                                                                It may be generated by one of the functions listed below:

                                                                                                                -
                                                                                                                  +
                                                                                                                  • boost::geometry::index::covered_by(),
                                                                                                                  • @@ -3539,7 +3389,7 @@ The R-tree spatial index.

                                                                                                                    - Synopsis + Synopsis
                                                                                                                    template<typename DistancesPredicates, typename Predicates>
                                                                                                                     size_type nearest_query(DistancesPredicates const & dpred,
                                                                                                                    @@ -3548,16 +3398,7 @@ The R-tree spatial index.
                                                                                                                     
                                                                                                                    - Modifier(s) -
                                                                                                                    -

                                                                                                                    -

                                                                                                                    -
                                                                                                                    const
                                                                                                                    -

                                                                                                                    -

                                                                                                                    -
                                                                                                                    - - Parameter(s) + Parameter(s)
                                                                                                                    @@ -3639,15 +3480,15 @@ The R-tree spatial index.
                                                                                                                    - - Returns + + Returns

                                                                                                                    The number of values found.

                                                                                                                    - - Throws + + Throws

                                                                                                                    If Value copy constructor or copy assignment throws. @@ -3664,7 +3505,7 @@ The R-tree spatial index.

                                                                                                                    - Description + Description

                                                                                                                    Distances predicates may be a Point. In this the case the @@ -3675,7 +3516,7 @@ The R-tree spatial index. It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:

                                                                                                                    -
                                                                                                                      +
                                                                                                                      • boost::geometry::index::to_nearest() - default, @@ -3692,7 +3533,7 @@ The R-tree spatial index. distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:

                                                                                                                        -
                                                                                                                          +
                                                                                                                          • boost::geometry::index::unbounded() - default, @@ -3711,7 +3552,7 @@ The R-tree spatial index. MinRelation and MaxRelation describes bounds and can be generated by following functions:

                                                                                                                            -
                                                                                                                              +
                                                                                                                              - Synopsis + Synopsis
                                                                                                                              template<typename DistancesPredicates, typename OutIter>
                                                                                                                               size_type nearest_query(DistancesPredicates const & dpred,
                                                                                                                              @@ -3733,16 +3574,7 @@ The R-tree spatial index.
                                                                                                                               
                                                                                                                              - Modifier(s) -
                                                                                                                              -

                                                                                                                              -

                                                                                                                              -
                                                                                                                              const
                                                                                                                              -

                                                                                                                              -

                                                                                                                              -
                                                                                                                              - - Parameter(s) + Parameter(s)
                                                                                                                              @@ -3823,15 +3655,15 @@ The R-tree spatial index.
                                                                                                                              - - Returns + + Returns

                                                                                                                              The number of values found.

                                                                                                                              - - Throws + + Throws

                                                                                                                              If Value copy constructor or copy assignment throws. If OutIter dereference @@ -3849,7 +3681,7 @@ The R-tree spatial index.

                                                                                                                              - Description + Description

                                                                                                                              Distances predicates may be a Point. In this the case the @@ -3860,7 +3692,7 @@ The R-tree spatial index. It is possible to define how distance to Value is calculated. This is done by passing PointRelation. It can be generated by following functions:

                                                                                                                              -
                                                                                                                                +
                                                                                                                                • boost::geometry::index::to_nearest() - default, @@ -3877,7 +3709,7 @@ The R-tree spatial index. distance must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:

                                                                                                                                  -
                                                                                                                                    +
                                                                                                                                    • boost::geometry::index::unbounded() - default, @@ -3896,7 +3728,7 @@ The R-tree spatial index. MinRelation and MaxRelation describes bounds and can be generated by following functions:

                                                                                                                                      -
                                                                                                                                        +
                                                                                                                                        - Functions + Functions
                                                                                                                                        @@ -4701,7 +4461,7 @@ The R-tree spatial index. @@ -4724,7 +4484,7 @@ The R-tree spatial index.

                                                                                                                                        - Description + Description

                                                                                                                                        It calls rtree::insert(value_type @@ -4732,7 +4492,7 @@ The R-tree spatial index.

                                                                                                                                        - Synopsis + Synopsis
                                                                                                                                        template<typename Value,
                                                                                                                                                  typename Options,
                                                                                                                                        @@ -4742,7 +4502,7 @@ The R-tree spatial index.
                                                                                                                                         
                                                                                                                                        - Parameter(s) + Parameter(s)

                                                                                                                                        - envelope(rtree<...> + bounds(rtree<...> const &)

                                                                                                                                        @@ -4821,7 +4581,7 @@ The R-tree spatial index.

                                                                                                                                        - Description + Description

                                                                                                                                        It calls rtree::insert(Iterator, @@ -4829,7 +4589,7 @@ The R-tree spatial index.

                                                                                                                                        - Synopsis + Synopsis
                                                                                                                                        template<typename Value,
                                                                                                                                                  typename Options,
                                                                                                                                        @@ -4842,7 +4602,7 @@ The R-tree spatial index.
                                                                                                                                         
                                                                                                                                        - Parameter(s) + Parameter(s)
                                                                                                                                        @@ -4937,7 +4697,7 @@ The R-tree spatial index.

                                                                                                                                        - Description + Description

                                                                                                                                        It calls rtree::insert(Range @@ -4945,7 +4705,7 @@ The R-tree spatial index.

                                                                                                                                        - Synopsis + Synopsis
                                                                                                                                        template<typename Value,
                                                                                                                                                  typename Options,
                                                                                                                                        @@ -4956,7 +4716,7 @@ The R-tree spatial index.
                                                                                                                                         
                                                                                                                                        - Parameter(s) + Parameter(s)
                                                                                                                                        @@ -5035,7 +4795,7 @@ The R-tree spatial index.

                                                                                                                                        - Description + Description

                                                                                                                                        Remove a value from the container. In contrast to the std::set or std::map erase() method this function removes @@ -5047,7 +4807,7 @@ The R-tree spatial index.

                                                                                                                                        - Synopsis + Synopsis
                                                                                                                                        template<typename Value,
                                                                                                                                                  typename Options,
                                                                                                                                        @@ -5057,7 +4817,7 @@ The R-tree spatial index.
                                                                                                                                         
                                                                                                                                        - Parameter(s) + Parameter(s)
                                                                                                                                        @@ -5127,7 +4887,7 @@ The R-tree spatial index.
                                                                                                                                        - Returns + Returns

                                                                                                                                        1 if value was removed, 0 otherwise. @@ -5143,7 +4903,7 @@ The R-tree spatial index.

                                                                                                                                        - Description + Description

                                                                                                                                        Remove a range of values from the container. In contrast to the std::set or std::map erase() method it doesn't take iterators @@ -5157,7 +4917,7 @@ The R-tree spatial index.

                                                                                                                                        - Synopsis + Synopsis
                                                                                                                                        template<typename Value,
                                                                                                                                                  typename Options,
                                                                                                                                        @@ -5170,7 +4930,7 @@ The R-tree spatial index.
                                                                                                                                         
                                                                                                                                        - Parameter(s) + Parameter(s)
                                                                                                                                        @@ -5256,7 +5016,7 @@ The R-tree spatial index.
                                                                                                                                        - Returns + Returns

                                                                                                                                        The number of removed values. @@ -5272,7 +5032,7 @@ The R-tree spatial index.

                                                                                                                                        - Description + Description

                                                                                                                                        Remove a range of values from the container. In contrast to the std::set or std::map erase() method it removes values @@ -5285,7 +5045,7 @@ The R-tree spatial index.

                                                                                                                                        - Synopsis + Synopsis
                                                                                                                                        template<typename Value,
                                                                                                                                                  typename Options,
                                                                                                                                        @@ -5296,7 +5056,7 @@ The R-tree spatial index.
                                                                                                                                         
                                                                                                                                        - Parameter(s) + Parameter(s)
                                                                                                                                        @@ -5366,7 +5126,7 @@ The R-tree spatial index.
                                                                                                                                        - Returns + Returns

                                                                                                                                        The number of removed values. @@ -5383,7 +5143,7 @@ The R-tree spatial index.

                                                                                                                                        - Description + Description

                                                                                                                                        This query function performs spatial and k-nearest neighbor searches. @@ -5399,7 +5159,7 @@ The R-tree spatial index. are returned. More spatial predicates may be generated by one of the functions listed below:

                                                                                                                                        -
                                                                                                                                          +
                                                                                                                                          • boost::geometry::index::covered_by(),
                                                                                                                                          • @@ -5420,7 +5180,7 @@ The R-tree spatial index.

                                                                                                                                            It is possible to negate spatial predicates:

                                                                                                                                            -
                                                                                                                                              +
                                                                                                                                              • ! boost::geometry::index::covered_by(),
                                                                                                                                              • @@ -5445,7 +5205,7 @@ The R-tree spatial index. functor which checks if Value should be returned by the query. It's generated by:

                                                                                                                                                -
                                                                                                                                                • +

                                                                                                                                                  @@ -5459,7 +5219,7 @@ The R-tree spatial index. output iterator. Only one nearest predicate may be passed to the query. It may be generated by:

                                                                                                                                                  -
                                                                                                                                                  • +

                                                                                                                                                    @@ -5468,7 +5228,7 @@ The R-tree spatial index.

                                                                                                                                                    A set of predicates may be generated by:

                                                                                                                                                    -
                                                                                                                                                      +
                                                                                                                                                      • std::make_pair()
                                                                                                                                                      • @@ -5481,7 +5241,7 @@ The R-tree spatial index.
                                                                                                                                                      - Synopsis + Synopsis
                                                                                                                                                      template<typename Value,
                                                                                                                                                                typename Options,
                                                                                                                                                      @@ -5495,7 +5255,7 @@ The R-tree spatial index.
                                                                                                                                                       
                                                                                                                                                      - Parameter(s) + Parameter(s)
                                                                                                                                                      @@ -5581,14 +5341,14 @@ The R-tree spatial index.
                                                                                                                                                      - Returns + Returns

                                                                                                                                                      The number of values found.

                                                                                                                                                      - Example + Example

                                                                                                                                                      @@ -5602,7 +5362,7 @@ The R-tree spatial index.

                                                                                                                                                      - Throws + Throws

                                                                                                                                                      If Value copy constructor or copy assignment throws. @@ -5630,7 +5390,7 @@ The R-tree spatial index.

                                                                                                                                                      - Description + Description

                                                                                                                                                      This query function performs k-nearest neighbor searches. It allows to @@ -5648,7 +5408,7 @@ The R-tree spatial index. are returned. More spatial predicates may be generated by one of the functions listed below:

                                                                                                                                                      -
                                                                                                                                                        +
                                                                                                                                                        • boost::geometry::index::covered_by(),
                                                                                                                                                        • @@ -5669,7 +5429,7 @@ The R-tree spatial index.

                                                                                                                                                          It is possible to negate spatial predicates:

                                                                                                                                                          -
                                                                                                                                                            +
                                                                                                                                                            • ! boost::geometry::index::covered_by(),
                                                                                                                                                            • @@ -5694,7 +5454,7 @@ The R-tree spatial index. functor which checks if Value should be returned by the query. It's generated by:

                                                                                                                                                              -

                                                                                                                                                              - + Linear r-tree creation algorithm parameters.

                                                                                                                                                              - Header + Header

                                                                                                                                                              #include <boost/geometry/index/parameters.hpp>

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<size_t MaxElements, size_t MinElements>
                                                                                                                                                               struct linear
                                                                                                                                                              @@ -6935,7 +6695,7 @@ Linear r-tree creation algorithm parameters.
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -6988,19 +6748,19 @@ Linear r-tree creation algorithm parameters. boost::geometry::index::quadratic

                                                                                                                                                              - + Quadratic r-tree creation algorithm parameters.

                                                                                                                                                              - Header + Header

                                                                                                                                                              #include <boost/geometry/index/parameters.hpp>

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<size_t MaxElements, size_t MinElements>
                                                                                                                                                               struct quadratic
                                                                                                                                                              @@ -7010,7 +6770,7 @@ Quadratic r-tree creation algorithm parameters.
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -7063,19 +6823,19 @@ Quadratic r-tree creation algorithm parameters. boost::geometry::index::rstar

                                                                                                                                                              - + R*-tree creation algorithm parameters.

                                                                                                                                                              - Header + Header

                                                                                                                                                              #include <boost/geometry/index/parameters.hpp>

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<size_t MaxElements,
                                                                                                                                                                        size_t MinElements,
                                                                                                                                                              @@ -7088,7 +6848,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -7167,19 +6927,19 @@ R*-tree creation algorithm parameters. boost::geometry::index::runtime::linear

                                                                                                                                                              - + Linear r-tree creation algorithm parameters.

                                                                                                                                                              - Header + Header

                                                                                                                                                              #include <boost/geometry/index/parameters.hpp>

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              class linear
                                                                                                                                                               {
                                                                                                                                                              @@ -7188,7 +6948,7 @@ Linear r-tree creation algorithm parameters.
                                                                                                                                                               
                                                                                                                                                              - Constructor(s) + Constructor(s) and destructor
                                                                                                                                                              @@ -7231,11 +6991,11 @@ Linear r-tree creation algorithm parameters. The constructor.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              linear(size_t max_elements, size_t min_elements)
                                                                                                                                                               
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -7303,19 +7063,19 @@ Linear r-tree creation algorithm parameters. boost::geometry::index::runtime::quadratic

                                                                                                                                                              - + Quadratic r-tree creation algorithm parameters.

                                                                                                                                                              - Header + Header

                                                                                                                                                              #include <boost/geometry/index/parameters.hpp>

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              class quadratic
                                                                                                                                                               {
                                                                                                                                                              @@ -7324,7 +7084,7 @@ Quadratic r-tree creation algorithm parameters.
                                                                                                                                                               
                                                                                                                                                              - Constructor(s) + Constructor(s) and destructor
                                                                                                                                                              @@ -7367,11 +7127,11 @@ Quadratic r-tree creation algorithm parameters. The constructor.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              quadratic(size_t max_elements, size_t min_elements)
                                                                                                                                                               
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -7439,19 +7199,19 @@ Quadratic r-tree creation algorithm parameters. boost::geometry::index::runtime::rstar

                                                                                                                                                              - + R*-tree creation algorithm parameters.

                                                                                                                                                              - Header + Header

                                                                                                                                                              #include <boost/geometry/index/parameters.hpp>

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              class rstar
                                                                                                                                                               {
                                                                                                                                                              @@ -7460,7 +7220,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                               
                                                                                                                                                              - Constructor(s) + Constructor(s) and destructor
                                                                                                                                                              @@ -7503,14 +7263,14 @@ R*-tree creation algorithm parameters. The constructor.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              rstar(size_t max_elements,
                                                                                                                                                                     size_t min_elements,
                                                                                                                                                                     size_t overlap_cost_threshold = 0,
                                                                                                                                                                     size_t reinserted_elements = detail::default_rstar_reinserted_elements_d())
                                                                                                                                                               
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -7617,7 +7377,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Functions + Functions
                                                                                                                                                              @@ -7759,7 +7519,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              Generate a predicate defining Value and Geometry relationship. Value @@ -7767,14 +7527,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<typename Geometry>
                                                                                                                                                               detail::covered_by<Geometry> boost::geometry::index::covered_by(Geometry const & g)
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -7809,7 +7569,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -7865,7 +7625,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              Generate a predicate defining Value and Geometry relationship. Value @@ -7873,14 +7633,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<typename Geometry>
                                                                                                                                                               detail::disjoint<Geometry> boost::geometry::index::disjoint(Geometry const & g)
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -7915,7 +7675,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -7971,7 +7731,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              Generate a predicate defining Value and Geometry relationship. Value @@ -7979,14 +7739,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<typename Geometry>
                                                                                                                                                               detail::intersects<Geometry> boost::geometry::index::intersects(Geometry const & g)
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -8021,7 +7781,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -8077,7 +7837,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              Generate a predicate defining Value and Geometry relationship. Value @@ -8085,14 +7845,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<typename Geometry>
                                                                                                                                                               detail::overlaps<Geometry> boost::geometry::index::overlaps(Geometry const & g)
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -8127,7 +7887,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -8183,7 +7943,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              Generate a predicate defining Value and Geometry relationship. Value @@ -8191,14 +7951,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<typename Geometry>
                                                                                                                                                               detail::within<Geometry> boost::geometry::index::within(Geometry const & g)
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -8233,7 +7993,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -8288,7 +8048,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              A wrapper around user-defined functor describing if Value should be returned @@ -8296,14 +8056,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Synopsis + Synopsis
                                                                                                                                                              template<typename Fun>
                                                                                                                                                               detail::value<Fun> boost::geometry::index::value(Fun const & fun)
                                                                                                                                                               
                                                                                                                                                              - Template + Template parameter(s)
                                                                                                                                                              @@ -8338,7 +8098,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Parameter(s) + Parameter(s)
                                                                                                                                                              @@ -8393,7 +8153,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              When nearest predicate is passed to the query, k-nearest neighbour search @@ -8409,7 +8169,7 @@ R*-tree creation algorithm parameters. is calculated. This is done by passing PointRelation. It can be generated by following functions:

                                                                                                                                                              -
                                                                                                                                                                +
                                                                                                                                                                • boost::geometry::index::to_nearest() - default, @@ -8426,7 +8186,7 @@ R*-tree creation algorithm parameters. must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:

                                                                                                                                                                  -
                                                                                                                                                              @@ -8530,7 +8290,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                              - Example + Example

                                                                                                                                                              @@ -8563,7 +8323,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                              - Description + Description

                                                                                                                                                              When nearest predicate is passed to the query, k-nearest neighbour search @@ -8579,7 +8339,7 @@ R*-tree creation algorithm parameters. calculated. This is done by passing PointRelation. It can be generated by following functions:

                                                                                                                                                              -
                                                                                                                                                                +
                                                                                                                                                                • boost::geometry::index::to_nearest() - default, @@ -8596,7 +8356,7 @@ R*-tree creation algorithm parameters. must be between min_distance and max_distance. This is done by passing DistancesPredicates which can be generated by following functions:

                                                                                                                                                                  -
                                                                                                                                                                    +
                                                                                                                                                                    • boost::geometry::index::unbounded() - default, @@ -8615,7 +8375,7 @@ R*-tree creation algorithm parameters. MinRelation and MaxRelation describes bounds and can be generated by following functions:

                                                                                                                                                                      -
                                                                                                                                                                  - Functions + Functions
                                                                                                                                                                  @@ -8848,7 +8608,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Generate a nearest query Point and Value's Indexable relationship while @@ -8861,14 +8621,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename T>
                                                                                                                                                                   detail::to_nearest<T> boost::geometry::index::to_nearest(T const & v)
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -8904,7 +8664,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -8960,7 +8720,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Generate a nearest query Point and Value's Indexable relationship while @@ -8971,14 +8731,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename T>
                                                                                                                                                                   detail::to_centroid<T> boost::geometry::index::to_centroid(T const & v)
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -9014,7 +8774,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -9070,7 +8830,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Generate a nearest query Point and Value's Indexable relationship while @@ -9083,14 +8843,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename T>
                                                                                                                                                                   detail::to_furthest<T> boost::geometry::index::to_furthest(T const & v)
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -9126,7 +8886,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -9182,7 +8942,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Generate a distance predicate. This defines distances bounds which are @@ -9193,14 +8953,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename PointRelation>
                                                                                                                                                                   detail::unbounded<PointRelation> boost::geometry::index::unbounded(PointRelation const & pr)
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -9235,7 +8995,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -9294,7 +9054,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Generate a distance predicate. This defines distances bounds which are @@ -9307,14 +9067,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename PointRelation, typename MinRelation>
                                                                                                                                                                   detail::min_bounded<PointRelation, MinRelation> boost::geometry::index::min_bounded(PointRelation const & pr, MinRelation const & minr)
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -9363,7 +9123,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -9444,7 +9204,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Generate a distance predicate. This defines distances bounds which are @@ -9457,14 +9217,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename PointRelation, typename MaxRelation>
                                                                                                                                                                   detail::max_bounded<PointRelation, MaxRelation> boost::geometry::index::max_bounded(PointRelation const & pr, MaxRelation const & maxr)
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -9513,7 +9273,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -9594,7 +9354,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Generate a distance predicate. This defines distances bounds which are @@ -9608,7 +9368,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename PointRelation,
                                                                                                                                                                            typename MinRelation,
                                                                                                                                                                  @@ -9619,7 +9379,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -9680,7 +9440,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -9778,7 +9538,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                  - Functions + Functions
                                                                                                                                                                  @@ -9863,7 +9623,7 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename DistancesPredicates, typename Predicates>
                                                                                                                                                                   detail::nearest_query<DistancesPredicates, Predicates> boost::geometry::index::adaptors::nearest_queried(DistancesPredicates const & dpred,
                                                                                                                                                                  @@ -9872,7 +9632,7 @@ R*-tree creation algorithm parameters.
                                                                                                                                                                   
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -9963,14 +9723,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename DistancesPredicates>
                                                                                                                                                                   detail::nearest_query<DistancesPredicates, index::detail::empty> boost::geometry::index::adaptors::nearest_queried(DistancesPredicates const & dpred, size_t k)
                                                                                                                                                                   
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -10044,14 +9804,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename Predicates>
                                                                                                                                                                   detail::query<Predicates> boost::geometry::index::adaptors::queried(Predicates const & pred)
                                                                                                                                                                   
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -10105,14 +9865,14 @@ R*-tree creation algorithm parameters.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename Predicates>
                                                                                                                                                                   detail::spatial_query<Predicates> boost::geometry::index::adaptors::spatial_queried(Predicates const & pred)
                                                                                                                                                                   
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -10167,12 +9927,12 @@ R*-tree creation algorithm parameters. boost::geometry::index::translator::def

                                                                                                                                                                  - + The default translator.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  It translates Value object to Indexable object. The default version handles @@ -10181,14 +9941,14 @@ The default translator.

                                                                                                                                                                  - Header + Header

                                                                                                                                                                  #include <boost/geometry/index/translator/def.hpp>

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename Value>
                                                                                                                                                                   struct def
                                                                                                                                                                  @@ -10198,7 +9958,7 @@ The default translator.
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -10237,12 +9997,12 @@ The default translator. boost::geometry::index::translator::index

                                                                                                                                                                  - + The index translator.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  This translator translates from index of an element in an external Container @@ -10254,14 +10014,14 @@ The index translator.

                                                                                                                                                                  - Header + Header

                                                                                                                                                                  #include <boost/geometry/index/translator/index.hpp>

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename Container>
                                                                                                                                                                   class index
                                                                                                                                                                  @@ -10271,7 +10031,7 @@ The index translator.
                                                                                                                                                                   
                                                                                                                                                                  - Template + Template parameter(s)
                                                                                                                                                                  @@ -10306,7 +10066,7 @@ The index translator.
                                                                                                                                                                  - Constructor(s) + Constructor(s) and destructor
                                                                                                                                                                  @@ -10349,18 +10109,11 @@ The index translator. The constructor.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  index(Container const & c)
                                                                                                                                                                   
                                                                                                                                                                  - Modifier(s) -

                                                                                                                                                                  -

                                                                                                                                                                  -
                                                                                                                                                                  explicit
                                                                                                                                                                  -

                                                                                                                                                                  -

                                                                                                                                                                  - - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -10412,7 +10165,7 @@ The index translator.
                                                                                                                                                                  - Functions + Functions
                                                                                                                                                                  @@ -10454,7 +10207,7 @@ The index translator.

                                                                                                                                                                  - Description + Description

                                                                                                                                                                  Returns insert iterator capable to insert values to the container (spatial @@ -10462,14 +10215,14 @@ The index translator.

                                                                                                                                                                  - Synopsis + Synopsis
                                                                                                                                                                  template<typename Container>
                                                                                                                                                                   insert_iterator<Container> boost::geometry::index::inserter(Container & c)
                                                                                                                                                                   
                                                                                                                                                                  - Parameter(s) + Parameter(s)
                                                                                                                                                                  @@ -10515,7 +10268,7 @@ The index translator.
                                                                                                                                                                  - Returns + Returns

                                                                                                                                                                  The insert iterator inserting values to the container. diff --git a/doc/html/geometry_index/r_tree/rtree_quickstart.html b/doc/html/geometry_index/r_tree/rtree_quickstart.html index e0430d0a4..3df712603 100644 --- a/doc/html/geometry_index/r_tree/rtree_quickstart.html +++ b/doc/html/geometry_index/r_tree/rtree_quickstart.html @@ -3,7 +3,7 @@ Quick Start - + @@ -150,7 +150,7 @@

                                                                                                                                                                  - More + More

                                                                                                                                                                  More information about the R-tree implementation, other algorithms and queries diff --git a/doc/html/index.html b/doc/html/index.html index edb363969..fe2d24007 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -3,7 +3,7 @@ Chapter 1. Geometry Index - + @@ -50,7 +50,7 @@

                                                                                                                                                              - +

                                                                                                                                                              Last revised: January 26, 2013 at 01:20:57 GMT

                                                                                                                                                              Last revised: February 06, 2013 at 16:48:24 GMT


                                                                                                                                                              diff --git a/doc/rtree/creation.qbk b/doc/rtree/creation.qbk index 4a70e0ef3..100204841 100644 --- a/doc/rtree/creation.qbk +++ b/doc/rtree/creation.qbk @@ -61,29 +61,29 @@ If comparison of two `__value__`s is required, the default translator: [endsect] -[section Inserting and splitting algorithms (compile-time)] +[section Balancing algorithms (compile-time)] `__value__`s may be inserted to the __rtree__ in many various ways. Final internal structure of the __rtree__ depends on algorithms used in the insertion process and parameters. The most important is -nodes' splitting algorithm. Currently, three well-known types of R-trees may be created. +nodes' balancing algorithm. Currently, three well-known types of R-trees may be created. -Linear - classic __rtree__ using splitting algorithm of linear complexity +Linear - classic __rtree__ using balancing algorithm of linear complexity index::rtree< __value__, index::linear<32, 8> > rt; -Quadratic - classic __rtree__ using splitting algorithm of quadratic complexity +Quadratic - classic __rtree__ using balancing algorithm of quadratic complexity index::rtree< __value__, index::quadratic<32, 8> > rt; -R*-tree - splitting algorithm minimizing nodes' overlap with forced reinsertions +R*-tree - balancing algorithm minimizing nodes' overlap with forced reinsertions index::rtree< __value__, index::rstar<32, 8> > rt; [endsect] -[section Inserting and splitting algorithms (run-time)] +[section Balancing algorithms (run-time)] -Splitting algorithm parameters may be passed to the __rtree__ in run time. +Balancing algorithm parameters may be passed to the __rtree__ in run time. To use run-time versions of the __rtree__ one may pass parameters defined in index::runtime namespace. @@ -125,9 +125,9 @@ which also supports compilers not supporting rvalue references. [endsect] -[section Inserting and removing of Values] +[section Inserting and removing Values] -The following code creates an __rtree__ using quadratic algorithm. +The following code creates an __rtree__ using quadratic balancing algorithm. using namespace boost::geometry; typedef std::pair __value__; diff --git a/doc/rtree/introduction.qbk b/doc/rtree/introduction.qbk index c55196dbe..75e05b0b2 100644 --- a/doc/rtree/introduction.qbk +++ b/doc/rtree/introduction.qbk @@ -52,6 +52,10 @@ Key features of this implementation of the __rtree__ are: * parameters (including maximal and minimal number of elements) may be passed as compile- or run-time parameters - compile-time version is faster, * advanced queries - e.g. search for 5 nearest values further than some minimal distance and intersecting some region but not within the other one. +[heading Dependencies] + +R-tree depends on *Boost.Move*, *Boost.Container*, *Boost.Tuple*. + [heading Contributors] The spatial index was originally started by Federico J. Fernandez during the Google-Of-Summer project 2008, mentored by Hartmut Kaiser. diff --git a/doc/rtree/query.qbk b/doc/rtree/query.qbk index 3ce7f051f..ecc8bef5f 100644 --- a/doc/rtree/query.qbk +++ b/doc/rtree/query.qbk @@ -10,10 +10,10 @@ [section Queries] -Queries returns `Value`s which meets some predicates. Currently supported are three types of predicates: +Queries returns `__value__`s which meets some predicates. Currently supported are three types of predicates: * spatial predicates - defining relationship between stored Values and some Geometry, -* nearest predicates - defining relationship between stored Values and some Point, +* nearest predicates - defining relationship between stored Values and some Point, * value predicate - passing user-defined functor to the query. For example queries may be used to retrieve Values: @@ -27,7 +27,7 @@ For example queries may be used to retrieve Values: There are three ways to perform a query. In the following example `__box__` is used as the predicate, this is a default spatial predicate described in the following section. Following queries returns `__value__`s intersecting some region defined as a `__box__`. -These three methods are: +These three ways are: Method call @@ -51,7 +51,7 @@ Use of pipe operator generating a range [section Spatial queries] -Spatial query returns Values which are related somehow to a geometry or some number of geometries. +Spatial query returns `__value__`s which are related somehow to a geometry or some number of geometries. Names of spatial predicates corresponds to names of __boost_geometry__ algorithms. Examples of some basic queries may be found in tables below. The query region and result `Value`s are orange. @@ -85,9 +85,9 @@ All predicates may be negated, e.g.: [section Nearest neighbours queries] -Nearest neighbours queries returns `Value`s which are closest to some point in space. -Additionally it is possible to pass distance predicates in order to define how the distance -to the `Value` should be calculated or minimal and maximal distances. The examples of some knn +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. @@ -99,7 +99,7 @@ The query point, region and result Values are orange. [section k nearest neighbours] There are three ways of performing knn queries. Following queries returns -k `__value__`s closest to some point in space. For `__box__`es +`k` `__value__`s closest to some point in space. For `__box__`es `__indexable__`s the distance to the nearest point is calculated by default. Method call diff --git a/include/boost/geometry/index/detail/rtree/node/node_d_mem_dynamic.hpp b/include/boost/geometry/index/detail/rtree/node/node_d_mem_dynamic.hpp index 0f100de46..c036554f8 100644 --- a/include/boost/geometry/index/detail/rtree/node/node_d_mem_dynamic.hpp +++ b/include/boost/geometry/index/detail/rtree/node/node_d_mem_dynamic.hpp @@ -11,7 +11,7 @@ #ifndef BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_NODE_DEFAULT_HPP #define BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_NODE_DEFAULT_HPP -#include +#include #include @@ -23,7 +23,7 @@ template : public dynamic_node { - typedef std::vector< + typedef boost::container::vector< std::pair *>, typename Allocators::internal_node_elements_allocator_type > elements_type; @@ -42,7 +42,7 @@ template : public dynamic_node { - typedef std::vector< + typedef boost::container::vector< Value, typename Allocators::leaf_elements_allocator_type > elements_type; @@ -146,7 +146,7 @@ elements(Node const& n) template struct container_from_elements_type { - typedef std::vector type; + typedef boost::container::vector type; }; // allocators diff --git a/include/boost/geometry/index/detail/rtree/node/node_d_mem_static.hpp b/include/boost/geometry/index/detail/rtree/node/node_d_mem_static.hpp index 9634341a3..a806d5395 100644 --- a/include/boost/geometry/index/detail/rtree/node/node_d_mem_static.hpp +++ b/include/boost/geometry/index/detail/rtree/node/node_d_mem_static.hpp @@ -12,7 +12,7 @@ #define BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_NODE_DEFAULT_STATIC_HPP #include -#include +#include namespace boost { namespace geometry { namespace index { @@ -22,12 +22,13 @@ template : public dynamic_node { - typedef detail::static_vector< + typedef detail::varray< std::pair< Box, dynamic_node * >, - Parameters::max_elements + 1 + Parameters::max_elements + 1, + typename Allocators::internal_node_elements_allocator_type > elements_type; template @@ -43,7 +44,11 @@ template : public dynamic_node { - typedef detail::static_vector elements_type; + typedef detail::varray< + Value, + Parameters::max_elements + 1, + typename Allocators::leaf_elements_allocator_type + > elements_type; template inline dynamic_leaf(Dummy) {} @@ -81,10 +86,10 @@ struct visitor -struct container_from_elements_type, NewValue> +template +struct container_from_elements_type, NewValue> { - typedef detail::static_vector type; + typedef detail::varray type; }; // allocators @@ -107,6 +112,14 @@ public: typename leaf::type >::other leaf_allocator_type; + typedef typename allocator_type::template rebind< + std::pair::type *> + >::other internal_node_elements_allocator_type; + + typedef typename allocator_type::template rebind< + Value + >::other leaf_elements_allocator_type; + inline allocators() : allocator() , internal_node_allocator() diff --git a/include/boost/geometry/index/detail/rtree/node/node_s_mem_dynamic.hpp b/include/boost/geometry/index/detail/rtree/node/node_s_mem_dynamic.hpp index d8dac9287..53a809583 100644 --- a/include/boost/geometry/index/detail/rtree/node/node_s_mem_dynamic.hpp +++ b/include/boost/geometry/index/detail/rtree/node/node_s_mem_dynamic.hpp @@ -11,7 +11,7 @@ #ifndef BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_NODE_DEFAULT_VARIANT_HPP #define BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_NODE_DEFAULT_VARIANT_HPP -#include +#include #include @@ -24,7 +24,7 @@ namespace detail { namespace rtree { template struct static_internal_node { - typedef std::vector< + typedef boost::container::vector< std::pair< Box, typename node::type * @@ -42,7 +42,7 @@ struct static_internal_node template struct static_leaf { - typedef std::vector< + typedef boost::container::vector< Value, typename Allocators::leaf_elements_allocator_type > elements_type; diff --git a/include/boost/geometry/index/detail/rtree/node/node_s_mem_static.hpp b/include/boost/geometry/index/detail/rtree/node/node_s_mem_static.hpp index 64ba6b0c5..0aacd1106 100644 --- a/include/boost/geometry/index/detail/rtree/node/node_s_mem_static.hpp +++ b/include/boost/geometry/index/detail/rtree/node/node_s_mem_static.hpp @@ -11,7 +11,7 @@ #ifndef BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_NODE_DEFAULT_STATIC_VARIANT_HPP #define BOOST_GEOMETRY_INDEX_DETAIL_RTREE_NODE_NODE_DEFAULT_STATIC_VARIANT_HPP -#include +#include #include @@ -24,12 +24,13 @@ namespace detail { namespace rtree { template struct static_internal_node { - typedef detail::static_vector< + typedef detail::varray< std::pair< Box, typename node::type * >, - Parameters::max_elements + 1 + Parameters::max_elements + 1, + typename Allocators::internal_node_elements_allocator_type > elements_type; template @@ -41,7 +42,11 @@ struct static_internal_node struct static_leaf { - typedef detail::static_vector elements_type; + typedef detail::varray< + Value, + Parameters::max_elements + 1, + typename Allocators::leaf_elements_allocator_type + > elements_type; template inline static_leaf(Dummy) {} diff --git a/include/boost/geometry/index/detail/rtree/visitors/insert.hpp b/include/boost/geometry/index/detail/rtree/visitors/insert.hpp index 84b25398a..10e3f5ff3 100644 --- a/include/boost/geometry/index/detail/rtree/visitors/insert.hpp +++ b/include/boost/geometry/index/detail/rtree/visitors/insert.hpp @@ -120,7 +120,7 @@ protected: typedef rtree::node_auto_ptr node_auto_ptr; public: - typedef index::detail::static_vector, 1> nodes_container_type; + typedef index::detail::varray, 1> nodes_container_type; template static inline void apply(nodes_container_type & additional_nodes, diff --git a/include/boost/geometry/index/detail/static_vector.hpp b/include/boost/geometry/index/detail/varray.hpp similarity index 94% rename from include/boost/geometry/index/detail/static_vector.hpp rename to include/boost/geometry/index/detail/varray.hpp index 7f336d70c..c08de73da 100644 --- a/include/boost/geometry/index/detail/static_vector.hpp +++ b/include/boost/geometry/index/detail/varray.hpp @@ -6,8 +6,8 @@ // 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_DETAIL_STATIC_VECTOR_HPP -#define BOOST_GEOMETRY_INDEX_DETAIL_STATIC_VECTOR_HPP +#ifndef BOOST_GEOMETRY_INDEX_DETAIL_VARRAY_HPP +#define BOOST_GEOMETRY_INDEX_DETAIL_VARRAY_HPP #include #include @@ -32,56 +32,65 @@ namespace boost { namespace geometry { namespace index { namespace detail { -template -class static_vector +template +struct varray_default_alloc +{ + typedef std::size_t size_type; + typedef std::ptrdiff_t difference_type; + typedef V * pointer; + typedef const V * const_pointer; +}; + +template > +class varray { BOOST_MPL_ASSERT_MSG( (0 < Capacity), INVALID_CAPACITY, - (static_vector)); + (varray)); public: typedef Value value_type; - typedef std::size_t size_type; typedef Value& reference; typedef Value const& const_reference; - typedef Value * pointer; - typedef const Value* const_pointer; - typedef Value* iterator; - typedef const Value * const_iterator; + typedef typename Al::size_type size_type; + typedef typename Al::difference_type difference_type; + typedef typename Al::pointer pointer; + typedef typename Al::const_pointer const_pointer; + typedef pointer iterator; + typedef const_pointer const_iterator; typedef boost::reverse_iterator reverse_iterator; typedef boost::reverse_iterator const_reverse_iterator; - typedef typename boost::iterator_difference::type difference_type; // nothrow - static_vector() + varray() : m_size(0) {} // strong - explicit static_vector(size_type count) + explicit varray(size_type count) : m_size(0) { resize(count); // may throw } // strong - static_vector(size_type count, value_type const& value) + varray(size_type count, value_type const& value) : m_size(0) { resize(count, value); // may throw } // strong - static_vector(static_vector const& other) + varray(varray const& other) : m_size(other.m_size) { this->uninitialized_copy(other.begin(), other.end(), this->begin()); // may throw } // strong - template - static_vector(static_vector const& other) + template + varray(varray const& other) : m_size(other.m_size) { check_capacity(other.m_size); @@ -91,14 +100,14 @@ public: // strong template - static_vector(Iterator first, Iterator last) + varray(Iterator first, Iterator last) : m_size(0) { assign(first, last); // may throw } // basic - static_vector & operator=(static_vector const& other) + varray & operator=(varray const& other) { assign(other.begin(), other.end()); // may throw @@ -106,8 +115,8 @@ public: } // basic - template - static_vector & operator=(static_vector const& other) + template + varray & operator=(varray const& other) { assign(other.begin(), other.end()); // may throw @@ -115,7 +124,7 @@ public: } // nothrow - ~static_vector() + ~varray() { this->destroy(this->begin(), this->end()); } @@ -380,8 +389,8 @@ public: const_reverse_iterator crend() const { return reverse_iterator(this->begin()); } // nothrow - size_type capacity() const { return Capacity; } - size_type max_size() const { return Capacity; } + static size_type capacity() { return Capacity; } + static size_type max_size() { return Capacity; } size_type size() const { return m_size; } bool empty() const { return 0 == m_size; } @@ -787,14 +796,14 @@ private: );*/ } - Value * ptr() + pointer ptr() { - return (reinterpret_cast(m_storage.address())); + return pointer(m_storage.address()); } - const Value * ptr() const + const_pointer ptr() const { - return (reinterpret_cast(m_storage.address())); + return const_pointer(m_storage.address()); } boost::aligned_storage::value> m_storage; @@ -803,4 +812,4 @@ private: }}}} // namespace boost::geometry::index::detail -#endif // BOOST_GEOMETRY_INDEX_DETAIL_STATIC_VECTOR_HPP +#endif // BOOST_GEOMETRY_INDEX_DETAIL_VARRAY_HPP diff --git a/include/boost/geometry/index/rtree.hpp b/include/boost/geometry/index/rtree.hpp index 8f33f8832..2e00ec1c7 100644 --- a/include/boost/geometry/index/rtree.hpp +++ b/include/boost/geometry/index/rtree.hpp @@ -116,12 +116,12 @@ public: /*! \brief The Indexable type to which Value is translated. */ typedef typename translator::indexable_type::type indexable_type; /*! \brief The Box type used by the R-tree. */ - typedef typename index::detail::default_box_type::type envelope_type; + typedef typename index::detail::default_box_type::type bounds_type; #if !defined(BOOST_GEOMETRY_INDEX_ENABLE_DEBUG_INTERFACE) private: #endif - typedef envelope_type box_type; + typedef bounds_type box_type; typedef typename detail::rtree::options_type::type options_type; typedef typename options_type::node_tag node_tag; typedef detail::rtree::allocators allocators_type; @@ -1113,7 +1113,7 @@ public: \par Throws Nothing. */ - inline envelope_type const& envelope() const + inline bounds_type const& bounds() const { return m_box; } @@ -1878,7 +1878,7 @@ It calls \c rtree::empty(). template inline bool empty(rtree const& tree) { - return tree.empty(); + return tree.bounds(); } /*! @@ -1893,82 +1893,12 @@ It calls \c rtree::envelope(). \return The box containing all stored values or an invalid box. */ template -inline typename rtree::box_type const& -envelope(rtree const& tree) +inline typename rtree::bounds_type const& +bounds(rtree const& tree) { - return tree.envelope(); + return tree.bounds(); } }}} // namespace boost::geometry::index -// Rtree adaptation to Box concept - -namespace boost { namespace geometry { - -// Traits specializations for box above -#ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS -namespace traits -{ - -template -struct tag< index::rtree > -{ - typedef box_tag type; -}; - -template -struct point_type< index::rtree > -{ - typedef typename geometry::point_type< - typename index::rtree::box_type - >::type type; -}; - -template -struct indexed_access, min_corner, Dimension> -{ - typedef typename geometry::coordinate_type< - typename geometry::point_type< - index::rtree - >::type - >::type coordinate_type; - - static inline coordinate_type get(index::rtree const& tree) - { - return geometry::get(tree.envelope()); - } - - static inline void set(index::rtree & tree, - coordinate_type const& value) - { - return geometry::set(tree.envelope(), value); - } -}; - -template -struct indexed_access, max_corner, Dimension> -{ - typedef typename geometry::coordinate_type< - typename geometry::point_type< - index::rtree - >::type - >::type coordinate_type; - - static inline coordinate_type get(index::rtree const& tree) - { - return geometry::get(tree.envelope()); - } - - static inline void set(index::rtree & tree, - coordinate_type const& value) - { - return geometry::set(tree.envelope(), value); - } -}; - -} // namespace traits -#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS - -}} //namespace boost::geometry - #endif // BOOST_GEOMETRY_INDEX_RTREE_HPP diff --git a/test/rtree/rtree_exceptions.cpp b/test/rtree/rtree_exceptions.cpp index 85a8e130e..edb6d5560 100644 --- a/test/rtree/rtree_exceptions.cpp +++ b/test/rtree/rtree_exceptions.cpp @@ -104,61 +104,61 @@ void test_rtree_elements_exceptions(Parameters const& parameters = Parameters()) for ( size_t i = 0 ; i < 100 ; i += 2 ) { - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(10000); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(10000); Tree tree(parameters); - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(i); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(i); - BOOST_CHECK_THROW( tree.insert(input.begin(), input.end()), throwing_static_vector_exception ); + BOOST_CHECK_THROW( tree.insert(input.begin(), input.end()), throwing_varray_exception ); } for ( size_t i = 0 ; i < 50 ; i += 2 ) { - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(10000); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(10000); Tree tree(parameters); tree.insert(input.begin(), input.end()); - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(i); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(i); - BOOST_CHECK_THROW( tree.remove(input.begin(), input.end()), throwing_static_vector_exception ); + BOOST_CHECK_THROW( tree.remove(input.begin(), input.end()), throwing_varray_exception ); } for ( size_t i = 0 ; i < 50 ; i += 2 ) { - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(10000); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(10000); Tree tree(parameters); tree.insert(input.begin(), input.end()); - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(i); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(i); - BOOST_CHECK_THROW( Tree tree2(tree), throwing_static_vector_exception ); + BOOST_CHECK_THROW( Tree tree2(tree), throwing_varray_exception ); } for ( size_t i = 0 ; i < 50 ; i += 2 ) { - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(10000); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(10000); Tree tree(parameters); Tree tree2(parameters); tree.insert(input.begin(), input.end()); - throwing_static_vector_settings::reset_calls_counter(); - throwing_static_vector_settings::set_max_calls(i); + throwing_varray_settings::reset_calls_counter(); + throwing_varray_settings::set_max_calls(i); - BOOST_CHECK_THROW(tree2 = tree, throwing_static_vector_exception ); + BOOST_CHECK_THROW(tree2 = tree, throwing_varray_exception ); } } diff --git a/test/rtree/test_rtree.hpp b/test/rtree/test_rtree.hpp index 40398196d..10a7a662c 100644 --- a/test/rtree/test_rtree.hpp +++ b/test/rtree/test_rtree.hpp @@ -1293,26 +1293,8 @@ void test_rtree_count(Parameters const& parameters) // test rtree box -template -struct test_geometry_algorithms -{ - template - static void apply(Rtree const& , Box const& ) {} -}; - -template <> -struct test_geometry_algorithms<2> -{ - template - static void apply(Rtree const& t, Box const& b) - { - BOOST_CHECK(bg::area(t) == bg::area(b)); - BOOST_CHECK(bg::perimeter(t) == bg::perimeter(b)); - } -}; - template -void test_rtree_envelope(Parameters const& parameters) +void test_rtree_bounds(Parameters const& parameters) { typedef bgi::rtree Tree; typedef typename Tree::box_type B; @@ -1325,24 +1307,15 @@ void test_rtree_envelope(Parameters const& parameters) std::vector input; B qbox; - BOOST_CHECK(bg::equals(t.envelope(), b)); + BOOST_CHECK(bg::equals(t.bounds(), b)); generate_rtree(t, input, qbox); BOOST_FOREACH(Value const& v, input) bg::expand(b, t.translator()(v)); - BOOST_CHECK(bg::equals(t.envelope(), b)); - - { - using namespace bg; - B temp_b; - envelope(t, temp_b); - BOOST_CHECK(equals(temp_b, b)); - } - BOOST_CHECK(bg::equals(bg::return_envelope(t), b)); - BOOST_CHECK(bg::equals(bg::return_centroid

                                                                                                                                                              (t), bg::return_centroid

                                                                                                                                                              (b))); - test_geometry_algorithms::value>::apply(t, b); + BOOST_CHECK(bg::equals(t.bounds(), b)); + BOOST_CHECK(bg::equals(t.bounds(), bgi::bounds(t))); size_t s = input.size(); while ( s/2 < input.size() && !input.empty() ) @@ -1355,21 +1328,21 @@ void test_rtree_envelope(Parameters const& parameters) BOOST_FOREACH(Value const& v, input) bg::expand(b, t.translator()(v)); - BOOST_CHECK(bg::equals(t.envelope(), b)); + BOOST_CHECK(bg::equals(t.bounds(), b)); Tree t2(t); - BOOST_CHECK(bg::equals(t2.envelope(), b)); + BOOST_CHECK(bg::equals(t2.bounds(), b)); t2.clear(); t2 = t; - BOOST_CHECK(bg::equals(t2.envelope(), b)); + BOOST_CHECK(bg::equals(t2.bounds(), b)); t2.clear(); t2 = boost::move(t); - BOOST_CHECK(bg::equals(t2.envelope(), b)); + BOOST_CHECK(bg::equals(t2.bounds(), b)); t.clear(); bg::assign_inverse(b); - BOOST_CHECK(bg::equals(t.envelope(), b)); + BOOST_CHECK(bg::equals(t.bounds(), b)); } // run all tests for one Algorithm for some number of rtrees @@ -1393,7 +1366,7 @@ void test_rtree_for_point(Parameters const& parameters = Parameters()) test_count_rtree_values(parameters); test_rtree_count(parameters); - test_rtree_envelope(parameters); + test_rtree_bounds(parameters); } template @@ -1413,7 +1386,7 @@ void test_rtree_for_box(Parameters const& parameters = Parameters()) test_count_rtree_values(parameters); test_rtree_count(parameters); - test_rtree_envelope(parameters); + test_rtree_bounds(parameters); } #endif diff --git a/test/rtree/test_rtree_exceptions.hpp b/test/rtree/test_rtree_exceptions.hpp index b90f217c8..af62ce201 100644 --- a/test/rtree/test_rtree_exceptions.hpp +++ b/test/rtree/test_rtree_exceptions.hpp @@ -75,7 +75,7 @@ template : public dynamic_node { - typedef throwing_static_vector< + typedef throwing_varray< std::pair< Box, dynamic_node * @@ -96,7 +96,7 @@ template : public dynamic_node { - typedef throwing_static_vector elements_type; + typedef throwing_varray elements_type; template inline dynamic_leaf(Dummy) {} @@ -109,9 +109,9 @@ struct dynamic_leaf -struct container_from_elements_type, NewValue> +struct container_from_elements_type, NewValue> { - typedef throwing_static_vector type; + typedef throwing_varray type; }; // nodes traits diff --git a/test/rtree/test_throwing.hpp b/test/rtree/test_throwing.hpp index 1dc56f1a9..819d3e4b9 100644 --- a/test/rtree/test_throwing.hpp +++ b/test/rtree/test_throwing.hpp @@ -141,20 +141,20 @@ struct generate_value< std::pair, throwing_value> > // //}}} // namespace boost::geometry::index -#include +#include -struct throwing_static_vector_exception : public std::exception +struct throwing_varray_exception : public std::exception { const char * what() const throw() { return "static vector exception."; } }; -struct throwing_static_vector_settings +struct throwing_varray_settings { static void throw_if_required() { // throw if counter meets max count if ( get_max_calls_ref() <= get_calls_counter_ref() ) - throw throwing_static_vector_exception(); + throw throwing_varray_exception(); else ++get_calls_counter_ref(); } @@ -167,10 +167,10 @@ struct throwing_static_vector_settings }; template -class throwing_static_vector - : public boost::geometry::index::detail::static_vector +class throwing_varray + : public boost::geometry::index::detail::varray { - typedef boost::geometry::index::detail::static_vector container; + typedef boost::geometry::index::detail::varray container; public: typedef typename container::value_type value_type; @@ -184,13 +184,13 @@ public: inline void resize(size_type s) { - throwing_static_vector_settings::throw_if_required(); + throwing_varray_settings::throw_if_required(); container::resize(s); } void push_back(Element const& v) { - throwing_static_vector_settings::throw_if_required(); + throwing_varray_settings::throw_if_required(); container::push_back(v); } }; diff --git a/tests/additional_speed.cpp b/tests/additional_speed.cpp index 79704fa54..1d984d6d7 100644 --- a/tests/additional_speed.cpp +++ b/tests/additional_speed.cpp @@ -55,7 +55,7 @@ int main() typedef bgi::rtree > RT; //typedef bgi::rtree RT; //typedef bgi::rtree > RT; - // typedef bgi::rtree RT; + //typedef bgi::rtree RT; //typedef bgi::rtree > RT; //typedef bgi::rtree RT;