GIS二次开发实验指导书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
GIS二次开发实验指导书
GIS二次开发课程实验介绍
地理信息系统开发主要有三种模式:
独立开发:
完全从底层开始,不依赖于任何GIS工具软件,从空间数据的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选择某种程序设计语言,按照软件工程的步骤完成系统的开发。这种开发模式适于开发商品化的GIS软件平台,但其难度大、开发周期长、投资大,不适宜于一般的开发用户。
组件地理信息系统
在可视化开发环境(如VB、VC++、DelPhi等)下,将GIS控件(如ESRI的MapObject、MapInfo的MapX等)嵌入用户应用程序中,实现一般GIS功能,在同一环境下利用开发语言实现专业应用功能。该模式可缩短程序开发周期,程序易于移植、便于维护,是目前GIS开发的主流。
单纯的二次开发
基于国内外先进的GIS平台,利用其提供的二次开发语言进行开发,如Arc/Info提供的AML语言、ArcView提供的Avenue、MapInfo 提供的MapBasic等,开发出具有特定应用功能的的地理信息系统。该开发模式简单易行,有很多功能可以直接从原有的平台软件中引用过来,但其移植性差,受开发平台的影响,不能脱离原系统单独运行。
GIS二次开发实验项目根据GIS二次开发教学大纲制订,旨在通过一系列实验巩固所学内容,掌握一定软件环境下GIS二次的方法,为课程设计、毕业设计打下坚实的实践基础。
由于课程学时的限制,本课程实验只应用单纯二次开发和组件式二次开发两种开发模式。单纯二次开发以ArcView GIS为软件环境,组件式二次开发以MapObject+VB(或VC)为开发环境。
本课程实验学时为10个学时,ArcView GIS二次开发通过三个系列实验(6个学时),完成一个功能简单的基于GIS的河南理工大学南校区校园信息查询系统。MapObject二次开发通过两个实验(4个学时),完成一个功能简单的基于GIS的焦作市公交信息。
第一部分 ArcView GIS二次开发
一、实验任务
应用单纯二次开发模式,以ArcView GIS为软件环境,使用Avenue 面向对象的二次开发语言,开发出一个基于GIS的河南理工大学南校区信息查询系统。系统应具有以下功能:
1.校园全貌展示(放大、缩小、漫游);
2.普通双向查询,包括建筑物、职能部门(行政管理、后勤服务)、
体育运动、娱乐休闲等;
3.专业查询,包括教学(教学系部、专业设置、课程设置、实验
室、多媒体教室等)、科研(科研管理、科研院所等)、招生(高
职、本科、硕士、博士等);
4.人物查询,包括教师、教辅及学生等;
5.最佳路径查询。
二、数据
提供dwg格式的“河南理工大学南校区总平面图”,属性数据学生通过调查、校园网等形式收集。
实验一 ArcView用户界面定制
一、实验目的:
通过本实验使学生掌握ArcView下菜单、按扭、工具按扭、项目管理窗口等的定制方法。
二、实验任务:
分析项目的总体任务,设计实现各功能所要求用户界面,并在ArcView下定制实现。
三、实验要求:
写出设计说明书及实现方法,界面美观大方,汉化界面,无无用控件。
四、实验指导:(ArcView图形用户界面的定制)
定制ArcView的图形用户界面(GUI)是指根据需要,对组成界面的控件如Menu、MenuItems、Buttons、ToolBars和Popups等进行添加、删除,并对它们的属性进行正确的设置,从而达到特殊应用的目的。
1、用customize对话框对用户界面进行定制
定制ArcView的图形用户界面(GUI),可以利用customize对话
框实现。打开customize对话框有两种方法,一是通过空白项目的Project菜单的Customize命令,二是通过双击按扭条或工具按扭条的空白处。
customize对话框参见下图。
文档类型:选择要定
制文档图形用户界
面(DocGUI) 的文档
类型;
控件类型:选择组成
DocGUI的控件类型;
控件编辑器:用于增加、删除或修改特定的控件;
属性列表:显示了对应所选控件的属性设置情况。
1) 选择控件及使用控件编辑器
如前所述,每个文档都有独自的一套GUI控件。GUI水平方向上显示三种控制条:菜单条、按扭条和工具按扭条,而弹出菜单(Popups)则可以通过单击鼠标右键弹出。在Customize对话框中,选
择Type和Category,确定待编辑的文档和控件。
可编辑的文档和控件参见左图:控件编辑器可实现以下功能:
①控件选择
以鼠标左键单击要编辑的控件,该控件即以黑框标示出来,表示该控件被选中;
②增加和删除控件
点击New按扭,则在所选控件右边增加一个新控件,点击Delete 按扭则删除所选控件及与之相关联的属性;
③移动控件
在控件上按下鼠标左键不放,将其拖动到合适位置放开鼠标左键,Menus和Popups还可以将它们垂直移动;
④增加一个分隔符
在一组控件中,逻辑地加入分隔符,可单击
Sperator按扭。在菜单中它以水平线方式出现在菜单项之间。
具体参见下图:
增加控件增加分隔符删除控件
2) 属性列表与设置属性
GUI上的每个控件都有其相应的属性,它定义了控件的外观和行为。属性列表列出了控件的属性及其设置,并且可以修改其属性值。属性列表随控件的不同而有差异。如Menus和Popups具有Lable属性,Buttons和Tools则有Tag属性。下图分别为Menus和Buttons的属性列表。
在属性列表中双击属性名或属性值即可对相应控件的属性进行设置。有的属性值在True/False间切换;有的要输入一个字符串;有的则要在下拉式列表中选择。
以下为控件的几种经常涉及的属性:
①帮助属性(Help)