QGIS008:QGIS拓扑检查、修改及验证

摘要:本文介绍使用QGIS拓扑检查器和几何图形检查器检查图层的拓扑错误,修改拓扑错误,并对修改后的图层进行错误验证。

实验数据:

链接:https://pan.baidu.com/s/1Vy2s-KYS-XJevqHNdavv9A?pwd=f06o 
提取码:f06o 


一、创建测试图层

1、新建图层

鼠标点击浏览器面板,右键点击创建的测试图层存放的文件夹,在弹出列表中点击【新建】→【形状文件】。

2、设置图层属性

在弹出的【新建形状文件图层】窗口修改图层名称,选择图层字符集,QGIS常用图层字符集有system、UTF-8、GBK三种,本例中我们选择图层编码为UTF-8,以下对这三种字符集做补充介绍。

【SYSTEM】:操作系统的默认字符集一般会根据具体的操作系统和语言环境而有所不同。大多数情况操作系统的默认字符集会是UTF-8,可以支持全世界大多数语言所需要的字符。在用户未指定图层字符集的情况下,QGIS将使用操作系统的默认字符集作为显示和编码方式。

【UTF-8】:一种可变长度的字符编码方式,可以表示几乎所有的Unicode字符,包括世界上各种语言的字符、数学符号、表情符号、特殊符号等等。因此,UTF-8可以支持非常大的字符集,最多可以表示2097151个字符,其中英文字母占用1个字节,中文汉字占用3-4个字节。QGIS在所有主流的操作系统上都能很好地支持。UTF-8是一种能够表示多种语言字符的字符编码方式,能够支持几乎所有文字和符号的显示。

【GBK】:中文国家常用的字符编码方式,适合于处理中文字符。GBK编码共收录了21003个汉字、883个生僻汉字和682个符号等,GBK中的每个中文汉字占用2个字节。因此,GBK可以支持包括中文在内的大部分汉字字符。由此可看出GBK字符编码方式更适合于处理中文字符。如果系统中安装了GBK的字体支持,QGIS可以正常显示和处理GBK编码的字符。

SummaryQGIS在支持字符集方面通常是与操作系统保持一致的。而UTF-8和GBK是常见的字符编码方式,在QGIS加载的图层属性表出现字符乱码的情况下(假设图层字符集为GB2313-共收录7445个字符,而操作系统未安装该字符集),通常通过修改图层的字符集为UTF-8,在重新导出即可解决大多数情况下字符乱码的问题。

3、加载图层

双击新建的图层或鼠标左键长按拖动图层到画布放开,将新建图层加载到图层面板。


二、制造拓扑错误

针对QGIS【拓扑检查器】检查规则中单图层的4类拓扑错误检查规则:【不允许包含多部件几何图形】、【不允许有无效的几何图形】、【不允许有重叠】和【不允许重叠】,我们在新建的测试图层中制造4类拓扑错误来进行测试。

1、创建多部件几何图形

2、创建无效的几何图形

3、创建互相重叠的要素

4、创建完全重复的要素


 三、修改拓扑错误

1、多部件错误修改

方法一:使用工具栏【多部件转单部件】工具炸开多部件。

方法二:使用菜单栏【矢量】选项下的几何图形工具中的【多部件转单部件】工具炸开多部件。

2、无效几何图形修改

框选自相交要素自相交的要素形点后,点击BacKspace删除形点。

3、无效几何图形修改

使用重塑工具,捕捉要素重叠区域形点,对重叠的要素边缘进行整形。

4、完全重叠的要素修改

单击选中重叠的要素其中的一个要素,点击delete键删除其中一个要素。


四、验证修改后数据的拓扑错误

1、重新验证拓扑错误

修改完成后点击全部验证,查看图层是否还存在未修改的拓扑错误。

2、检查拓扑错误修改情况

验证后全部错误修改完成,图层的错误高亮显示消失。


五、使用拓扑检查器进行拓扑检查

【适用情况】:图层拓扑错误较少且容易修改,不用导出新的图层对比修改,可实时验证修改后的图层是否还存在拓扑错误。

1、启用拓扑检查器

点击菜单栏【插件】选项中的【管理并安装插件】,在弹出的插件窗口中选择【已安装】,勾选以启用【拓扑检查器】。

2、打开拓扑检查器

启用拓扑检查器后默认集成到矢量选项卡,在菜单栏【矢量】选项卡里打开【拓扑检查器】。

3、设置检查图层和规则

打开拓扑检查器后默认合并到浏览器工具栏,选择检查图层,拓扑规则,并逐个规则进行添加,添加完成后点击OK,勾选拓扑检查器中的【在画布上显示错误】。

4、验证数据错误

点击【拓扑检查器面板】中的【全部验证】开始验证图层中的拓扑错误,在错误信息栏会显示错误图层、错误类型和要素id。在画布上会高亮显示错误的要素和错误的重叠区域。


六、使用几何图形检查器进行拓扑检查

