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)数据编辑的更多相关文章

  1. ArcGIS Pro 简明教程(1)Pro简介

    ArcGIS Pro 简明教程(1)Pro简介 ArcGIS Pro已经发布了相当的一段时间了,截至笔者写这系列文章的时候已经是1.3版本了,已经是相当完善的一个版本,基本上已经完成了原来ArcGIS ...

  2. ArcGIS Pro 简明教程(4)工具和模型构建器

    ArcGIS Pro 简明教程(4)工具和模型构建器 by 李远祥 工具箱中的工具 ArcGIS Pro 在1.3版本基本上已经继承了ArcMap的所有工具,而且会不断加入一些它自身才有的工具,例如适 ...

  3. ArcGIS Pro 简明教程(2)基础操作和简单制图

    ArcGIS Pro 简明教程(2)基础操作和简单制图 By 李远祥 本章主要介绍ArcGIS Pro如何加载数据并进行简单的地图制作,以基本的操作为主. 上一章节介绍过,ArcGIS Pro是可以直 ...

  4. ArcMap和ArcGIS Pro加载百度地图

    前面发布了两篇我用ArcBruTile开发用于ArcMap加载百度地图的插件ArcBruTileBaidu,放在网上后评论和反响还不错,还有两位大学同学通过百度搜索居然搜到我本人!文章和技术介绍也被网 ...

  5. Python 简明教程 --- 3,Python 基础概念

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 控制复杂性是计算机编程的本质. -- Brian Kernighan 了解了如何编写第一个Pytho ...

  6. Python 简明教程 --- 2,第一个Python 程序

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那你肯定是用错方法了. -- Carig Zerouni 当你在自己的电脑上 ...

  7. Python 简明教程 --- 1,搭建Python 环境

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 人生苦短,我用Python. -- 龟叔T恤 Python 是一门解释型语言,所以要想运行Pytho ...

  8. Python 简明教程 --- 18,Python 面向对象

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 代码能借用就借用. -- Tom Duff 目录 编程可分为面向过程编程和面向对象编程,它们是两种不 ...

  9. Python 简明教程 --- 13,Python 集合

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果代码和注释不一致,那很可能两者都错了. -- Norm Schryer 目录 前几节我们已经介绍 ...

随机推荐

  1. 对于形式参数只能用final修饰符,其它任何修饰符都会引起编译器错误

    在Java中修饰符总共有一下几种: 1.访问控制修饰符    分别有:public private protected,缺省 2.其它修饰符      分别有:abstract,final,stati ...

  2. kafka第六篇---多个进程读不齐

    问题: 4台kafka组成的集群,多余5个进程读的话,造成偏移不齐. 解决办法: 用小于4个进程执行,如果执行够快,就可以追得上

  3. ubuntu12.04安装tar.gz格式的jdk

    注意系统的版本,jdk也有32位和64位的,不然会无效 首先将*.tar.gz压缩包解压 命令: tar -xzvf *.tar.gz 假设得到的文件夹为java 将其移动到/usr/中 命令为:su ...

  4. 超全!整理常用的iOS第三方资源

    一:第三方插件 1:基于响应式编程思想的oc 地址:https://github.com/ReactiveCocoa/ReactiveCocoa 2:hud提示框 地址:https://github. ...

  5. [转]tar 分包压缩与合并

    要将目录logs打包压缩并分割成多个1M的文件,可以用下面的命令:  tar cjf - logs/ |split -b 1m - logs.tar.bz2. 完成后会产生下列文件:  logs.ta ...

  6. jsp 获取应用目录

    ${pageContext.request.contextPath}  //   应用名为“demo1” 则得到的是"/demo1" <script>$(documen ...

  7. mongodb 导入数据库文件

    吐槽一下:  这个导入现有数据文件弱爆了... 直接将要导入的数据文件放到mongodb下的db目录下就完事了...O(∩_∩)O哈哈~ 例如: 将shop_suning (shopdb_suning ...

  8. T4模板使用

    本例使用的数据库是Northwind 1.新建tt文本模板customer.tt 2. 修改customer.tt内容为 <#@ template debug="false" ...

  9. IOS开发中如何判断程序第一次启动(根据判断结果决定是否显示新手操作引导)

    IOS开发中如何判断程序第一次启动 在软件下载安装完成后,第一次启动往往需要显示一个新手操作引导,来告诉用户怎么操作这个app,这就需要在程序一开始运行就判断程序是否第一次启动,如果是,则显示新手操作 ...

  10. CentOS标准目录结构

    原博:http://www.centoscn.com/CentOS/2014/0424/2861.html/ 最高层root --- 启动Linux时使用的一些核心文件.如操作系统内核.引导程序Gru ...