文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/
1.背景
在之前的博客中,我分别介绍了基于网格的空间索引(http://www.cnblogs.com/naaoveGIS/p/5148185.html)以及四叉树和网格结合的联合索引(http://www.cnblogs.com/naaoveGIS/p/6641449.html),要解决的问题均是判断一个点落在了面图层中的哪个面要素中。单从算法层面上分析,以上两种索引均有一些弊端:
a.网格索引由于对整个空间进行网格划分,如果划分粒度太细容易出现索引冗余,如果划分粒度太大则索引效率又大幅度下降。
b.四叉树索引同样存在一个图元标识被多个区域所关联,相应地存储在多个叶子节点上,这样就存在索引的冗余,与网格索引存在同样的弊端。
为进一步优化索引,我们决定采用R树来进行优化。
2.R树介绍