【适用情况】:适用于图层拓扑错误较多,需要导出检查图层便于批量修改的场景,修改后错误大量减少,对于一些需要人为修改的错误,可转至拓扑检查器进行错误的查改和实时验证。

1、启用几何图形检查器

点击菜单栏【插件】选项中的【管理并安装插件】,在弹出的插件窗口中选择【已安装】,勾选以启用【几何图形检查器】。

2、打开几何图形检查器

启用几何图形检查器后默认集成到矢量选项卡,在菜单栏【矢量】选项卡里打开【几何图形检查器】。

3、设置检查图层和规则

设置检查图层和拓扑规则后点击运行输出错误图层,使用几何图形检查器进行拓扑检查时有两点需要注意:

①检查图层不能切换至编辑状态

②错误图层输出路径不能和检查图层所在路径相同

4、拓扑错误查看及自动修改


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

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

相关文章

Linux学习第24天:Linux 阻塞和非阻塞 IO 实验(一): 挂起

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 在正式开始今天的笔记之前谈一下工作中遇见的一个问题。 本篇笔记主要学习Linux 阻塞和非阻塞 IO 实验,主要包括阻塞和非阻塞简介、等待队列、轮询、…

适用于嵌入式arm的ffmpeg编解码

在嵌入式arm应用开发中,经常会遇到需要处理视频的情况,这时候就需要强大的开源工具ffmpeg出马了。 这里可以下载到各个版本的ffmpeg。 ffmpeg各版本https://www.videohelp.com/software/ffmpeg/old-versions 现在ffmpeg更新较频繁,如…

uniapp把文件中的内复制到另一个文件中

使用的是Html 5的plus.io.resolveLocalFileSystemURL方法,文档:HTML5 API Reference var soursePath file:///storage/emulated/0/a/;//用于读取var removePath file:///storage/emulated/0/w/;//用于移除w这个文件夹var targetPath file:///storage/…

STM32H750之FreeRTOS学习--------(一)初识RTOS

FreeRTOS 一、初识RTOS 裸机:裸机又称为前后台系统,前台系统指的中断服务函数,后台系统指的大循环,即应用程序 实时性差,程序轮流执行delayCPU空等待,效率低程序混乱,臃肿,功能都放在while循环…

Unity报错:Microsoft Visual C# Compiler version

Unity报错:Microsoft Visual C# Compiler version 问题解决方案总结 问题 Microsoft Visual C# Compiler version 2.9.1.65535 (9d34608e) Copyright © Microsoft Corporation 切换版本或者使用老项目的时候可能会出现这个报错,这个报错就是项目设置的问题 …

一款集成了主流大语言模型以及绘图模型的 APP, 采用 Flutter 开发,代码完全开源!!

一款集成了主流大语言模型以及绘图模型的 APP, 采用 Flutter 开发,代码完全开源,支持以下功能: 支持 OpenAI 的 GPT-3.5,GPT-4 大语言模型支持 Anthropic 的 Claude instant,Claude 2.0 大语言模型支持国产…

Java后端开发——实现登录验证程序

一、实现一个简单登录验证程序 实现一个简单的用户登录验证程序,如果用户名是 abc ,密码是 123,则显示欢迎用户的信息,否则显示“用户名或密码不正确”。 【分析】 该案例采用 JSP 页面只完成提交信息和验证结果的显示&#xff…

Virtual DOM

目录 Virtual DOM 前言 用法 代码 理解 Virtual DOM的工作原理: 为什么使用Virtual DOM? 哪些库/框架使用Virtual DOM? 总结 Virtual DOM(虚拟DOM)是一种编程概念,它是对真实DOM的轻量级抽象表示。在前端开发中&#x…

Windows-Oracle19c 安装详解-含Navicate远程连接配置 - 同时连接Oracle11g和Oracle19c

文章目录 0 说明1 下载链接2 安装:一定要以管理员身份运行,不然后面有可能会报错。3 启动监听4. 登录Oracle4 Navicate远程连接-配置监听4.1 修改监听文件4.2 网络配置助手-配置本地监听端口4.3 Navicate连接成功 5 Navicate同时连接两个Oracle数据库 0 …

MFA-Conformer

基于多尺度特征聚合Conformer说话人识别模型的创新与应用 论文:https://arxiv.org/abs/2203.15249 代码:GitHub - zyzisyz/mfa_conformer 收录于 INTERSPEECH 2022 1. 简介 本文由清华大学与腾讯科技(北京)有限公司、台湾大学…

为什么进行压力测试? 有哪些方法?

在信息技术飞速发展的今天,软件系统的性能已经成为了用户满意度的决定性因素之一。而要确保一个系统在实际使用中能够稳定可靠地运行,压力测试就显得尤为关键。本文将深入探讨什么是压力测试,为什么它是如此重要,以及一些常见的压…

asp.net学生考试报名管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net学生考试报名管理系统是一套完善的web设计管理系统系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使 用c#语言开发 应用技术:asp…