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 目录 前几节我们已经介绍 ...
随机推荐
- Laravel Cache 使用
在项目中使用 laravel 的 cache 时,使用下面形式方法: $value = Cache::remember('users', $minutes, function() { return D ...
- for/foreach/linq效率测试
; Random r = new Random(); List<byte> list = new List<byte>(); Console.WriteLine("开 ...
- NSURLRequest POST方式请求服务器示例
http://lizhuang.iteye.com/blog/1833297 1. 准备阶段 NSString *urlString = [NSString stringWithFormat:@&q ...
- LoadLibrary失败的原因(转)
背影: 今天终于把公司的SDK 动态链接库转为Java 可调用的JNI 格式.DLL的编译环境是VS2010,使用Debug 输出时调用正常,而用Release 输出却调用失败.这可把哥搞惨了,开始以 ...
- iOS自定义字体及类目 分类: ios技术 2015-05-15 16:34 195人阅读 评论(0) 收藏
1:获取字体文件 从各种渠道下载字体文件ttf, 网站或者从别的ipa里扣出来.(以fzltxh.ttf为例) 2:将fzltxh.ttf文件拷贝到工程中 3:在Info.plist中添加项: Fon ...
- Backbone视图渲染React组件
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...
- 获取linq生成的sql语句
命名空间:using System.Data.Objects; var query = db.TxtRes.Join(db.LangRes, a => new { id1 = a.ResID, ...
- php 实例说明 socket通信机制
php 实例说明 socket通信机制 张映 发表于 2010-04-24 分类目录: php 一,socket是什么 什么是socket 所谓socket通常也称作"套接字",用 ...
- php中字符串长度和截取的函数
在做PHP开发的时候,由于我国的语言环境问题,所以我们常常需要对中文进行处理. 在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函 ...
- archlinux初次接触遇到的问题
arch-chroot /mnt /bin/bash ( 两个地址中间有空格)