ArcGIS基础实验操作100例--实验43填充面要素空洞

news2024/11/17 1:47:37

本实验专栏参考自汤国安教授《地理信息系统基础实验操作100例》一书 

实验平台:ArcGIS 10.6

实验数据:请访问实验1(传送门)

高级编辑篇--实验43 填充面要素空洞

目录

一、实验背景

二、实验数据

三、实验步骤

(1)绘制覆盖待填充空洞的面要素

(2)填充空洞

(3)绘制覆盖所有面区域的图形

(4)标识面要素

(5)打散多部分要素

(6)导出混合要素数据

(7)融合面要素与空洞区域要素


一、实验背景

在对地理数据进行编辑处理时,时常会遇到矢量面数据中存在个别或大量的空洞区域,若要将整个面区域作为分析的范围,则需要将空洞移去,使得面要素被完整填充。考虑实际情况中空洞的数量多少、分布情况,填充空洞区域可以采用逐个填充的方式,也可以采用快速大批量填充的方式。

本实验讲述使用地理信息系统软件对矢量面进行填充空洞的方法,分别以逐个填充和批量填充的方式实现。逐个填充:针对每个空洞进行手动合并填充;批量填充:绘制能够覆盖所有图形区域的草图面来实现融合。读者通过实验练习,应能够深入理解两种方法的处理方式,熟练掌握填充面空洞的方法。

二、实验数据

图层名称格式坐标系说明
plgShapefile面要素Unknown用于进行空洞填充的面要素

直接双击文件Ex43.mxd即可打开

三、实验步骤

(1)绘制覆盖待填充空洞的面要素

启动编辑【Start Editing】,使用【Create Features】对话框中的【Constrcution Tools】→【Polygon】工具;绘制一个包含空洞整个范围的任意草图面数据。

(2)填充空洞

按住【Shift】键,使用【Editor】工具条中的【Edit Tool】按钮,选中有空洞的面图形;利用【Eitdor】工具条中的【Merge】工具,选择与其他要素合并的要素设置为“plg”;点击【OK】,完成空洞填充。同理,其他空洞也可以按照这种方式逐个地填充。

注:合并后新图形的属性记录与“选择与其他合并的要素”属性记录相同。

(3)绘制覆盖所有面区域的图形

右键菜单栏空白处打开【Draw】工具条;使用【Draw】工具条中绘制矩形工具,绘制一个包含所有图形的任意面图形(Graphic);保持该图形的选中状态,选择【Draw】工具条下【Convert Graphics To Features】工具;【Output shapefile or feature class】设置为“cover”,勾选【Automatically delete graphics after conversion】;点击【OK】,得到覆盖所有图形的面要素。

(4)标识面要素

在 ArcToolbox中,打开【Analysis Tools】→【Overlay】→【Identity】对话框,【Input Features】设置为“cover”,【Identity Features】设置为“plg”,【Output Feature Class】设置为“cover_identity”;点击【OK】,得到标识后的面图层。

注:该操作依据 plg图层数据,将新面图层进行分割,分割后的图层中既包含了有空洞的面图形,也包括了空洞区域的面图形,以及面外部区域的多余数据。

(5)打散多部分要素

右击标识结果图层,打开其属性表;选中第一条记录后,可以观察到空洞区域图形与面外部多余图形同时被选中,说明这两部分数据被融合到同一记录中,即多部分要素,需要将其打散为单部分要素;点击【Clear Selection】取消选择图形,打开【Data Management Tools】→【Features】→【Multipart To Singlepart】对话框,【Input Features】设置为“cover_identity”,【Output Feature Class】设置为“new_plg”;点击【OK】,得到打散后的面图形。

(6)导出混合要素数据

在new_plg 图层属性表中,选中面数据外部的多余图形记录;点击属性表工具栏中的【Switch Selection】工具,选中所有面图形数据与空洞区域数据;右击new_plg图层,打开【Data】→【Export Data】对话框,设置【Output feature Class】为“plgs”;点击【OK】,得到面图形数据与空洞区域数据。

(7)融合面要素与空洞区域要素

查看 plgs图层属性表可知,合并面图形与空洞区域数据,需要具有相同属性值的字段,即“FID_cover”;打开【Data Management Tools】→【Generalization】→【Dissolve】对话框,【Input Features】设置为“plgs”,【Output Features Class】设置为“results”,【Dissolve_Fields】设置为“FID_cover”,去除勾选【Create multipart features】;点击【OK】,得到填充完所有空洞的面数据。

注:受融合工具的影响,结果数据中不能保留原始面的属性记录;若要保留,建议使用属性传递或属性表连接等方式。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript 条件语句

文章目录JavaScript If...Else 语句条件语句If 语句If...else 语句If...else if...else 语句JavaScript If…Else 语句 条件语句用于基于不同的条件来执行不同的动作。 条件语句 通常在写代码时,您总是需要为不同的决定来执行不同的动作。您可以在代码中使用条件语…

【学习笔记】Shell入门

Shell入门 https://www.bilibili.com/video/BV1WY4y1H7d3 资料:评论区取的 公众号的资料链接 https://pan.baidu.com/s/1_nBKUjE57MB2c96wmfSD5A 提取码:yyds 文章目录一、**Shell** 概述二、**Shell** 脚本入门三、变量1.系统预定义变量2.自定义变量**3…

自学软件测试该如何入门?

互联网行业发展很快技术更新也很快,软件测试技能要求在逐渐提高,自学软件测试要尽快而且入行后需要持续学习。保持好心态,找准教程,按照学习路线和自己的规划一步步学习下去~ 软件测试对代码的要求不像其他编程学科那么高&#x…

30个精品Python练手项目

