ArcGIS Desktop使用入门(三)常用工具条——拓扑(下篇:地理数据库拓扑)

系列文章目录

ArcGIS Desktop使用入门(一)软件初认识
ArcGIS Desktop使用入门(二)常用工具条——标准工具
ArcGIS Desktop使用入门(二)常用工具条——编辑器
ArcGIS Desktop使用入门(二)常用工具条——数据驱动页面
ArcGIS Desktop使用入门(二)常用工具条——基础工具
ArcGIS Desktop使用入门(二)常用工具条——布局工具
ArcGIS Desktop使用入门(二)常用工具条——绘图
ArcGIS Desktop使用入门(二)常用工具条——捕捉
ArcGIS Desktop使用入门(二)常用工具条——编辑折点
ArcGIS Desktop使用入门(二)常用工具条——高级编辑
ArcGIS Desktop使用入门(二)常用工具条——效果
ArcGIS Desktop使用入门(二)常用工具条——地理配准
ArcGIS Desktop使用入门(三)常用工具条——拓扑(上篇:地图拓扑)
ArcGIS Desktop使用入门(三)图层右键工具——缩放至图层、缩放至可见
ArcGIS Desktop使用入门(三)图层右键工具——可见比例范围
ArcGIS Desktop使用入门(三)图层右键工具——使用符号级别
ArcGIS Desktop使用入门(四)工具箱——属性域
ArcGIS Desktop使用入门(四)——ArcMap软件闪退无法打开问题
ArcGIS Desktop使用入门(四)——ArcMap软件彻底卸载删除干净


文章目录

  • 系列文章目录
  • 前言
  • 一、本期工具条:拓扑工具
  • 二、拓扑的分类
  • 三、地理数据库拓扑的创建
  • 四、功能简介(按照图标顺序介绍)
    • 1.验证指定区域中的拓扑(框选范围)
    • 2.验证当前范围中的拓扑(视图范围)
    • 3.修复拓扑错误工具
    • 4.错误查看器
  • 五、修改拓扑错误的演示
    • 1. 悬空点、线和面边界不一致。
    • 2.重叠面
    • 3.拓扑会自动在要素相交叉的位置生成结点
  • 总结


前言

本期开始介绍ArcGIS Desktop的一些常用工具条,争取做到全面,后续会持续更新。
(工具条的添加方式均为ArcGIS Desktop软件界面顶部,鼠标右键,在工具条前勾选✔。)


一、本期工具条:拓扑工具

工具条名称:拓扑
工具条样式:

1

综述:拓扑工具,是ArcGIS Desktop软件的数据质量检查工具之一,重点检查数据库点、线、面要素的空间关系正确性,帮助确保地理数据库的数据完整性。

拓扑是点、线和多边形要素共享几何的方式的排列布置。拓扑工具的使用提供了一种对数据执行完整性检查的机制,帮助在地理数据库中验证和保持更好的要素表示。

二、拓扑的分类

在 ArcGIS 中有两种拓扑:

  1. 地图拓扑
    创建地图拓扑很快且只允许您编辑相互连接的要素。编辑共享几何,使用此类拓扑。
  2. 地理数据库拓扑
    地理数据库拓扑需要较多努力来设置和修改,因为其提供规则来定义有关要素在一个或更多要素类中如何共享几何的复杂关系。

在《上篇:地图拓扑》中介绍了 地图拓扑,本文下篇,继续介绍地理数据库拓扑

三、地理数据库拓扑的创建

