分享
分销 收藏 举报 申诉 / 27
播放页_导航下方通栏广告

类型利用ArcGIS软件地理信息系统设计与实现.doc

  • 上传人:w****g
  • 文档编号:10645661
  • 上传时间:2025-06-06
  • 格式:DOC
  • 页数:27
  • 大小:583.54KB
  • 下载积分:10 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    利用 ArcGIS 软件 地理信息系统 设计 实现
    资源描述:
    地理信息系统设计及实现 ------利用ArcGIS软件 指导老师:****** 实习成员: Tphxmx 实习时间:2006.7.20—2006.8.3 目录 1. 实习目的: 4 2. 实习工具和环境: 4 3. 实习内容: 4 一、 基于ArcGIS平台的空间数据库设计及建立 4 1 新建地理数据库 4 2 图层分类设计 5 3 空间数据库逻辑结构设计 5 4 空间数据库物理结构设计及实现 5 5 空间数据库地理参考系统的设置及坐标转换方法 6 6 空间几何信息入库;实体相关属性入库 6 1) 配准 6 2) 特征提取 6 3) 属性添加 6 二、 ArcMap定制二次开发 10 菜单定制: 10 工具条定制: 10 1. 利用Customize对话框添加工具条 10 2. 利用宏定制工具条 ToolsàMacros在Macros对话框定制宏并编辑功能 11 3. 例1.简单实现放大缩小,返回上一级,标记要素,打开layer图层等 13 4. 例2.构建逻辑表达式查询空间几何对象 14 4.实习总结:(**************)………………………………………………………………………..19 1. 实习目的: ü 学习ArcGIS软件及其组成部分,并能灵活应用。 ü 学习定制自己的工作空间,高效率的完成工作。 ü 学习利用ArcCatalog建立地理信息数据库,属性入库。 ü 学习利用VBA环境做简单的二次开发。 2. 实习工具和环境: 工具:ArcMap、ArcCatalog 硬件环境:Microsoft Windows XP Professional 2002 3. 实习内容: 一、 基于ArcGIS平台的空间数据库设计及建立 实习目的: 学习应用ArcGIS软件处理地理信息系统问题,学会使用ArcCatalog及ArcMap。 步骤: 1 新建地理数据库 在ArcCatalog中建立如下的地理数据库 为个人数据库添加类和要素,属性 根据《成都市交通运输图》的地图的要素和类,把地图分为河流,道路,行政区域和边界,为每一个要素建一个表,选择坐标系统和添加要素的属性,结果图如下: 2 图层分类设计 河流:面状河流,线状河流 行政区:行政中心,行政区域,运输中心 道路:公路,铁路 3 空间数据库逻辑结构设计 面状河流:ployonriver 属性name 线状河流shpriver 属性name 行政区域xingzhengquyu属性 Maxnumber,Minnumber,name 行政中心xingzhengzhongxin属性name 运输中心yunshuzhongxin属性name 公路gonglu 属性 name,Maxliuliang,Minliuliang 铁路tielu 属性 name 4 空间数据库物理结构设计及实现 在ArcCatalog建库,建类,建要素,选择坐标系,添加属性,过程如下所示 5 空间数据库地理参考系统的设置及坐标转换方法 坐标投影采用高斯投影中的北京54(17带)投影坐标系 6 空间几何信息入库;实体相关属性入库 将地图导入ArcMAP中进行校正,直到在误差的可允许范围之内.导入建好的数据库,然后开始分要素进行数字化,结果如图所示 1) 配准:当载入bmp格式的成都市交通运输图时需要给地图进行配坐标系,选择坐标系为 高斯投影中的北京54(17带)投影坐标系,添加四个控制点保证误差在10m以内., 单击Georeferencing->rectify进行配准. 2) 特征提取:载入《成都市交通图.mdb》数据库,利用Arcmap中的 选择相应图层矢量化并保存结果(即几何信息入库) 3) 属性添加: 选中点、线或面状目标,右击,选择Attributes,弹出Attributes对话框,在对话框中设置目标的属性。(注释:自动生成的属性无法修改) 4) 整饰地图:标记地图要素,修改要素符号、线条,改变要素颜色以便更好逼真的显示地图 标记地图要素,修改要素符号、线条 .右击要改变属性的图层,在Layer Properties对话框里可以全方面修改图层的显示特性还可以设置简单的查询,连接等功能,更好的表现图层的属性 依比例显示地图: 7.地图数字化结果: 二、 ArcMap定制二次开发 目的:学习制作自己的软件界面,学习基于ArcGIS平台的GIS项目的建立及实现的流程,学习简单的ArcMap二次定制开发。 实习步骤:(1)菜单定制(2)工具条定制(3)查询 菜单定制: 包括汉化,屏蔽一些功能,分组,向采单条添加新的功能。 ToolsàCustomize,然后右键点击要汉化的菜单名,实现上面的功能 在Customize对话框选择相应的菜单条,把直接拖到采单条可以实现添加,拖动到Customize可以实现删除 工具条定制: 包括工具条的增删和用宏定制工具条 1. 利用Customize对话框添加工具条 2. 利用宏定制工具条 ToolsàMacros在Macros对话框定制宏并编辑功能 例证:一个表示放大功能的宏示例如下 通过CustomizeàCommandsàMacros-àCommands往工具条里面添加功能,可以改变标签的符号,颜色,实现分组等功能 用界面的方式实现简单查询放大,缩小和查询功能 设计步骤:ToolsàCustomizeàCommandsàUIControls 单击Create and Edit按钮进入VBA编程环境 如图所示添加一个用户界面,就可以开始实现功能了 3. 例1.简单实现放大缩小,返回上一级,标记要素,打开layer图层等 界面如下 27 / 27 程序如下: 实现放大功能的代码 Private Sub CommandButton1_Click() Dim pDoc As IMxDocument Dim pEnv As IEnvelope Set pDoc = ThisDocument Set pEnv = pDoc.ActiveView.Extent pEnv.Expand 0.5, 0.5, True pDoc.ActiveView.Extent = pEnv pDoc.ActiveView.Refresh End Sub 实现缩小功能的代码 Private Sub CommandButton2_Click() Dim pDoc As IMxDocument Dim pEnv As IEnvelope Set pDoc = ThisDocument Set pEnv = pDoc.ActiveView.Extent pEnv.Expand 2, 2, True pDoc.ActiveView.Extent = pEnv pDoc.ActiveView.Refresh End Sub 返回上一层代码 Private Sub CommandButton3_Click() 'macro:FullExtentPlus Dim IntAns As Integer Dim PItem As ICommandItem With ThisDocument.CommandBars Set PItem = .Find(ArcID.PanZoom_FullExtent) IntAns = MsgBox("Zoom to previous extent?", vbYesNo) If IntAns = vbYes Then Set PItem = .Find(ArcID.PanZoom_ZoomToLastExtentBack) PItem.Execute Else End If End With End Sub 标记要素的代码 Private Sub CommandButton4_Click() Dim As String = "c:\arcgis\arcexe83\ArcObjects Developer Kit\samples\data\USA\states.lyr" Dim pGxLayer As IGxLayer Dim pGx IGxFile Set pGxLayer = New GxLayer Set pGxFile = pGxLayer pGx = Dim pMxDoc As IMxDocument Set pMxDoc = ThisDocument pMxDoc.FocusMap.AddLayer pGxLayer.Layer End Sub 添加图层的代码 Private Sub CommandButton5_Click() Dim pMxDoc As IMxDocument Dim pGraphicsContainer As IGraphicsContainer Dim pActiveView As IActiveView Dim pTextElement As ITextElement Dim pElement As IElement Set pMxDoc = Application.Document Set pGraphicsContainer = pMxDoc.FocusMap Set pActiveView = pMxDoc.FocusMap Set pTextElement = New TextElement Set pElement = pTextElement pTextElement.Text = "X marks the spot" pElement.Geometry = pActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(X, Y) pGraphicsContainer.AddElement pTextElement, 0 pActiveView.PartialRefresh esriViewGraphics, Nothing, Nothing End Sub 4. 例2.构建逻辑表达式查询空间几何对象 界面设计如下: 运行界面: Button TextBox1 按钮 ComboBox1 ListBox1 (一) 代码如下 程序1:根据ComboBox1选择的图层不同ListBox1 用ComboBox选择图层后,通过ListBox显示图层各属性,通过ListBox的Text属性来选择图层的属性。 Private Sub ComboBox1_Change() '定义文档对象 Dim pMxDoc As IMxDocument '定义地图对象 Set pMxDoc = ThisDocument Dim pMap As IMap Set pMap = pMxDoc.FocusMap Dim pILayer As ILayer Dim pLayer As IFeatureLayer Dim i As Integer For i = 0 To pMap.LayerCount - 1 Set pILayer = pMap.Layer(i) If pILayer.Name = ComboBox1.Text Then Set pLayer = pILayer Exit For End If Next i Dim pFClass As IFeatureClass Set pFClass = pLayer.FeatureClass Dim intLoop As Integer Dim str As String str = "" ListBox1.Clear For intLoop = 0 To pFClass.Fields.FieldCount - 1 str = "" + pFClass.Fields.Field(intLoop).Name ListBox1.AddItem str Next intLoop 'For i = 0 To pFClass.Fields.FieldCount - 1 'str = "'" + pFClass.Fields.Field(i).Name + "'" & " " + str 'Next i 'ListBox1.AddItem str End Sub 根据查询条件显示查询结果,高亮度显示查询结果 Private Sub ComboBox1_Change() '定义文档对象 Dim pMxDoc As IMxDocument '定义地图对象 Set pMxDoc = ThisDocument Dim pMap As IMap Set pMap = pMxDoc.FocusMap Dim pILayer As ILayer Dim pLayer As IFeatureLayer Dim i As Integer For i = 0 To pMap.LayerCount - 1 Set pILayer = pMap.Layer(i) If pILayer.Name = ComboBox1.Text Then Set pLayer = pILayer Exit For End If Next i Dim pFClass As IFeatureClass Set pFClass = pLayer.FeatureClass Dim intLoop As Integer Dim str As String str = "" ListBox1.Clear For intLoop = 0 To pFClass.Fields.FieldCount - 1 str = "" + pFClass.Fields.Field(intLoop).Name ListBox1.AddItem str Next intLoop 'For i = 0 To pFClass.Fields.FieldCount - 1 'str = "'" + pFClass.Fields.Field(i).Name + "'" & " " + str 'Next i 'ListBox1.AddItem str End Sub 实现按钮功能的如下: Private Sub CommandButton9_Click() TextBox1.Text = TextBox1.Text + "And" End Sub Private Sub ListBox1_Click() TextBox1.Text = TextBox1.Text + ListBox1 End Sub 加载图层代码: 通过ComboBox显示各图层,并通过循环遍历各图层,从而寻找选中的图层。 Private Sub UserForm_Activate() Dim pMxDoc As IMxDocument Set pMxDoc = ThisDocument Dim pMap As IMap Set pMap = pMxDoc.FocusMap Dim pLayer As ILayer Dim i As Integer ComboBox1.Clear For i = 0 To pMap.LayerCount - 1 Set pLayer = pMap.Layer(i) ComboBox1.AddItem pLayer.Name Next i ComboBox3.Text = "Creat a new Layer" End Sub 查询示例1:查询 行政区域的都江堰市,红色区域为查询结果 都江堰市 查询语句 选择图层字段 选择图层 查询示例2: 查询行政区域的车流量大于2000的区域 Maxnumber>2000 查询结果 4. 实习总结: 一、完成的任务: 1 基于ArcGIS平台的空间数据库设计及建立 1)图层分类设计 2)空间数据库逻辑结构设计 3)空间数据库物理结构设计及实现 4)空间数据库地里参考系统的设置 5)空间几何信息入库,实体相关属性入库 2 ArcMap二次定制开发 1)菜单定制 2)工具条定制 3)扩展模块编程及集成 4)由空间几何信息查询相关属性信息 5)构建逻辑表达式查询空间几何对象 二、个人认为此次实习难点(主要针对ArcMap定制二次开发) 1)不清楚ArcGIS内部的接口,类,方法,不清楚ArcGIS的实现逻辑和功能模式,以至于在实现功能时不知道从那里下手,遇到了很大的麻烦。 2)对于组合框Combobox、ListBox的功能和语法不清楚,不会应用简单的语句来实现功能。 3)不会转化问题,把此次而次开发想的难度太大,没有当一个普通的编程题目来做,那样速度会更快。 三、个人体会 这次实习围绕ArcMap解决实际问题的开发的一个完整生命周期,包括建地理信息数据库,属性入库,定制菜单条工具条,增删功能, 设置图层的显示属性,利用宏来实现一些特殊的功能,实现一个有利于解决问题的界面环境。收获非常的大,加深了对应用软件开发过程的理解,对自己的编程能力也是一个警告和提高。 同时明白,在开发过程过一个人力量是很微弱的,只有大家一起积极讨论提出自己的看法才能加快开发流程,更好的实现功能,所以以后一定要注意多交流观点。 ArcGIS个人实习总结 一、完成的任务: 1 基于ArcGIS平台的空间数据库设计及建立 1)图层分类设计 2)空间数据库逻辑结构设计 3)空间数据库物理结构设计及实现 4)空间数据库地里参考系统的设置 5)空间几何信息入库,实体相关属性入库 2 ArcMap二次定制开发 1)菜单定制 2)工具条定制 3)扩展模块编程及集成 4)由空间几何信息查询相关属性信息 5)构建逻辑表达式查询空间几何对象 在实习中我遇到了很多的问题,有编程方面的,有数字化方面。但是经过努力后好多问题都得到了解决,实习对我们是很有益的,特别是对我们的自学能力有很大的提高。 二.实习中遇到的主要问题: 1.基于ArcGIS平台的空间数据库设计及建立的方面遇到的问题: (1)图层分类 在地图中选择分类图层时很难把各种地图要素合理的进行分类,也就是在图层设计时,很难宏观的把握,还好老师给的地图是一张成都交通地图,图上的要素并不是很多,经过和其他同学的交流取经,最后得到了一个我觉得还比较合理的分类。 (2).对ArcGIS软件的很多功能不熟悉 有了对图层的分类也就有了对数据库的结构,因此就没有遇到设计方面的问题,这次的问题主要是不会使用ArcGIS软件的功能,例如在对行政区域的边界进行数字化时,产生公共边不重合的问题,主要就是不知道ArcGIS软件具有Tace Tool这个功能键。因此吃了不少的亏。还有很多类似的问题就不一一的列举了。 三。ArcMap二次定制开发 由空间信息查询相关属性信息 主要的难点都是编程方面的,VB语言是我没有学习过的,所以肯定是有困难的。老师给的相关资料有很多看不懂,问同学也不是全部能得到解决。
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:利用ArcGIS软件地理信息系统设计与实现.doc
    链接地址:https://www.zixin.com.cn/doc/10645661.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork