ArcGIS Pro 简明教程(3)数据编辑
ArcGIS Pro 简明教程(3)数据编辑
by 李远祥
数据编辑是GIS中最常用的功能之一,ArcGIS Pro在GIS数据编辑上使用习惯有一定的改变,因此,本章可以重点看看一些编辑工具的使用和使用技巧。
创建数据
GIS数据编辑经常需要创建新的geodatabase或者featureclass和shapefile数据。以往在ArcMap中,只要连接了文件夹,都可以随心所欲的在文件夹右键进行新建。ArcGIS Pro则不能这样做了。原因很简单,因为Pro使用的是工程管理的模式进行数据和地图的管理,在新建工程的时候,已经默认创建了对应的工程文件夹、gdb文件、toolbox和sytle。Esri这样做是为了规范好数据的存放,让GIS工具跟着工程走,便于管理。如下图所示
如果使用右键的方式创建,可以看到已经不能创建gdb了,只能是工具箱或者是Python工具箱,如下图
如果选中工程默认创建好的gdb,则可以创建常规的数据格式和结构,但原来的导入功能已经在右键移除了,不能将外部的shapefile和来自其他gdb的featureclass导入进去,如下图所示
如需要导入数据到指定的gdb,可以使用【数据管理工具】--【要素】--【复制要素】去完成该工作。也可以先将数据加载到地图中,选中图层右键导出,指定存放的路径,其调用的工具也是【复制要素】工具。
目前的1.3版本还不支持直接创建shapefile格式数据,但如果必须使用shapefile的话,可以通过现在gdb里面创建featureclass,然后将其导出位shapefile格式。基本上可以看出,在全新的Pro里面,已经默认没有shapefile的位置了,仅剩下将shapefile直接使用或者作为中间格式与其他GIS平台进行交换。
同样,GDB也是不能直接新建,也必须使用工具才能新建。在Pro中,是建议将数据存在工程的GDB中,取消了右键的导入和导出功能,取消了shapefile的创建,也取消了新建gdb功能,对于老用户来说,是一个非常痛苦的事情,毕竟在过去,这类功能是用得非常多的。
在gdb中通过右键新建一个featureclass,可以看到调出来的时地理处理工具,如下图所示
从这些细节可以看出,Esri基本将操作集成到GP工具中,这样的好处在于功能可以与modelbuilder进行集成,后期也可以将其发布到GP服务中。
字段的创建不再在featureclass创建时创建了,而是在创建完之后在featureclass的右键--【设计】中点出对应的设计面板,如下图所示
点开了字段设计后,在功能标签页上会开启【字段】标签页,如下图所示
字段设计好后,必须点击【保存】,这样才可以保存设置,如果设计好后直接关闭【字段】设计的标签,会提示是否保存,如果不保存会导致设计好的字段丢失。这就像追加数据和修改数据一样,必须点击保存才能生效。这跟ArcMap区别还是非常大的。
同样,在【图层】右键【属性表】中也可以添加字段。
编辑已有数据
如果已经创建了数据或是将一些已有的数据加载到Pro中进行编辑,Pro不需要像ArcMap那样调出编辑器工具,而是直接的在【编辑】标签中启动所有的功能,如下图,【编辑】功能下基本上罗列出各种编辑所能用到的工具。例如创建要素,点击之后会根据配置好的地图弹出相应的编辑模板,编辑模板的好处在于编辑数据的时候所见即得,同时可以固定一些属性值,减少编辑时的录入工作。
编辑模板在Pro中也得到了增强,除了属性模板之外,还新增了工具模板,就是说,可以在编辑时限制某些编辑工具的使用。例如面要素的编辑,在编辑模板中选中一个面要素,然后右键--属性,进入到【模板属性】中,可以看到如下图的模板属性,其中相对ArcMap多出一项【工具】
在这里可以设置这个要素编辑的默认工具和允许使用的工具。与ArcMap编辑不一样的地方是ArcMap在选中编辑要素的模板之后,还需要在下面的【构造工具】中选择使用 不同的工具去编辑;而Pro则是直接在编辑模板项选中后,罗列出可以用的这些工具,如下图所示
个人认为,这种设计更适合那些长期从事矢量化工作的人群,这样可以减少鼠标移动的幅度。在选中使用的构造工具后,会在地图的下方出现一些辅助的工具,如直线、弧线、追踪编辑等。ArcMap则是需要在编辑工具条上进行点击。编辑时右键同样可以调出这些辅助工具,编辑状态下的右键与ArcMap大同小异,不过对菜单的图标都做了设计,相对与ArcMap的纯文本右键菜单,这个也直观了不少。
ArcGIS Pro编辑的捕捉功能是默认关闭的,如果想要开启捕捉功能,则需要在【编辑】标签的【捕捉】进行开启,如下图所示
在ArcGIS Pro中没有所谓的【高级编辑】工具条,而是全部整合到修改要素工具中。
在ArcGIS Pro中编辑时的拓扑工具基本上也是消失了,如果要做一些面对齐或者共边操作,必须依赖上述的【修改要素】的这些工具。例如,两个面要素在编辑的时候有部分重叠,但最终目的是要依照某一个面为参考,裁剪掉多余的部分,实现另一个面与参考面共边。其实这在ArcMap的拓扑工具可以做到,但Pro中,那就需要在【对齐边】工具中进行操作,操作的方式与ArcMap大同小异,如下图
结果如下
关于共边的编辑,由于没有了拓扑工具条,所以,操作起来有点别扭。在ArcGIS Pro中选择工具是有了变化,在选择中要素之后,默认在【修改要素】面板中使用的是【要素】选择,如果要实现共边编辑,那就需要选中某条边,则自动切换到拓扑编辑状态,然后进行折点编辑。这样就可以编辑两个图形的公共边了。如下图所示。
总结
ArcGIS Pro的编辑总体上比ArcMap变得简单有效,改良了不少的操作。但由于Ribbon方式的限制,导致传统的拓扑菜单缺失,拓扑编辑并不是十分顺畅。作为ArcMap的继任者,Pro估计会在后续的版本进一步改善一些操作方式和建立新的操作习惯。
ArcGIS Pro 简明教程(3)数据编辑的更多相关文章
- ArcGIS Pro 简明教程(1)Pro简介
ArcGIS Pro 简明教程(1)Pro简介 ArcGIS Pro已经发布了相当的一段时间了,截至笔者写这系列文章的时候已经是1.3版本了,已经是相当完善的一个版本,基本上已经完成了原来ArcGIS ...
- ArcGIS Pro 简明教程(4)工具和模型构建器
ArcGIS Pro 简明教程(4)工具和模型构建器 by 李远祥 工具箱中的工具 ArcGIS Pro 在1.3版本基本上已经继承了ArcMap的所有工具,而且会不断加入一些它自身才有的工具,例如适 ...
- ArcGIS Pro 简明教程(2)基础操作和简单制图
ArcGIS Pro 简明教程(2)基础操作和简单制图 By 李远祥 本章主要介绍ArcGIS Pro如何加载数据并进行简单的地图制作,以基本的操作为主. 上一章节介绍过,ArcGIS Pro是可以直 ...
- ArcMap和ArcGIS Pro加载百度地图
前面发布了两篇我用ArcBruTile开发用于ArcMap加载百度地图的插件ArcBruTileBaidu,放在网上后评论和反响还不错,还有两位大学同学通过百度搜索居然搜到我本人!文章和技术介绍也被网 ...
- Python 简明教程 --- 3,Python 基础概念
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 控制复杂性是计算机编程的本质. -- Brian Kernighan 了解了如何编写第一个Pytho ...
- Python 简明教程 --- 2,第一个Python 程序
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那你肯定是用错方法了. -- Carig Zerouni 当你在自己的电脑上 ...
- Python 简明教程 --- 1,搭建Python 环境
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 人生苦短,我用Python. -- 龟叔T恤 Python 是一门解释型语言,所以要想运行Pytho ...
- Python 简明教程 --- 18,Python 面向对象
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 代码能借用就借用. -- Tom Duff 目录 编程可分为面向过程编程和面向对象编程,它们是两种不 ...
- Python 简明教程 --- 13,Python 集合
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果代码和注释不一致,那很可能两者都错了. -- Norm Schryer 目录 前几节我们已经介绍 ...
随机推荐
- nexus 中央仓库
nexus 中央仓库 下载地址:http://www.sonatype.org/nexus/archived 下载最新版本 mkdir -p /opt/local/nexus tar zxvf nex ...
- vim中c/c++源码跳转
在使用vim阅读c/c++代码的时候,代码跳转很重要, 在学习redis代码的时候遇到这个问题. 网上查找之后通过实践发现cscope比较好用,可以很方便的实现跳转 1. 安装cscope sudo ...
- webstrom命令大全
Ctrl + Space:Basic code completion (the name of any class, method or variable) 基本代码完成(任何类.函数或者变量名称), ...
- VS2010 中 error 2732: 链接规范与的早期规范冲突 的解决
在实验室做项目的时候遇到了这个问题,终于整明白了. 一般来说这个错误出现在类似以下的语句中 extern "C" int yylex(void); extern "C&q ...
- Java 之 反射
1.反射 a.意义:允许运行中的Java程序对自身进行检查,或者说"自审",并能直接操作程序的内部属性 b.概括:运行时探究和使用编译时未知的类 c.反射的核心原理: ①JVM在加 ...
- UVa 10299 - Relatives
题目大意:Euler's Totient的应用. 几乎和UVa 10179 - Irreducable Basic Fractions一样,于是偷了个懒,直接用10179题的代码,结果WA了,感觉一样 ...
- assert 实现分析
一直以来,对于assert的实现总是不太理解,现在深入assert背后的代码,总算对assert的实现有了一个清醒的认识. assert基于宏定义与宏展开实现.首先介绍一下assert的功能:它能够断 ...
- 公众号第三方平台开发-aes解密失败
公众号第三方平台开发-aes解密失败 问题:本地启动项目,配置域名,测试微信公众号,系统正常运行:将项目部署到测试环境执行同样的操作,系统报错,错误异常:aes解密失败..... 调试--寻找问题-- ...
- UVa 341 - Non-Stop Travel
题目大意:给一个地区的地图,上面有若干路口,每个路口因为红灯的缘故要耽误一些时间,给出起点和终点,找出最短路径使得耽误时间最短. 单源最短路问题,Dijkstra算法.同时还要打印路径. #inclu ...
- UVa 10986 - Sending email
题目大意:网络中有n个SMTP服务器,有m条电缆将它们相连,每条电缆传输信息需要一定的时间.现在给出信息的起点和终点,计算所需的最小时间. 有权图上的单源最短路问题(Single-Source Sho ...