创建拓扑的作用,官方定义:通过拓扑可以对不同数据类型(点、线、面)的综合行为进行建模。
ArcGIS 具有多种定义和创建新拓扑的方法。主要方法与使用 Catalog 窗口或 ArcCatalog 中的工具有关。
常用的方法还是使用 Catalog 窗口对要素集进行创建拓扑。
主要步骤包括:

  1. 鼠标右键单击准备建立拓扑的要素数据集(切记,要在数据集里面,不能是数据库根目录下,且不能跨数据集),选择“新建-拓扑“;

  2. 给拓扑命名,并指定拓扑容差,容差的默认值将被设置为要素数据集的 X,Y 容差。
    理想的默认值是 0.001 米或以空间参考单位表示的等效值。
    注意: 拓扑容差的值,取决于对数据库建立时设置的精度,一般建库说明或者质检程序会有这方面的要求,在建立拓扑进行编辑修改时,要特别留意,防止修改后的精度不达标。

  3. 在要素数据集里,选择参与拓扑的要素图层。
    想一起参与拓扑的图层,必须在一个要素数据集中,如果不在一个数据集中,要提前拖放进一个要素数据集中。

  4. (不常用)如果一个或多个要素类包含坐标Z值,则单击Z属性设置 Z 等级。为拓扑中的各要素类设置坐标精度等级。
    例如,两个高度不同的相邻要素之间可能共享一条公用边。但是,只有各自的 X,Y 顶点会定位于同一点,Z 值或高度则不然。Z 容差可在验证和聚类操作期间帮助正确处理此信息。Z 容差默认值与 X,Y 容差默认值相同(以实际单位表示为 0.001 米)。

  5. 添加一系列拓扑规则(帮助构造要素间的空间关系)以控制和验证要素共享几何的方式。
    关于拓扑规则,在某些领域的质检规则中有详细规定,可以进行借鉴。
    如常见的权属界址点、界址线、宗地面,要素界址点必须在界址线的端点、在宗地面的边界上,界址线要求在宗地面的边界上,宗地面必须被界址线覆盖等还有其他规则。参与的图层越多,需要添加的规则就越多,互相制约。

  6. 单击完成拓扑的创建,系统此时将询问是否要验证要素数据集中的拓扑。如果要素类中已有数据,则可选择“是”。
    经过验证的拓扑,会根据拓扑规则检查有错误的要素,并记录在拓扑错误记录中。
    在ArcMap中加载新建立的拓扑,默认会自动加载参与拓扑的所有要素图层,后续使用拓扑工具条进行查看和修改。

我本次想创建 地理数据库拓扑,图层包括 地块范围线、QSJZD_点、QSJZX_线、QSZD_面,这4个图层建立地图拓扑,后续方便进行拓扑编辑。
1
建立拓扑之后,如果想更新拓扑规则,或者给拓扑添加图层,查看拓扑错误的数量,可以继续使用Catalog 窗口,对拓扑进行维护。可以对拓扑规则进行保存,方便以后建立拓扑时加载拓扑规则。
2
注意: 建立拓扑之后,参与的要素图层相当于被拓扑绑定了,所以拓扑使用完毕之后,最好将建立的拓扑右键删除。
还有,如果想在该数据集中建立多个拓扑,那么两个拓扑不能有相同的图层,因为图层被拓扑绑定了。
3

四、功能简介(按照图标顺序介绍)

1.验证指定区域中的拓扑(框选范围)

4

通过在地图上拖动方框来验证给定区域的地理数据库拓扑。
一般情况都是在修改区域范围内的拓扑错误后,进行检查验证,看一下拓扑修改是否正确。如果仍然验证出错误,及时进行修改;如果验证后无错误,就可以对下一区域的错误修改了。

2.验证当前范围中的拓扑(视图范围)

5

验证当前地图范围中的地理数据库拓扑。
功能跟上一个图标一样,只不过验证的范围变成视图范围内,全部验证。
一般情况是在,拓扑错误被完整修改一遍之后,缩放到数据全图显示,对全部要素进行一次验证,最后查看一下,是否还有拓扑错误。

3.修复拓扑错误工具

6

选择并修复当前地理数据库拓扑中的拓扑错误。
如果可用,可以右键单击错误应用自动修复。
要以表格形式查看错误,请打开”错误检查器“窗口。

4.错误查看器

7

