1[/ Generated by doxygen_xml2qbk 1.1.1, don't change, will be overwritten automatically] 2[/ Generated from xml/group__rtree__functions.xml] 3[section:group__rtree__functions R-tree free functions (boost::geometry::index::)] 4[heading Functions] 5[table 6[[Function][Description]] 7[[[link group__rtree__functions_1gada4f62111ed22eb2860ea30995c1ce60 `insert(rtree<...> &, Value const &)`]][Insert a value to the index. ]] 8[[[link group__rtree__functions_1ga056469ea699e609e67762fe1b789997f `insert(rtree<...> &, Iterator, Iterator)`]][Insert a range of values to the index. ]] 9[[[link group__rtree__functions_1gab4edad000d63eb103f2dad3813ceb2b3 `insert(rtree<...> &, ConvertibleOrRange const &)`]][Insert a value created using convertible object or a range of values to the index. ]] 10[[[link group__rtree__functions_1gaf353d90fd933e6110b031f63166fb45a `remove(rtree<...> &, Value const &)`]][Remove a value from the container. ]] 11[[[link group__rtree__functions_1gaa460a8985496cf133f63f245527ac6e7 `remove(rtree<...> &, Iterator, Iterator)`]][Remove a range of values from the container. ]] 12[[[link group__rtree__functions_1ga700c922f8b4d5ebd073e999e12b55249 `remove(rtree<...> &, ConvertibleOrRange const &)`]][Remove a value corresponding to an object convertible to it or a range of values from the container. ]] 13[[[link group__rtree__functions_1gadb43b211d5d743ebe2ef256328286e95 `query(rtree<...> const &, Predicates const &, OutIter)`]][Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box. ]] 14[[[link group__rtree__functions_1ga45c2b7b112bf730d10367e10df62aa3c `qbegin(rtree<...> const &, Predicates const &)`]][Returns the query iterator pointing at the begin of the query range. ]] 15[[[link group__rtree__functions_1ga5c9a1eb0421bf2c702392247d48143e5 `qend(rtree<...> const &)`]][Returns the query iterator pointing at the end of the query range. ]] 16[[[link group__rtree__functions_1ga2467dc6ac90303496abd6ebd136eba18 `begin(rtree<...> const &)`]][Returns the iterator pointing at the begin of the rtree values range. ]] 17[[[link group__rtree__functions_1ga8fd1e53d8492643cbc9840ff715bb736 `end(rtree<...> const &)`]][Returns the iterator pointing at the end of the rtree values range. ]] 18[[[link group__rtree__functions_1gabaca6c24c3838a8164aa3700c459e7a4 `clear(rtree<...> &)`]][Remove all values from the index. ]] 19[[[link group__rtree__functions_1gaa19a09e7b5f0a86a4b74ef2342de1d68 `size(rtree<...> const &)`]][Get the number of values stored in the index. ]] 20[[[link group__rtree__functions_1gaba44e2fb12fdc7b528bfee56a88e0844 `empty(rtree<...> const &)`]][Query if there are no values stored in the index. ]] 21[[[link group__rtree__functions_1ga4e43e7720c66e88959ff511a7462a3ff `bounds(rtree<...> const &)`]][Get the box containing all stored values or an invalid box if the index has no values. ]] 22[[[link group__rtree__functions_1gaa1250318a78d7e27ba8f3537eb0ddb3f `swap(rtree<...> &, rtree<...> &)`]][Exchanges the contents of the container with those of other. ]] 23] 24 25[#group__rtree__functions_1gada4f62111ed22eb2860ea30995c1ce60] 26[section insert(rtree<...> &, Value const &)] 27'''<indexterm><primary>insert</primary></indexterm>''' 28Insert a value to the index. 29 30[heading Description] 31It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1ad47980467e66b8644df18a480dbf9d86 rtree::insert(value_type const&)]].[heading Synopsis] 32[pre 33`template<``typename Value``,` 34 `typename Parameters``,` 35 `typename IndexableGetter``,` 36 `typename EqualTo``,` 37 `typename Allocator``>` 38`void` `insert``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `tree``,` `Value const &` `v``)` 39] 40 41[heading Parameter(s)] 42[table 43[[Type][Name][Description]] 44[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `tree` ][The spatial index. ]] 45[[`Value const &`][ `v` ][The value which will be stored in the index. ]] 46] 47[endsect] 48 49[#group__rtree__functions_1ga056469ea699e609e67762fe1b789997f] 50[section insert(rtree<...> &, Iterator, Iterator)] 51'''<indexterm><primary>insert</primary></indexterm>''' 52Insert a range of values to the index. 53 54[heading Description] 55It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a60d4c8790fd8810ff8b57f049e6bed8d rtree::insert(Iterator, Iterator)]].[heading Synopsis] 56[pre 57`template<``typename Value``,` 58 `typename Parameters``,` 59 `typename IndexableGetter``,` 60 `typename EqualTo``,` 61 `typename Allocator``,` 62 `typename Iterator``>` 63`void` `insert``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `tree``,` 64 `Iterator` `first``,` 65 `Iterator` `last``)` 66] 67 68[heading Parameter(s)] 69[table 70[[Type][Name][Description]] 71[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `tree` ][The spatial index. ]] 72[[`Iterator`][ `first` ][The beginning of the range of values. ]] 73[[`Iterator`][ `last` ][The end of the range of values. ]] 74] 75[endsect] 76 77[#group__rtree__functions_1gab4edad000d63eb103f2dad3813ceb2b3] 78[section insert(rtree<...> &, ConvertibleOrRange const &)] 79'''<indexterm><primary>insert</primary></indexterm>''' 80Insert a value created using convertible object or a range of values to the index. 81 82[heading Description] 83It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a5db294b14ebf1319edcfc92e78c8167e rtree::insert(ConvertibleOrRange const&)]].[heading Synopsis] 84[pre 85`template<``typename Value``,` 86 `typename Parameters``,` 87 `typename IndexableGetter``,` 88 `typename EqualTo``,` 89 `typename Allocator``,` 90 `typename ConvertibleOrRange``>` 91`void` `insert``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `tree``,` `ConvertibleOrRange const &` `conv_or_rng``)` 92] 93 94[heading Parameter(s)] 95[table 96[[Type][Name][Description]] 97[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `tree` ][The spatial index. ]] 98[[`ConvertibleOrRange const &`][ `conv_or_rng` ][The object of type convertible to value_type or a range of values. ]] 99] 100[endsect] 101 102[#group__rtree__functions_1gaf353d90fd933e6110b031f63166fb45a] 103[section remove(rtree<...> &, Value const &)] 104'''<indexterm><primary>remove</primary></indexterm>''' 105Remove a value from the container. 106 107[heading Description] 108Remove a value from the container. In contrast to the [^`std::set`] or [^`std::map erase()`] method this function removes only one value from the container. 109 110It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a1ce933b0b833faec5349bfc27bde15d4 rtree::remove(value_type const&)]].[heading Synopsis] 111[pre 112`template<``typename Value``,` 113 `typename Parameters``,` 114 `typename IndexableGetter``,` 115 `typename EqualTo``,` 116 `typename Allocator``>` 117`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::size_type` `remove``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `tree``,` `Value const &` `v``)` 118] 119 120[heading Parameter(s)] 121[table 122[[Type][Name][Description]] 123[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `tree` ][The spatial index. ]] 124[[`Value const &`][ `v` ][The value which will be removed from the index.]] 125] 126[heading Returns] 1271 if value was removed, 0 otherwise. 128[endsect] 129 130[#group__rtree__functions_1gaa460a8985496cf133f63f245527ac6e7] 131[section remove(rtree<...> &, Iterator, Iterator)] 132'''<indexterm><primary>remove</primary></indexterm>''' 133Remove a range of values from the container. 134 135[heading Description] 136Remove a range of values from the container. In contrast to the [^`std::set`] or [^`std::map erase()`] method it doesn't take iterators pointing to values stored in this container. It removes values equal to these passed as a range. Furthermore this function removes only one value for each one passed in the range, not all equal values. 137 138It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1aa97084231d17564a94f0142d095cecaa rtree::remove(Iterator, Iterator)]].[heading Synopsis] 139[pre 140`template<``typename Value``,` 141 `typename Parameters``,` 142 `typename IndexableGetter``,` 143 `typename EqualTo``,` 144 `typename Allocator``,` 145 `typename Iterator``>` 146`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::size_type` `remove``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `tree``,` 147 `Iterator` `first``,` 148 `Iterator` `last``)` 149] 150 151[heading Parameter(s)] 152[table 153[[Type][Name][Description]] 154[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `tree` ][The spatial index. ]] 155[[`Iterator`][ `first` ][The beginning of the range of values. ]] 156[[`Iterator`][ `last` ][The end of the range of values.]] 157] 158[heading Returns] 159The number of removed values. 160[endsect] 161 162[#group__rtree__functions_1ga700c922f8b4d5ebd073e999e12b55249] 163[section remove(rtree<...> &, ConvertibleOrRange const &)] 164'''<indexterm><primary>remove</primary></indexterm>''' 165Remove a value corresponding to an object convertible to it or a range of values from the container. 166 167[heading Description] 168Remove a value corresponding to an object convertible to it or a range of values from the container. In contrast to the [^`std::set`] or [^`std::map erase()`] method it removes values equal to these passed as a range. Furthermore this method removes only one value for each one passed in the range, not all equal values. 169 170It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a320cd1861ba7b43364ed53e1f93a4411 rtree::remove(ConvertibleOrRange const&)]].[heading Synopsis] 171[pre 172`template<``typename Value``,` 173 `typename Parameters``,` 174 `typename IndexableGetter``,` 175 `typename EqualTo``,` 176 `typename Allocator``,` 177 `typename ConvertibleOrRange``>` 178`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::size_type` `remove``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `tree``,` `ConvertibleOrRange const &` `conv_or_rng``)` 179] 180 181[heading Parameter(s)] 182[table 183[[Type][Name][Description]] 184[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `tree` ][The spatial index. ]] 185[[`ConvertibleOrRange const &`][ `conv_or_rng` ][The object of type convertible to value_type or the range of values.]] 186] 187[heading Returns] 188The number of removed values. 189[endsect] 190 191[#group__rtree__functions_1gadb43b211d5d743ebe2ef256328286e95] 192[section query(rtree<...> const &, Predicates const &, OutIter)] 193'''<indexterm><primary>query</primary></indexterm>''' 194Finds values meeting passed predicates e.g. nearest to some Point and/or intersecting some Box. 195 196[heading Description] 197This query function performs spatial and k-nearest neighbor searches. It allows to pass a set of predicates. Values will be returned only if all predicates are met. 198 199[*Spatial predicates] 200 201Spatial predicates may be generated by one of the functions listed below: 202 203* [^[link group__predicates_1gac52a6557110425d4ece53fbd6f9ff866 boost::geometry::index::contains()]], 204* [^[link group__predicates_1ga02dbb7cca47de0b921ef96af464d9590 boost::geometry::index::covered_by()]], 205* [^[link group__predicates_1ga0e92e4a20dd19185584fe85847439108 boost::geometry::index::covers()]], 206* [^[link group__predicates_1ga0aa114ab16f40c8caeb3338adba5d6da boost::geometry::index::disjoint()]], 207* [^[link group__predicates_1ga78cb2ef221b951867c591ffb51b7d8c5 boost::geometry::index::intersects()]], 208* [^[link group__predicates_1ga4a6d33e6f61ad5bff3bdee50a972d54b boost::geometry::index::overlaps()]], 209* [^[link group__predicates_1gaabce901b82af2aab10ebbd0dda12f4d5 boost::geometry::index::within()]], 210 211 212It is possible to negate spatial predicates: 213 214* [^`! `[link group__predicates_1gac52a6557110425d4ece53fbd6f9ff866 boost::geometry::index::contains()]], 215* [^`! `[link group__predicates_1ga02dbb7cca47de0b921ef96af464d9590 boost::geometry::index::covered_by()]], 216* [^`! `[link group__predicates_1ga0e92e4a20dd19185584fe85847439108 boost::geometry::index::covers()]], 217* [^`! `[link group__predicates_1ga0aa114ab16f40c8caeb3338adba5d6da boost::geometry::index::disjoint()]], 218* [^`! `[link group__predicates_1ga78cb2ef221b951867c591ffb51b7d8c5 boost::geometry::index::intersects()]], 219* [^`! `[link group__predicates_1ga4a6d33e6f61ad5bff3bdee50a972d54b boost::geometry::index::overlaps()]], 220* [^`! `[link group__predicates_1gaabce901b82af2aab10ebbd0dda12f4d5 boost::geometry::index::within()]] 221 222[*Satisfies predicate] 223 224This is a special kind of predicate which allows to pass a user-defined function or function object which checks if Value should be returned by the query. It's generated by: 225 226* [^[link group__predicates_1ga3213772dd3e54ad03340c2ca66b4f58c boost::geometry::index::satisfies()]]. 227 228[*Nearest predicate] 229 230If the nearest predicate is passed a k-nearest neighbor search will be performed. This query will result in returning k values to the output iterator. Only one nearest predicate may be passed to the query. It may be generated by: 231 232* [^[link group__predicates_1ga8772d9d3e5b12b3292f7d94d47310e3e boost::geometry::index::nearest()]]. 233 234[*Connecting predicates] 235 236Predicates may be passed together connected with [^`operator&&()`].[heading Synopsis] 237[pre 238`template<``typename Value``,` 239 `typename Parameters``,` 240 `typename IndexableGetter``,` 241 `typename EqualTo``,` 242 `typename Allocator``,` 243 `typename Predicates``,` 244 `typename OutIter``>` 245`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::size_type` `query``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``,` 246 `Predicates const &` `predicates``,` 247 `OutIter` `out_it``)` 248] 249 250[heading Parameter(s)] 251[table 252[[Type][Name][Description]] 253[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &`][ `tree` ][The rtree. ]] 254[[`Predicates const &`][ `predicates` ][Predicates. ]] 255[[`OutIter`][ `out_it` ][The output iterator, e.g. generated by std::back_inserter().]] 256] 257[heading Returns] 258The number of values found. 259[heading Example] 260 261`` 262// return elements intersecting box 263bgi::query(tree, bgi::intersects(box), std::back_inserter(result)); 264// return elements intersecting poly but not within box 265bgi::query(tree, bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result)); 266// return elements overlapping box and meeting my_fun value predicate 267bgi::query(tree, bgi::overlaps(box) && bgi::satisfies(my_fun), std::back_inserter(result)); 268// return 5 elements nearest to pt and elements are intersecting box 269bgi::query(tree, bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result)); 270 271// For each found value do_something (it is a type of function object) 272tree.query(bgi::intersects(box), 273 boost::make_function_output_iterator(do_something())); 274`` 275 276 277[heading Throws] 278If Value copy constructor or copy assignment throws. 279 280[warning Only one [^[link group__predicates_1ga8772d9d3e5b12b3292f7d94d47310e3e nearest()]] predicate may be passed to the query. Passing more of them results in compile-time error.] 281 282[endsect] 283 284[#group__rtree__functions_1ga45c2b7b112bf730d10367e10df62aa3c] 285[section qbegin(rtree<...> const &, Predicates const &)] 286'''<indexterm><primary>qbegin</primary></indexterm>''' 287Returns the query iterator pointing at the begin of the query range. 288 289[heading Description] 290This method returns the iterator which may be used to perform iterative queries. For the information about the predicates which may be passed to this method see [link group__rtree__functions_1gadb43b211d5d743ebe2ef256328286e95 query()].[heading Synopsis] 291[pre 292`template<``typename Value``,` 293 `typename Parameters``,` 294 `typename IndexableGetter``,` 295 `typename EqualTo``,` 296 `typename Allocator``,` 297 `typename Predicates``>` 298`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::const_query_iterator` `qbegin``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``,` `Predicates const &` `predicates``)` 299] 300 301[heading Parameter(s)] 302[table 303[[Type][Name][Description]] 304[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &`][ `tree` ][The rtree. ]] 305[[`Predicates const &`][ `predicates` ][Predicates.]] 306] 307[heading Returns] 308The iterator pointing at the begin of the query range. 309[heading Example] 310 311`` 312std::for_each(bgi::qbegin(tree, bgi::nearest(pt, 3)), bgi::qend(tree), do_something()); 313`` 314 315 316[heading Iterator category] 317ForwardIterator 318 319[heading Throws] 320If predicates copy throws. If allocation throws. 321 322[warning The modification of the rtree may invalidate the iterators.] 323 324[endsect] 325 326[#group__rtree__functions_1ga5c9a1eb0421bf2c702392247d48143e5] 327[section qend(rtree<...> const &)] 328'''<indexterm><primary>qend</primary></indexterm>''' 329Returns the query iterator pointing at the end of the query range. 330 331[heading Description] 332This method returns the iterator which may be used to check if the query has ended.[heading Synopsis] 333[pre 334`template<``typename Value``,` 335 `typename Parameters``,` 336 `typename IndexableGetter``,` 337 `typename EqualTo``,` 338 `typename Allocator``>` 339`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::const_query_iterator` `qend``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``)` 340] 341 342[heading Returns] 343The iterator pointing at the end of the query range. 344[heading Example] 345 346`` 347std::for_each(bgi::qbegin(tree, bgi::nearest(pt, 3)), bgi::qend(tree), do_something()); 348`` 349 350 351[heading Iterator category] 352ForwardIterator 353 354[heading Throws] 355Nothing 356 357[warning The modification of the rtree may invalidate the iterators.] 358 359[endsect] 360 361[#group__rtree__functions_1ga2467dc6ac90303496abd6ebd136eba18] 362[section begin(rtree<...> const &)] 363'''<indexterm><primary>begin</primary></indexterm>''' 364Returns the iterator pointing at the begin of the rtree values range. 365 366[heading Description] 367This method returns the iterator which may be used to iterate over all values stored in the rtree.[heading Synopsis] 368[pre 369`template<``typename Value``,` 370 `typename Parameters``,` 371 `typename IndexableGetter``,` 372 `typename EqualTo``,` 373 `typename Allocator``>` 374`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::const_iterator` `begin``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``)` 375] 376 377[heading Returns] 378The iterator pointing at the begin of the range. 379[heading Example] 380 381`` 382std::for_each(bgi::begin(tree), bgi::end(tree), do_something()); 383// the same as 384std::for_each(boost::begin(tree), boost::end(tree), do_something()); 385`` 386 387 388[heading Iterator category] 389ForwardIterator 390 391[heading Throws] 392If allocation throws. 393 394[warning The modification of the rtree may invalidate the iterators.] 395 396[endsect] 397 398[#group__rtree__functions_1ga8fd1e53d8492643cbc9840ff715bb736] 399[section end(rtree<...> const &)] 400'''<indexterm><primary>end</primary></indexterm>''' 401Returns the iterator pointing at the end of the rtree values range. 402 403[heading Description] 404This method returns the iterator which may be compared with the iterator returned by [link group__rtree__functions_1ga2467dc6ac90303496abd6ebd136eba18 begin()] in order to check if the iteration has ended.[heading Synopsis] 405[pre 406`template<``typename Value``,` 407 `typename Parameters``,` 408 `typename IndexableGetter``,` 409 `typename EqualTo``,` 410 `typename Allocator``>` 411`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::const_iterator` `end``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``)` 412] 413 414[heading Returns] 415The iterator pointing at the end of the range. 416[heading Example] 417 418`` 419std::for_each(bgi::begin(tree), bgi::end(tree), do_something()); 420// the same as 421std::for_each(boost::begin(tree), boost::end(tree), do_something()); 422`` 423 424 425[heading Iterator category] 426ForwardIterator 427 428[heading Throws] 429Nothing. 430 431[warning The modification of the rtree may invalidate the iterators.] 432 433[endsect] 434 435[#group__rtree__functions_1gabaca6c24c3838a8164aa3700c459e7a4] 436[section clear(rtree<...> &)] 437'''<indexterm><primary>clear</primary></indexterm>''' 438Remove all values from the index. 439 440[heading Description] 441It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a1bec40977c175983f585c4488cf8fe3c rtree::clear()]].[heading Synopsis] 442[pre 443`template<``typename Value``,` 444 `typename Parameters``,` 445 `typename IndexableGetter``,` 446 `typename EqualTo``,` 447 `typename Allocator``>` 448`void` `clear``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `tree``)` 449] 450 451[heading Parameter(s)] 452[table 453[[Type][Name][Description]] 454[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `tree` ][The spatial index. ]] 455] 456[endsect] 457 458[#group__rtree__functions_1gaa19a09e7b5f0a86a4b74ef2342de1d68] 459[section size(rtree<...> const &)] 460'''<indexterm><primary>size</primary></indexterm>''' 461Get the number of values stored in the index. 462 463[heading Description] 464It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a7a7bfa3ce751e0c357c36e1bb238c523 rtree::size()]].[heading Synopsis] 465[pre 466`template<``typename Value``,` 467 `typename Parameters``,` 468 `typename IndexableGetter``,` 469 `typename EqualTo``,` 470 `typename Allocator``>` 471`size_t` `size``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``)` 472] 473 474[heading Parameter(s)] 475[table 476[[Type][Name][Description]] 477[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &`][ `tree` ][The spatial index.]] 478] 479[heading Returns] 480The number of values stored in the index. 481[endsect] 482 483[#group__rtree__functions_1gaba44e2fb12fdc7b528bfee56a88e0844] 484[section empty(rtree<...> const &)] 485'''<indexterm><primary>empty</primary></indexterm>''' 486Query if there are no values stored in the index. 487 488[heading Description] 489It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1a18bed92ff302df192215c3809fe5272e rtree::empty()]].[heading Synopsis] 490[pre 491`template<``typename Value``,` 492 `typename Parameters``,` 493 `typename IndexableGetter``,` 494 `typename EqualTo``,` 495 `typename Allocator``>` 496`bool` `empty``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``)` 497] 498 499[heading Parameter(s)] 500[table 501[[Type][Name][Description]] 502[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &`][ `tree` ][The spatial index.]] 503] 504[heading Returns] 505true if there are no values in the index. 506[endsect] 507 508[#group__rtree__functions_1ga4e43e7720c66e88959ff511a7462a3ff] 509[section bounds(rtree<...> const &)] 510'''<indexterm><primary>bounds</primary></indexterm>''' 511Get the box containing all stored values or an invalid box if the index has no values. 512 513[heading Description] 514It calls [^`rtree::envelope()`].[heading Synopsis] 515[pre 516`template<``typename Value``,` 517 `typename Parameters``,` 518 `typename IndexableGetter``,` 519 `typename EqualTo``,` 520 `typename Allocator``>` 521`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator >::bounds_type` `bounds``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &` `tree``)` 522] 523 524[heading Parameter(s)] 525[table 526[[Type][Name][Description]] 527[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > const &`][ `tree` ][The spatial index.]] 528] 529[heading Returns] 530The box containing all stored values or an invalid box. 531[endsect] 532 533[#group__rtree__functions_1gaa1250318a78d7e27ba8f3537eb0ddb3f] 534[section swap(rtree<...> &, rtree<...> &)] 535'''<indexterm><primary>swap</primary></indexterm>''' 536Exchanges the contents of the container with those of other. 537 538[heading Description] 539It calls [^[link classboost_1_1geometry_1_1index_1_1rtree_1aedb719dfece91d298e9ee56878524c9b rtree::swap()]].[heading Synopsis] 540[pre 541`template<``typename Value``,` 542 `typename Parameters``,` 543 `typename IndexableGetter``,` 544 `typename EqualTo``,` 545 `typename Allocator``>` 546`void` `swap``(``rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `l``,` `rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &` `r``)` 547] 548 549[heading Parameter(s)] 550[table 551[[Type][Name][Description]] 552[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `l` ][The first rtree. ]] 553[[`rtree< Value, Parameters, IndexableGetter, EqualTo, Allocator > &`][ `r` ][The second rtree. ]] 554] 555[endsect] 556 557[endsect] 558 559