随着 Python 语言的流行,越来越多的人加入到了 Python 的大家庭中。到底为什么这么多人学 Python ?我要喊出那句话了:“人生苦短,我用 Python!”,正是因为语法简单、容易学习,所以 Python 深受大…

Java微服务连接云服务器上的ZooKeeper

前言 这次要讲的连接ZooKeeper是在外网的云服务器上,不同于以往的本机上的虚拟机上的ZooKeeper,将会有一些不同于本机的连接方式。连接外网服务器进行操作可以更好的适应企业化的开发,脱离了本机的限制,具有很强的实战意义。 前…

小程序容器产品有何特点?

小程序容器顾名思义,是一个承载小程序的运行环境,可主动干预并进行功能扩展,达到丰富能力、优化性能、提升体验的目的。目前市面已知的技术产品包括:mPaas、FinClip、uniSDK 以及上周微信团队才推出的 Donut。今天,我们…

2022 年,这 20+22 位共建者闪耀 StarRocks 社区

2022 年即将过去,多变波动的大环境之中,一岁多的 StarRocks 社区依然保持了高速成长。这一年里,StarRocks 共发布 47 个大小版本,超过 200 人投入社区建设,每月 PR 数突破 1100。 在项目快速迭代的同时,社…

Jumpserver堡垒机部署使用详细教程

部署jumpserver服务器配置 官方建议2核8G 首先cd 到/opt目录下 curl -sSL https://github.com/jumpserver/jumpserver/releases/download/v2.28.1/quick_start.sh | bash 下载的时候可能会报错,不用管多执行几次。 正常下载页面是这样 因为是从github拉的所以可…

volatile关键字(针对内存可见性)

一,示例 说明:创建两个线程,t1线程用来判断定义的flag变量是否等于0(等于0的话进入循环什么都不做),t2线程用来输入一个变量来修改flag的值;我们想要通过t2线程修改flag变量的值来达到跳出t1线…

Educational Codeforces Round 140 (Rated for Div. 2)(A,B,D)

太久没写博客了,感觉做的题不自己写一遍思路总还是有点问题。。。又到了新年啦,cf的新年特效爱了爱了A. Cut the Triangle给出三角形的三个顶点坐标,问是否可以使用水平或者竖直线从任意一个顶点将三角形划为两部分。思路:易得知&…

研发协同利器:XState调研与应用

背景帖子详情是一个图文/视频混排、拥有大量长文本、大量交互和部分细节动效的页面,细节组件非常多,页面复杂度高。按以往的页面协作方式,会将一个个组件样式、组件数据和组件交互逻辑交给对应的开发同学完成,通过多人协同最终搭建…

【数据结构】C语言实现栈和队列

目录 一、栈 1、栈的概念及结构 2、如何实现栈 3、代码实现 3.1 栈的定义 3.2 栈中将要实现的函数 3.3 函数实现 二、队列 1、队列的概念及结构 2、如何实现队列 3、代码实现 3.1 队列定义 3.2 队列中将要实现的函数 3.3 函数实现 一、栈 1、栈的概念及结构 栈&am…

AI医药论文阅读-使用药物描述和分子结构从文献中提取药物-药物相互作用

202107Using drug descriptions and molecular structures for drug-drug interaction extraction from literature 使用药物描述和分子结构从文献中提取药物-药物相互作用 Bioinformatics. 2021.07 有代码 https://github.com/tticoin/DESC_MOL-DDIE 目录 202107Using dru…

2022亚太杯数学建模(补赛)DE题思路模型代码

占个位置吧,开始在本帖实时更新赛题思路代码,文章末尾名片获取!ABC题已更新 持续为更新参考思路 赛题思路 会持续进行思路模型分析,下自行获取。 D题思路: (比赛开始后第一时间更新) E题思…

面试官:海量请求下的接口并发解决方案,具体聊聊吧

设定一个场景,假如一个商品接口在某段时间突然上升,会怎么办? 生活中的例子来说,假设冰墩墩在当天晚上上热搜之后,迅速有十几万人去淘宝下单购买,此时并没有做好对该商品的缓存预热以及准备,如何…

【力扣刷题】day1-1、两数之和 2、两数相加

力扣刷题笔记day1 1,两数之和 题意 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元…

C++ · 入门 · 04 | 引用

啊我摔倒了..有没有人扶我起来学习.... 👱个人主页:《CGod的个人主页》\color{Darkorange}{《CGod的个人主页》}《CGod的个人主页》交个朋友叭~ 💒个人社区:《编程成神技术交流社区》\color{Darkorange}{《编程成神技术交流社区》…

STM32MP157驱动开发——Linux WIFI驱动

STM32MP157驱动开发——Linux WIFI驱动一、简介二、驱动开发1.wifi驱动添加与编译2.配置 USB 支持设备1)配置 USB 支持设备2)配置支持的 WIFI 设备3)配置支持 IEEE 802.114)使能 STAGING 配置3.设备树配置4.编译 wifi 驱动1&#…

05SpringCloudAlibaba负载均衡服务调用-Ribbon

目录 推荐与004SpringCloud-Ribbon_gh_xiaohe的博客-CSDN博客 对比观看 Ribbon概述 Ribbon官网https://github.com/Netflix/ribbon/wiki/Getting-Started Ribbon是什么 Ribbon也进入维护模式 Ribbon能干什么 LB(负载均衡) 一句话:…

冲击港交所:百果园书写水果连锁运营默示录

卖水果是一门古老的生意,但是长期以来并不受资本重视。一是因为产品口味难以标准化、鲜度要求高、流通环节易损耗、质量控制难度大。二是因为交易主体多,进出壁垒小,经济学中往往将其定义为完全竞争市场,难以出现龙头企业和超额利…