打开”错误查看器“窗口,查找、排序和修复地理数据库错误错误。
相当于打开拓扑错误的 属性表 ,方便查看,定位。
8
GISer最喜欢的界面,应该就是上面的图片了吧,所有规则中的错误为 空。:-)

五、修改拓扑错误的演示

1. 悬空点、线和面边界不一致。

9
点、线、面的要素相互制约,仔细观察,找到正确的位置,把错误要素修改到正确位置即可。如何判断哪个要素的位置正确,这需要经验积累,或者有其他数据参考层,或者影像底图。

2.重叠面

10

如果有重叠面,只需要删除重叠的要素,即可修复错误。注意查看哪些是保留的要素,哪些是删除的多余要素。

以上只是简单了演示了一下,最简单的拓扑错误修改示意,实际工作中的拓扑错误要具体情况具体分析。

3.拓扑会自动在要素相交叉的位置生成结点

12
所以,如果对结点有要求的话,可以把目标层复制一个新图层,对新图层进行拓扑,然后对照拓扑的提示,修改原始图层,这样就避免了增加结点的问题。

总结

拓扑工具,在对地理数据库进行检查验证非常重要,修改拓扑错误也是GISer日常工作中经常干的一项非常繁琐的工作,熟练应用拓扑工具会提高工作效率。

祝愿每个GISer都能够顺利圆满的完成拓扑修改工作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/433225.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Labview helper

IMAQ Advanced Setup Learn Geometric Pattern 2 VI 参数说明Curve Extraction Mode (0)指定VI如何识别图像中的曲线。如果您希望VI不对图像中对象的均匀性或图像背景做出任何假设,请将此选项设置为正常。如果您希望VI假定图像中的对象或图像背景由均匀的像素值组成…

【JVM】一篇文章彻底理解JVM的组成,各组件的底层实现逻辑

文章目录 JVM 的主要组成部分类加载器(Class Loader)1. 加载(Loading)2. 链接(Linking)3. 初始化(Initialization) Execution Engine(执行引擎)1. 解释器&…

QT开发:详解 Qt 多线程编程核心类 QThread:基本概念与使用方法

1. 引言 在现代应用程序开发中,多线程编程是一个关键技术,能够显著提高程序的效率和响应速度。Qt 是一个跨平台的 C 框架,其中 QThread 类是实现多线程编程的核心类。本文将深入详解 QThread 的基本概念、使用方法及其在实际应用中的重要性。…

对于 Vue CLI 项目如何引入Echarts以及动态获取数据

🚀个人主页:一颗小谷粒 🚀所属专栏:Web前端开发 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 1、数据画卷—Echarts介绍 1.1 什么是Echarts? 1.2 Echarts官网地址 2、Vue CLI 项目…

第十三周:机器学习笔记

第十三周周报 摘要Abstract一、机器学习——Transformer(上)1. Sequence to Sequence(Seq 2 Seq,序列到序列模型) 的应用2. Transformer的结构2.1 Transformer encoder(Transformer 编码器) 二、Pytorch学习1. 网络模型…

将图片资源保存到服务器的盘符中

服务类 系统盘符:file-path.disk(可能会变,配置配置文件dev中)文件根路径:file-path.root-path(可能会变,配置配置文件dev中)http协议的Nginx的映射前缀:PrefixConstant.…

go解决引入私有包报错“Repository owner does not exist“的两种方式

当你写好引入的私有包,执行go mod tidy报错: Gogs: Repository owner does not exist fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 目前我的两种解决方案: 一、拉群整个…

freeRDP OPenssl

libusb需要下载 我使用的是VS2019编译 所以需要include 与vs2019 在cmake里面修改路径 C:/Users/JPM/source/repos/freeRDP/FreeRDP-stable-2.0/libusb-1.0.24/include/libusb-1.0 C:/Users/JPM/source/repos/freeRDP/FreeRDP-stable-2.0/libusb-1.0.24/VS2019/MS64/static/l…

模形式与态、势、感、知

