`

GIS中与计算几何相关的数据结构

阅读更多

二 GIS中与计算几何相关的数据结构与算法
算法
三角化Delaunay
Delaunay三角化与Veronoi 图互为对偶图。俗称最小角最大化的三角剖分。这里只关注2d情况。
先假设没有三点共线,四点共圆的病态例子。Delaunay有下面特点,
1.任何一个 Delaunay 三角形的外接圆的内部不能包含其它任何点。
2.给定的任意点集的 Delaunay 三角网是唯一的。
3.三角网的外边界构成了点集的凸多边形的“外壳”

GIS中的应用如LBS中的查找:“最近的公交车站在哪里?”,只需要将所有的公交车站作为顶点,构建Delaunay三角化,就可以找到最近的公交车站。(注:,这里有个距离的概念,如果使用欧式距离来构建三角网络,那么找到的就是欧式距离下的最近公交车站。)

参考http://en.wikipedia.org/wiki/Delaunay_triangulation,图片来自于该wiki
抽稀(Thinning)
在地图1:100000,和1:5000下,需要显示的详细程度不一样,因此,道路需要显示的也不一样。在1:100000时,为了处理速度,以及显示效率,需要将多余的点去掉。这过程通常称为抽稀过程。
道格拉斯-普克 算法,点距算法,都用于抽稀。通常使用道格拉斯-普克算法来抽取线路。
道格拉斯-普克算法描述:先将一条曲线首尾点虚连一条直线,求其余各点到该直线的距离,选其最大者与规定的临界值相比较,若小于临界值,则将直线两端间各点全部舍去,否则将离该直线距离最大的点保留,并将原线条分成两部分,对每部分线条再实施该抽稀过程,直到结束。抽稀结果点数随选取限差临界值的增大而减少,应用时应根据精度要求来确定抽稀限差临界值,以获得最好的结果。
目前,mapinfo中直接可以thinning一副地图,该默认算法采用的就是Douglas算法。
数据结构

网格索引(Grid)
构建简单、查找快速、冗余数据多,适合均匀分布地图。参见图示,如和查找最近的点。


四叉树(QuadTree)
构建简单、查找较快、多数情况下适用。图中是以北京地图的POI构建的四叉树。构建四叉树,需要注意设置1个条件以防止病态例子。
最小矩形大小,当矩形划分小于该矩形,无论有多少个元素都不在划分。这是为了防止许多点都集中在一块,而使得四叉树划分的层次太深。极端情况下,所有点坐标都一样。
对于Polygon和Polyline需要使用MBR(最小外接矩形)来实现。

下面是全北京市公交站点的四叉树,设定每个网格最多32个站点,不同颜色,是表示划分在不同级别中
四叉树
R-Tree
构建复杂、查找性能稳定、支持复杂查询
适合大范围不均匀地图。

最小外界矩形(MBR,minimum bounding rectangle)[url]  http://en.wikipedia.org/wiki/Minimum_bounding_rectangle[/url]
在R-tree和四叉树中,都会使用这个最小外接矩形数据结构。
它是空间几何的元数据(metadata);OGC,GML。

 

  • 大小: 27.8 KB
  • 大小: 66.7 KB
分享到:
评论

相关推荐

    计算几何算法与应用计算几何算法与应用

    在这个压缩包中,我们有“计算几何--算法与应用(第三版).pdf”,这很可能是《计算几何:算法与应用》的第三版教材或参考书。 计算几何的核心在于设计和分析高效的算法,这些算法能够处理点、线、面等几何对象,并...

    计算几何算法与应用(中文第三版高清目录)

    计算几何是计算机科学的一个重要分支,它研究如何用算法来解决与几何形状、空间位置和几何变换相关的数学问题。这本书涵盖了广泛的计算几何主题,对于学习和应用计算几何算法的人来说,是一份宝贵的资源。 计算几何...

    计算几何与方法设计

    在王晓东的《计算几何与方法设计》一书中,我们可以预见到作者会深入探讨计算几何的基本概念、理论和应用。这本书可能会涵盖以下几个关键知识点: 1. **基本几何概念**:点、线、面、多边形等基本几何元素的定义...

    周培德 计算几何 pdf

    计算几何主要关注于解决与空间数据结构和空间查询相关的计算问题。它不仅涉及数学中的几何学原理,还融合了计算机科学中的算法设计、数据结构优化以及复杂性分析等多方面的知识。例如,如何快速判断两点是否位于同一...

    计算几何. 计算几何.

    本题目的背景是关于计算几何中的一个典型问题:给定平面上的多条直线,判断从特定视角出发能够看到哪些直线。这里特别指出,视角是从y轴正方向向下观察。 #### 三、核心算法与数据结构 ##### 1. 数据结构定义 - **...

    GIS中矢量栅格一体化数据结构的研究.pdf

    地理信息系统(GIS)中数据结构的重要性和研究进展: 地理信息系统(GIS)是用于捕获、存储、检索、分析和显示地理数据的计算机系统。在GIS中,数据结构的选择是至关重要的,因为它影响到系统能否高效地处理和存储...

    计算几何——算法分析与设计周培德.pdf

    6. **应用实例**:书中可能涵盖计算几何在计算机图形学(如游戏开发、CAD)、机器学习(如聚类分析)、地理信息系统(GIS)中的具体应用。 7. **算法复杂性分析**:对于每个算法,都会进行时间复杂性和空间复杂性的...

    基于外存计算几何原理的空间数据结构及算法研究.pdf

    标题:“基于外存计算几何原理的空间数据结构及算法研究.pdf” 描述:“资源达人分享计划#” 标签:“数据结构 数据分析 大数据 参考文献 专业指导” 从标题和描述中,我们可以推断该文档可能涉及到的空间数据结构...

    一套很不错的计算几何课件

    7. **几何数据结构**:KD树、二叉空间分割树(如Octree)和Voronoi图等数据结构,用于高效存储和检索几何对象。这些数据结构在大数据量的几何运算中至关重要,能显著降低查询时间和内存消耗。 8. **几何算法**:...

    计算几何算法与应用(pdf)

    - **第七章至第十章:高级主题**:探讨了一些更复杂的计算几何问题,例如空间划分、动态几何数据结构等。 - **第十一章至第十三章:应用实例**:通过具体的案例研究展示了计算几何在不同领域的应用,例如在GIS、...

    计算几何算法讲解和源代码

    2. **几何数据结构**:有效的数据结构对于存储和操作几何对象至关重要。常见的有kd树、Voronoi图、Delaunay三角剖分等,它们在查询效率和空间组织上各有优势。 3. **几何算法**: - **碰撞检测**:用于游戏开发和...

    我收集的电子书 计算几何--算法与应用(第2版)(中文版).pdf

    书中还会讨论到几何数据结构,如kd树、Voronoi图和Delaunay三角网,这些都是高效处理大量几何对象的关键工具。kd树是一种高效的多维空间划分数据结构,用于快速查询和操作点集;Voronoi图描述了空间中点与点之间的...

    计算几何的不规则三角网算法研究及在GIS中应用

    《计算几何的不规则三角网算法研究及在GIS中应用》这篇硕士论文深入探讨了不规则三角网(TIN:Triangulated Irregular Network)在地理信息系统(GIS)中的理论与实践,是学习和研究这一领域的宝贵参考资料。...

    计算几何——算法分析与设计

    2. 数据结构:计算几何中的数据结构至关重要,如kd树、voronoi图、细分表面等,这些数据结构能够有效地存储和检索几何对象,提高算法效率。 3. 算法基础:包括线性代数和几何变换,如旋转、平移、缩放,以及向量和...

    计算几何(英文)

    计算几何中的算法通常依赖于特定的数据结构来高效地存储和访问几何对象的信息。例如,树状结构(如kd树、R树)被用来加速空间查询;顶点、边、面的连接信息被用来表示多边形和多面体。 #### 挑战与未来趋势 尽管...

    计算几何——算法分析与设计.rar

    9. **几何数据结构**:如kd树、二叉空间分割树、四叉树等,这些数据结构能够高效地存储和查询几何对象,对于大数据量的计算几何问题尤其重要。 10. **计算几何在实际应用中的角色**:计算几何的算法广泛应用于CAD...

    计算几何大汇总 很多资料的

    1. **几何数据结构**:如点集、线段树、kd树、voronoi图等,它们为高效地存储和检索几何对象提供了基础。 2. **几何查询**:比如最近点对查询、碰撞检测、覆盖问题等,这些查询在图形学、机器人学和地理信息系统等...

    计算几何【课件+代码】

    这里可能包含图遍历、最短路径、欧拉路径等算法实现,这些都是计算几何中常用的数据结构和算法。 3. **最近点对.cpp**:最近点对问题是在一组点集中找到距离最近的两个点。这通常通过分治法、kd树或其他空间索引...

Global site tag (gtag.js) - Google Analytics