From 7babc43f75c6257a79dd2acf4990e6f271f3d74d Mon Sep 17 00:00:00 2001
From: Adam Wulkiewicz
rtree<Value, Parameters, Translator, Allocator>-
Value - type of object which will be stored in the container.
std::pair<...>
Values.
-Indexable = Point
| Box
diff --git a/doc/html/geometry_index/r_tree/exception_safety.html b/doc/html/geometry_index/r_tree/exception_safety.html
index 7307cace6..6b34a74f4 100644
--- a/doc/html/geometry_index/r_tree/exception_safety.html
+++ b/doc/html/geometry_index/r_tree/exception_safety.html
@@ -3,7 +3,7 @@
In order to be exception-safe the R-tree requires:
-Value.
[a] +
[a] nothrow - if allocators are equal, strong - otherwise
[b] +
[b]
nothrow - if CoordinateType
has nonthrowing copy constructor, strong
- otherwise
diff --git a/doc/html/geometry_index/r_tree/introduction.html b/doc/html/geometry_index/r_tree/introduction.html
index 68a64d201..d86263e93 100644
--- a/doc/html/geometry_index/r_tree/introduction.html
+++ b/doc/html/geometry_index/r_tree/introduction.html
@@ -3,7 +3,7 @@
- R-tree is a self-balancing search tree. Each tree's node store a box descring - the space occupied by children nodes. At the bottom of the structure, there - are leaf-nodes which contains values (geometric objects representations). - Minimal and maximal numbers of values/children which may be stored inside - each node are user defined. + 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 + 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.
++ The R-tree structure is presented on the image below. Each R-tree's node + store a box descring the space occupied by its children nodes. At the bottom + of the structure, there are leaf-nodes which contains values (geometric objects + representations). +
+
+
+
+ The number of maximum and mininimum node's elements must be specified by + the user. If the number of elements reaches it's maximum the new node is + created and elements are split between nodes. If the number of elements in + node is too small, the node is deleted and elements are reinserted into the + tree. +
++ The R-tree is a self-balanced data structure. The key part of balancing algorithm + is node splitting algorithm mentioned before [2] [3]. Each algorithm would produce 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. This is a "better" split because later, in the searching + process less nodes must be traversed in order to find desired obejcts. On + the other hand more complex analysis takes more time. In general faster inserting + will result in slower searching and vice versa. Example structures of trees + created by use of three different algorithms and operations time are presented + below. +
+| + | +
+ + linear algorithm + + |
+
+ + quadratic algorithm + + |
+
+ + R*-tree + + |
+
|---|---|---|---|
|
+ + Structure + + |
+
+
+ |
+
+
+ |
+
+
+ |
+
|
+ + 1M Values inserts + + |
+
+ + 1.85s + + |
+
+ + 3.10s + + |
+
+ + 24.52s + + |
+
|
+ + 1M spatial queries + + |
+
+ + 8.60s + + |
+
+ + 2.74s + + |
+
+ + 1.31s + + |
+
|
+ + 100k knn queries + + |
+
+ + 3.49s + + |
+
+ + 1.59s + + |
+
+ + 0.84s + + |
+
+ Key features of this implementation of the R-tree are: +
+[1] + Guttman, A. (1984). R-Trees: A Dynamic Index Structure for Spatial + Searching footnote +
[2] + Greene, D. (1989). An implementation and performance analysis + of spatial data access methods +
[3] + 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/nearest_neighbours_queries.html b/doc/html/geometry_index/r_tree/nearest_neighbours_queries.html index 304962a7f..6a2482203 100644 --- a/doc/html/geometry_index/r_tree/nearest_neighbours_queries.html +++ b/doc/html/geometry_index/r_tree/nearest_neighbours_queries.html @@ -3,7 +3,7 @@ |
Last revised: November 24, 2012 at 22:04:48 GMT |
+Last revised: November 25, 2012 at 20:52:29 GMT |