模形式是数学中一个重要的研究领域,主要出现在数论、代数几何和表示论等多个学科中。模形式可以视为在某种意义上具有“对称性”的函数,这些函数在特定的条件下满足一定的变换性质。具体来说,模形式是定义在上半平面上的复值函数,…

第九节 Opencv自带颜色表操作

知识点:Look Up lTable(LUT)查找表 了解LUT查找表的作用与用法,代码实现与API介绍 -applyColorMap(src,dst,COLORMAP) -src表示输入图像 -dst表示输出图像 匹配到的颜色LUT,Opencv支持13种…

TDOA方法求二维坐标的MATLAB代码演示与讲解

引言 时间差定位(Time Difference of Arrival, TDOA)是一种用于确定信号源位置的技术,广泛应用于无线通信、声学定位等领域。通过测量信号到达多个接收器的时间差,可以计算出信号源的二维坐标。本文将通过MATLAB代码演示如何使用TDOA方法来求解二维坐标。 TDOA原理 TDOA…

第50篇 汇编语言实现中断<六>

Q:怎样设计汇编语言程序使用定时器中断实现实时时钟? A:此前我们曾使用轮询定时器I/O的方式实现实时时钟,而在本实验中将采用定时器中断的方式。新增的interval_timer.s间隔定时器的中断服务程序中增加了TIME变量,还更…

JavaScript的条件语句

if条件语句 if结构先判断一个表达式的布尔值,然后根据布尔值的真伪,执行不同的语句。所谓布尔值,指的是JavaScript 的两个特殊值,true表示真,false表示伪。 if语句语法规范 if(布尔值){语句;}var m3if(m3){console.l…

STM32嵌入式编程学习到提高:【4】UART串口打印

------------------------------------------------------------------------------------------------------------------------- 工程文件:放在百度云盘里,需要的自行下载!!! 链接: https://pan.baidu.com/s/14gRne…

Flowable7.0.1框架严重bug,流程跳转到指定节点导致流程中断

一、Bug描述 使用7.0.1版本的 moveActivityIdsToSingleActivityId 或 moveExecutionsToSingleActivityId实现节点跳转,程序不会报错,但是act_ru_task 没有生成新的任务,导致流程中断,这是相当严重的bug。 经过多次测试&#xff…

【学习笔记】TLS/SSL握手之Records

TLS / SSL会话是由记录(Records)所组成,有4种records HandshakeAlertChange Cipher SpecApplication DataHandshake和Alert Records被分为子类型(Subtypes): Handshake:Client HelloHandshake&a…

使用 Llama-index 实现的 Agentic RAG-Router Query Engine

前言 你是否也厌倦了我在博文中经常提到的老式 RAG(Retrieval Augmented Generation | 检索增强生成) 系统?反正我是对此感到厌倦了。但我们可以做一些有趣的事情,让它更上一层楼。接下来就跟我一起将 agents 概念引入传统的 RAG 工作流,重新…

Apache Iceberg 数据类型参考表

Apache Iceberg 概述-链接 Apache Iceberg 数据类型参考表 数据类型描述实例方法注意事项BOOLEAN布尔类型,表示真或假true, false用于条件判断,例如 WHERE is_active true。确保逻辑条件的正确性。INTEGER32位有符号整数42, -7可用于计算、聚合&#xf…

基于 Redis 实现滑动窗口的限流

⏳ 限流场景:突发流量,恶意流量,业务本身需要 基于 Redis 实现滑动窗口的限流是一种常见且高效的做法。Redis 是一种内存数据库,具有高性能和支持原子操作的特点,非常适合用来实现限流功能。下面是一个使用 Redis 实现…

Ubuntu环境下字体安装

本文介绍Ubuntu环境下字体安装。 软件(如Qt应用软件)开发过程中经常会涉及到字体的选择,有时候Ubuntu环境下并没有我们想要的字体,本文介绍常用字体及在Ubuntu环境下如何安装。 1.常用开源字体 有些字体商用并不是免费的&#…