- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
牟乃夏ArcEngine教程-第6章空间数据编辑
牟乃夏 ArcGIS Engine 地理信息系统开发教程配套PPT---第6章 空间数据编辑目录1. 简介?2. 编辑对象3. 开始编辑4. 设置编辑图层5. 设置编辑任务6. 编辑操作7. 节点编辑8. 属性编辑9. 保存编辑10. 结束编辑1.简介空间数据编辑是指产生新的矢量数据或对已有的矢量空间数据进行的再加工,包括矢量数据的生产、加工、维护、错误修正等,这是空间数据维护与加工的基本环节,也是基于ArcGIS Engine开发的GIS系统的基本功能。空间数据的编辑包括矢量图形编辑和属性数据的编辑两部分。空间数据的编辑操作是针对工作空间下的数据进行的,如:ShapefileWorkspaces工作空间、AccessWorkspace工作空间、FileGDBWorkspace工作空间等。1.简介本章以编辑FileGDBWorkspace为例介绍空间数据的编辑(当然,也支持对ShapefileWorkspaces工作空间、AccessWorkspace工作空间等数据的编辑操作)。实例程序实现思路调用IEngineEditor接口的StartEditing方法打开一个编辑对象,并设定相关参数;将设定好参数的IEngineEditor接口跳转到IEngineEditLayers接口,利用该接口的SetTargetLayer方法来设置一个目标图层;通过IEngineEditTask对象设定编辑任务,并将其传递给当前的EngineEditor对象的CurrentTask属性;实现所要执行的编辑操作;在编辑对象过程中,使用IEngineEditor接口的StopEditing方法,并输入参数“true”结束编辑任务并保存(或者直接调用ControlsEditingSaveCommand方法进行保存,本章使用前者);停止编辑。1.简介代码说明在ArcGIS Engine的编程过程中,数据编辑部分的代码较为复杂。一般的,ArcGIS Engine实现空间数据编辑的方法有两种:一种是直接调用ArcGIS Engine封装的工具,另一种是根据操作过程逐步编写代码。本章实例的程序架构为一个解决方案下有两个项目,分别是GISEditor(作为启动项目)和GISEditor.EditTool。其中GISEditor项目主要用来设计程序的主界面,实现各编辑功能的按钮(按钮功能的具体实现函数在GISEditor.EditTool项目中)。GISEditor.EditTool项目主要用来实现各编辑操作,这个项目所包含的类从功能上可分为三种:Command(命令类)、Tool(工具类)、BasicClass(公共基础类),在解决方案管理器中分别对应于Command、Tool和BasicClass文件夹。1.简介实例程序中还用到了IHookHelper(钩子接口),它主要有如下功能:1.通过IHookHelper,获取地图控件和主窗体:m_hookHelper.Hook = m_Hook;(m_Hook为mainMapControl.Object,即主视图对象);2.通过IHookHelper,获取IActiveView和IMap对象:m_Map = m_hookHelper.FocusMap;3.通过IHookHelper,操作地图:HookActions hookActions= m_hookHelper as IHookHelper;获取IHookActions,再通过IHookActions进行Flash、Pan、等操作Command文件夹中包含的类是以命令方式来实现编辑操作的,运行时单击对应按钮即可,如:UndoCommandClass(撤销操作类)、RedoCommandClass(恢复操作类)、DelFeatureCommandClass(删除要素操作类)等。Tool文件夹中所包含的类是以工具的方式(即鼠标与视图交互的方式)来实现编辑操作的,如AddVertexToolClass(添加节点工具类)、MoveVertexToolClass(移动节点工具类)、DelVertexToolClass(删除节点工具类)、MoveFeatureToolClass(移动要素工具类)等。BasicClass文件夹中包含的类有:EditVertexClass(编辑节点类)、MapManager(视图控制类)、SupportZMFeatureClass(修改Z、M值类)等。这些类封装了各种编辑操作的公共方法,如MapManager中封装了GetRgbColor方法用于获取颜色、CalDistance方法用于计算两点之间X方向和与Y方向上的距离、ConvertPixelsToMapUnits方法用于单位之间的转换、GetSelectedFeatur
文档评论(0)