查看原文
其他

ArcGis拓扑的那些事儿(拓扑知识基础)

Editor's Note

拓扑是GIS矢量数据处理非常重要的质检环节,在这里推荐给大家学习

The following article is from Gis技术分享 Author 黎眸丶

小编这次准备说一下ArcGis拓扑在数据中的应用,分为二篇文章。这第一篇先说一下拓扑的基础知识,让大家伙儿了解一下什么是拓扑。
拓扑是我们在数据生产中一种必须要学会的技能,尤其是现在国家对基础矢量数据验收更加严格,不会拓扑,那么你的数据就一定有问题!(项目在验收时候出了问题,你的项目奖金可能就和你拜拜)为了你口袋里的钞票着想,这篇文章一定要好好看!
下面进入正文

矢量数据总共分为三种:
点(point):点是所有图形的基础。
点构成方式分为两种:一种是有序的点构成,点的形状与面积、位置或方向等诸因素,以规律化的形式排列构成,或相同的重复,或有序的渐变等。点往往通过疏与密的排列而形成空间中图形的表现需要,同时,丰富而有序的点构成,也会产生层次细腻的空间感,形成三次元。在构成中,点与点形成了整体的关系,其排列都与整体的空间相结合,于是,点的视觉趋向线与面,这是点的理性化构成方式;另一种是自由的点构成,点的形状与面积、位置或方向等诸因素,以自由化、非规律性的形式排列构成,这种构成往往会呈现出丰富的、平面的、涣散的视觉效果。如果以此表现空间中的局部,则能发挥其长处,比如象征天空中的繁星或作为图形底纹层次的装饰。
点和线之间的关系:点动成线
线(polyline):线就是由无数个点连接而成的。
线是点运动的轨迹,又是面运动的的起点,线具有整齐端正的几何线,还具有徒手画的自由线。物象本身并不存在线,面的转折形成了线,形式由线来界定的,也就是我们说的轮廓线。
线分为两大类:一种是直线,它包括平行线、垂线(垂直线)、斜线、折线、虚线、锯齿线等;另一种是曲线,它包括弧线、抛物线、双曲线、圆、波纹线(波浪线)、蛇形线等。
线和面之间的关系:线动可能成线、曲面、平面。
面(polygon):面是由无数条线组成的。
面有可以是扩大的点形成了面,也可以是一根封闭的线造成了面。密集的点和线同样也能形成面。在形态学中,面同样具有大小、形状、色彩、肌理等造型元素,同时面又是“形象”的呈现,因此面即是“形”。
面分为四大类:几何形的面、有机型的面、偶然性的面、不规则性的面
以上的简述是让大家了解了解矢量最基础的点、线、面要素。下面来和大家讲讲拓扑到底是什么!(Ps:学会拓扑没准儿能让你加工资
在进行拓扑之前呢,一定要注意拓扑容差的问题(这个按项目规程走),不同容差下的拓扑错误数量就会不同,下面我说一下拓扑容差含义:
当两个相邻近点的X、Y、Z(Z代表高程,如果要素携带高程信息)距离小于给定的限值时,两个点会聚合成为一个点,共享同一坐标。就称这个限值为拓扑容差。拓扑容差的单位为m,X坐标和Y坐标为拓扑容差的作用对象。例如,拓扑容差为0.0001m的拓扑数据集中,两邻近线段的端点V1、V2,如果他们的X、Y坐标差值中有任意一个小于0.0001m(两点间的距离小于2×0.0001m)时,两点就会融合成为一点,两条邻近的线段融为一条线段。聚合限值来自数据集X、Y的分辨率。例如,某数据集X、Y能够精确到小数点后3位,那么这个数据集的默认聚合限值为0.0001。因此,在拓扑数据集创建向导中可以看到聚合容限的默认值为0.0001

注意到图片中的要素类等级了吧,刚刚我们在拓扑容差中提到,两个小于拓扑容差的邻近点能够聚合成为一个点。那么聚合时应该以哪一个点作为参照呢?此时,对拓扑要素进行分等定级就可以解决这个问题了。对参与拓扑的要素按照精度进行分类,精度高的要素排在前面,精度低的排在后面,在邻近点(之间的距离小于拓扑容差)聚合时,低级点会向高级点聚拢,同级点聚拢在它们的均值处。拓扑容差对于高程(Z)同样适用。当邻近点的X、Y小于拓扑容差时,两点是否聚合还需看Z值(当且仅当Z值存在)是否小于Z的拓扑容差。
这次终于开始我们的真正要讲的东西了,仔细看噢!(小编感觉前面说的废话连篇,有点太基础了)。
拓扑是基于数据库(GDB、MDB)来进行检查的,(Tip:Shp文件不能做拓扑检查),我以文件地理数据库(GDB)来举例,首先在GDB下建立拓扑数据集,把需要进行检查的所有数据都导入到该数据集下,要素集与所检查的数据要保持数学基础(坐标系,坐标范围)一致,建拓扑要知道以下五点:
  • 一个拓扑可以引用同一个要素数据集中的一个或多个要素类。

  • 一个要素数据集可具有多个拓扑。

  • 但是,一个要素类只能属于一个拓扑。

  • 一个要素类不能同时属于一个拓扑和一个几何网络。

  • 但是,一个要素类可以同时属于一个拓扑和一个网络数据集或地形数据集。

拓扑呢主是要检查点、线、面它们的空间位置关系(保持在同一个数据集下)。
一种要素进行拓扑:要么是点、要么是线、要么就是面。
两种要素进行拓扑:有五种检查方式,点点、面面、点线、点面、线面。
三种要素进行拓扑:这个就变化很多了(···、---、□□□、·-□等等),可以选择相同类型的要素,也可以选择不同类型的要素进行拓扑。
对于要参加拓扑的图层是不进行限制的,想怎么拓扑怎么拓扑!

一种要素进行拓扑:

点要素拓扑:可以进行一项单独点图层重叠检查,在ArcGis中的拓扑规则就是必须不相交。

线要素拓扑:可以进行八项单独线图层拓扑检查,在ArcGis中的拓扑规则分别是不能重叠、不能相交、不能有悬挂点、不能有伪节点、不能自相交、不能自重叠、必须为单一部分、不能相交或内部接触。

面要素拓扑:可以进行二项单独面图层拓扑检查,在ArcGis中的拓扑规则分别是不能重叠、不能有缝隙(连续面)。

两种要素进行拓扑:


点点要素同时拓扑:可以进行一项拓扑检查,在ArcGis中的拓扑规则是必须与其他要素重合。

面面要素同时拓扑:可以进行五项拓扑检查,在ArcGis中的拓扑规则分别是不能与其他要素重叠、必须被其他要素的要素类覆盖、必须相互覆盖、必须被其他要素覆盖、面边界必须被其他要素的边界覆盖。

点线要素同时拓扑:可以进行三项拓扑检查,在ArcGis中的拓扑规则分别是必须被其他要素的端点覆盖、点必须被线覆盖、端点必须被其他要素覆盖。

点面要素同时拓扑:可以进行四项拓扑检查,在ArcGis中的拓扑规则分别是必须被其他要素边界覆盖、必须完全位于内部、包含点、包含一个点。

线面要素同时拓扑:可以进行三项拓扑检查,在ArcGis中的拓扑规则分别是必须被其他要素边界覆盖、必须完全位于内部、边界必须被其他要素覆盖。

至于三种类型的图层拓扑变化就更多了,有了以上基础就可以一一试着组合一下进行多规则拓扑。

拓扑总的一个检查原则就是:点线拓扑检查点、线点拓扑检查线、点面拓扑检查点、面点拓扑检查面、线面拓扑检查线、面线拓扑检查面!

这里需要注意的是在进行拓扑时候,数据会发生改变,所以建议在拓扑之前备份原始数据!(重要的事情说三遍!备份!备份!在备份!

以上就是小编今天为大家带来的精彩内容,有什么错误之处还请大家多多指正!小编这菜鸟会虚心接受

还是老规矩,给大家分享一个小编常用的在线地图插件!(最主要的是可以查看不同历史年份的谷歌影像噢!)用的贼顺手!

2018年影像

2020年影像

百度网盘链接:https://pan.baidu.com/s/1gu8i1gFonB7R7aIECKF8oA

提取码:fcik

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存