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编码的字符。
Summary:QGIS在支持字符集方面通常是与操作系统保持一致的。而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、拓扑错误查看及自动修改
相关文章:

QGIS008:QGIS拓扑检查、修改及验证
摘要:本文介绍使用QGIS拓扑检查器和几何图形检查器检查图层的拓扑错误,修改拓扑错误,并对修改后的图层进行错误验证。 实验数据: 链接:https://pan.baidu.com/s/1Vy2s-KYS-XJevqHNdavv9A?pwdf06o 提取码:…...
安装DBD-Oracle报错处理
cd DBD-Oracle-1.83 perl Makefile.PL make && make install make编译报错如下: /bin/ld: 找不到 -lnsl collect2: 错误:ld 返回 1 make: *** [Makefile:524:blib/arch/auto/DBD/Oracle/Oracle.so] 错误 1 [rootlocalhost DBD-Ora…...
【机器学习】KNN算法-鸢尾花种类预测
KNN算法-鸢尾花种类预测 文章目录 KNN算法-鸢尾花种类预测1. 数据集介绍2. KNN优缺点: K最近邻(K-Nearest Neighbors,KNN)算法是一种用于模式识别和分类的简单但强大的机器学习算法。它的工作原理非常直观:给定一个新数…...
LuatOS-SOC接口文档(air780E)--lora - lora驱动模块
常量 常量 类型 解释 lora.SLEEP number SLEEP模式 lora.STANDBY number STANDBY模式 lora.init(ic, loraconfig,spiconfig) lora初始化 参数 传入值类型 解释 string lora 型号,当前支持: llcc68 sx1268 table lora配置参数,与具体设备…...

Compose 自定义 - 绘制 Draw
一、概念 所有的绘制操作都是通过调整像素大小来执行的。若要确保项目在不同的设备密度和屏幕尺寸上都能采用一致的尺寸,请务必使用 .toPx() 对 dp 进行转换或者采用小数尺寸。 二、Modifier 修饰符绘制 官方页面 在修饰的可组合项之上或之下绘制。 .drawWithCon…...

c#学习相关系列之构造函数
目录 一、构造函数的作用 二、构造函数的特征 三、三种构造函数介绍 1、实例构造函数 2、静态构造函数 3、私有构造函数 一、构造函数的作用 构造函数用来创建对象,并且可以在构造函数中对此对象进行初始化。构造函数具有与类相同的名称,它通常用来…...

CS224W1.3——图表示的选择
文章目录 1. 图网络构成2. 选择一个合适的表示3. 图结构实例3.1 二部图3.2 图的表示 4. 节点和边的属性 这小节主要讲图表示的选择。 1. 图网络构成 对于每个实体,我们创建节点 N N N,对于每个关系,我们创建边 E E E,对于整体而言…...
rust学习——插件rust-analyzer安装与配置
插件rust-analyzer安装与配置 rust-analyzer有一个中文版本。安装前请先卸载其他rust插件。 首次安装会下载语言服务。 您可能是首次安装Rust中文标准库插件 现在还需要安装Rust语言服务(约25MB单文件)就全部安装完成啦~正在后台自动安装请稍后... 下载完成...OK配置 "…...

Spring Boot简介
Spring Boot帮助你创建可以运行的独立的、基于Spring的生产级应用程序。 我们对Spring平台和第三方库采取了有主见的观点,这样你就能以最少的麻烦开始工作。 大多数Spring Boot应用程序只需要很少的Spring配置。 你可以使用Spring Boot来创建Java应用程序ÿ…...

Linux下protobuf和 protobuf-c安装使用
如果在 C语言中使用 protobuf,就需要使用 protobuf-c这个库。 protobuf使用详解:https://blog.csdn.net/qq_42402854/article/details/134066566 下面在 Linux下安装 protobuf和 protobuf-c。 一、下载 protobuf和 protobuf-c 官方的 Protocol Buffer提…...

FastAPI 快速学习之 Flask 框架对比
目录 一、前言二、FastAPI 优势三、Hello World四、HTTP 方法五、URL 变量六、查询字符串七、POST 请求八、文件上传九、表单提交十、Cookies十一、模块化视图十二、数据校验十三、自动化文档Swagger 风格ReDoc 风格 十四、CORS跨域 一、前言 本文主要对 FastAPI 与 Flask 框架…...

Spring Boot和XXL-Job:高效定时任务管理
Spring Boot和XXL-Job:高效定时任务管理 前言第一:XXL-Job简介什么是XXL-job对比别的任务调度 第二: springboot整合XXL-job配置XXL-Job Admin拉取XXL-Job代码修改拉取的配置 配置执行器自己的项目如何整合maven依赖properties文件配置执行器…...

3、QtCharts 动态曲线图
文章目录 效果声明变量构建静态图表创建计时器连接信号与槽槽函数核心代码 效果 声明变量 构建静态图表 //构建曲线系列m_splineSerisenew QSplineSeries(this);//为折线添加数据qreal x0.f;for (size_t i0;i<c_MaxSize;i){xqreal(i1)/c_MaxSize;m_splineSerise->append(…...

Linux下自动挂载U盘或者USB移动硬盘
最近在折腾用树莓派(实际上是平替香橙派orangepi zero3)搭建共享文件服务器,有一个问题很重要,如何在系统启动时自动挂载USB移动硬盘。 1 使用/etc/fstab 最开始尝试了用/etc/fstab文件下增加:"/dev/sda1 /home/orangepi/s…...

一文通透位置编码:从标准位置编码到旋转位置编码RoPE
前言 关于位置编码和RoPE 我之前在本博客中的另外两篇文章中有阐述过(一篇是关于LLaMA解读的,一篇是关于transformer从零实现的),但自觉写的不是特别透彻好懂再后来在我参与主讲的类ChatGPT微调实战课中也有讲过,但有些学员依然反馈RoPE不是…...

八皇后问题
1、问题描述 在棋盘上放置 8 个皇后,使得它们互不攻击,此时每个皇后的攻击范围为同行同列和同对角线,要求找出所有解,如下图所示。 左图为皇后的攻击范围,右图为一个可行解。 2、分析 最简单的思路是把问题转化为 “…...

UE4/UE5 设置widget中text的字体Outline
想要在蓝图中控制Widget 中的 text字体,对字体outline参数进行设置。 但是蓝图中无法直接获取设置outline参数的方法: 没有outline相关的蓝图函数 该参数本身是在Font类别下的扩展,所以只要获取设置Font参数即可进行outline的设置 text连出…...

漏洞复现-phpmyadmin_SQL注入 (CVE-2020-5504)
phpmyadmin SQL注入 _(CVE-2020-5504) 漏洞信息 CVE-2020-5504sql注入漏洞Phpmyadmin 5.00以下 描述 phpMyAdmin是Phpmyadmin团队的一套免费的、基于Web的MySQL数据库管理工具。该工具能够创建和删除数据库,创建、删除、修改数据库表&…...

安装虚拟机(VMware)保姆级教程及配置虚拟网络编辑器和安装WindowsServer以及宿主机访问虚拟机和配置服务器环境
目录 一、操作系统 1.1.什么是操作系统 1.2.常见操作系统 1.3.个人版本和服务器版本的区别 1.4.Linux的各个版本 二、VMware Wworkstation Pro虚拟机的安装 1.下载与安装 注意:VMWare虚拟网卡 2.配置虚拟网络编辑器 三、安装配置 WindowsServer 1.创建虚拟…...
vue表格列表导出excel
你可以通过下面的步骤使用Vue导出Excel表格: 安装依赖 安装两个依赖包: npm install --save xlsx file-saver创建Excel导出方法 //导出 Excel exportExcel() {// 表格数据let data this.tableData;// 转化为工作簿对象const workbook XLSX.utils.bo…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...

零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
JDK 17 新特性
#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持,不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的ÿ…...

优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...