基于GIS的校园管理系统.docx
《基于GIS的校园管理系统.docx》由会员分享,可在线阅读,更多相关《基于GIS的校园管理系统.docx(20页珍藏版)》请在冰豆网上搜索。
基于GIS的校园管理系统
班级:
硕士1505班
姓名:
学号:
基于GIS的校园系统设计与实现
一、设计目的
电子地图是空间信息表达与可视化的主要形式,电子地图作为一种新型地图,无论在地理信息的地图表示方面,还是在地图信息的利用方面,都有其独特的优势。
通过该系统实现电子地图的管理与使用
空间查询与空间分析是GIS的核心特征之一,也是空间信息服务实现中的关键问题。
如何在网络地图服务场景下提供高效能的空间查询与空间分析功能是网络地图服务器设计与实现中的挑战性问题。
采用嵌入式的GIS组件库ArcEngine10.0嵌入VisualStudio2010C#.NET开发环境中开发一个GIS应用系统,以此熟悉和了解GIS二次开发的流程和方法。
二、需求分析
(1)教师、学生
学生、教师是学校的主体,开发优质的功能齐全的校园地理信息系统,对他们的需求分析不容忽视。
武汉大学在校生近五万人,宿舍楼,教学楼、办公室、实验室布局分配也比较复杂。
可见,教师和学生的需求主要是对各种信息的获取,具体可分为:
1)办公楼信息:
要实现学校党政机关各部门位置及属性、各院系办公室位置及属性等查询显示功能。
2)教学楼信息:
要能够调用学校各教学楼位置及属性,实现教室资源信息的浏览、查询以及当前教室排课情况的查询功能。
3)图书馆信息:
要能够调用图书馆的位置及属性、学生自习室及阅览室信息等的查询功能。
(2)游览者
对于大部分游览者而言,主要在于各种目标物位置的获取,具体可分为:
1)用户在用户当前位置某一范围内目标的位置及其属性,主要包括商店、公共卫生设置。
2)对于游览者而言,学校的道路走向是不熟悉的,校园GIS需要实现从出发地到目的地的路径状况。
3)风景信息:
要能够调用校园内风景名胜的位置及其属性信息。
因此,用户的需求大致如下:
采用一定开发工具构造一个GIS应用系统以实现以下功能要求:
1)地图输入:
支持地图输入;支持用户选择文件输入;(输入多种格式)
2)地图显示:
显示地图,支持放大、缩小、拖动、漫游、全图功能;
3)地图的高级操作(测距)
4)地图管理:
图层信息显示、图层关闭操作、图层添加操作等
5)查询:
支持属性查询和空间查询(如点查询、圆查询、矩形查询)
6)空间分析:
实时获取点坐标;量测距离等。
(最短路径分析、路况分析)
7)系统的维护与管理
三、总体设计
系统总体设计主要包括系统层次结构设计,模块设计以及系统界面设计。
接下来对这几个方面的设计进行介绍。
1、系统软硬件配置方案
1)硬件配置:
本系统是Windows应用系统,可以通过加载不同的数据,对不同的区域地图进行操作,硬件配置为个人计算机。
2)软件配置
操作系统:
Window7及以上版本
数据库管理系统:
ArcGIS10.2自带的数据库及管理系统
应用软件:
MicrosoftVisio2010常用办公软件
开发环境:
VisualStudio2010C#.NET、ArcEngine10.0、MicrosoftVisio2010
2、功能模块设计
校园GIS是一个较为复杂的系统,将校园GIS模块化不仅可以将复杂的问题简单化,还可以将工作量分散到各个工作组中集中力量解决各个问题。
总的来说,校园GIS包括8大模块集,分别为数据输入、图层管理、图层操作、地图符号编辑、空间查询、空间分析、网络分析、数据输出。
每个模块集又由众多子模块组成,如下:
1)数据输入:
主要包括栅格文件输入、.shp文件输入、数据库文件输入。
2)图层管理:
主要包括添加图层、显示图层、删除图层。
3)图层操作:
包括图层的放大、缩小、显示全图等。
4)空间查询:
主要包括查询感兴趣目标的属性、按属性查询某一感兴趣目标,按位置查询某一感兴趣目标。
5)空间分析:
主要包括缓冲区分析。
6)网络分析:
主要包括最短路径分析。
7)地图符号编辑:
主要包括对点状要素、线状要素、面状要素的编辑。
8)数据输出:
主要包括地图文件mxd文档输出、dwg格式文件输出。
3、系统的层次结构设计
通过HIPO图展示校园GIS系统层次结构见图:
1)对于数据输入模块集而言,各个子模块的IPO图如下:
2)对于图层管理、图层操作模块而言,综合展示其IPO图:
3)对于空间分析模块集而言,其子模块的IPO图如下:
4)对于空间查询模块,其子模块的IPO图如下:
5)对于网络分析模块,其子模块的IPO图如下:
6)对于符号编辑模块集而言,其子模块的IPO图如下:
7)对于数据输出模块集而言,其子模块的IPO图如下:
四、数据库设计
校园GIS空间数据库利用Arcgis个人地理数据库,其设计包括三个方面的内容,分别是:
数据库的逻辑设计、物理设计,数据入库。
1、数据库的逻辑设计
校园地理要素主要分为校园范围、水系、道路、建筑物、体育设施、植被。
道路:
包括主干道和其它道路。
体育设施:
包括体育馆、操场、游泳池、球场。
建筑物:
包括医院、图书馆、学生公寓、教师公寓、教学楼、院系大楼、打印店、超市、食堂、学生活动中心、其它附属设施。
水系:
湖泊。
利用MicrosoftVisio中的UML建模工具,设计校园GIS的地理要素数据库结构,具体如下:
1)体育设施要素数据库结构设计
2)教学数据要素结构设计
3)校园范围及植被水系数据结构及设计
4)道路要素数据库结构设计
5)教学辅助设施数据结构及设计
6)体育设施数据结构及设计
2、数据库的物理设计
数据库逻辑设计完成后,首先在ArcCatalog中新建一个个人地理数据库,然后通过microsoftvisio建模工具生成的ArcCatalog可执行的UML文件,利用ArcCatalog的SchemaWizard工具实现逻辑数据库向物理数据库的转换,具体如下:
3、数据入库
校园GIS数据库建立完毕后,就需要实施空间数据入库,数据库的数据源为武汉大学校园门户网站上的武大JPG图片和Googleearth影像数据,空间数据入库的基本流程如下:
1)加载武大jpg图片和影像配准工具,见图:
2)设置坐标系,见图:
将这个地图的坐标系设置为WGS坐标系。
3)影像配准
在Google地图找一些比较明显的校准点,google地图对于的是WGS84坐标
校准点
N
E
学生活动中心
30°31′46.77″
114°21′23.70″
足球场右下角
30°31′41.17″
114°21′21.82″
友谊广场右上角
30°31′41.17″
114°21′20.85″
影像配准的关键是控制点的获取,在精度要求不大的条件下,可以使用Googleearth影像数据的特征点作为控制点进行图像的配准。
同理,依次选取若干个控制点,均匀覆盖校园地图表面,直到配准后的精度符号要求为止。
4)分层矢量化
精确配准以后要,连接到之前建立好的个人数据库,数据库已经根据我们的需要建立不同的图层不同的要素,个要素的属性都已完成设置,接下来的过程如下:
a)在Arcmap环境下,将新建的个人地理数据库中的要素加载到包含已配准影像的数据框中。
b)打开“编辑器”工具栏,在“编辑器”下拉菜单中执行“开始编辑命令”,并选择前面创建的“学生宿舍”等要素类。
确认编辑器中:
任务为――新建要素,目标为――学生公寓。
c)将地图放大到合适的比例下,从中跟踪每个要素的轮廓,道路则为中心线,并在属性表中添加各个字段的属性值。
对其它要素层进行同样操作。
直到所有要素数据全部矢量化完毕。
五、系统功能实现与分析
1、界面及数据输入
校园GIS界面包括两大部分,一是系统主界面,一是各个模块功能界面。
1)系统主界面
其中系统主界面包括菜单栏、工具栏,图层显示区域、地图显示区域。
a)菜单栏:
包括文件、编辑、地理处理、视图、等菜单项。
文件:
包括导入数据、新建地图、打开文件、保存文件、文件另存为。
选择:
包括按位置选择、按属性选择。
地图处理:
包括缓冲区分析、网络分析。
视图:
包括数据视图与地理视图。
编辑菜单项以及视图菜单项作为扩展功能项。
b)图层显示区域:
包括鼠标点击事件。
鼠标左击:
设置要素符号的颜色,尺寸等属性
鼠标右击:
包括移除当前图层、导出数据、打开属性表等功能。
2)模块功能界面
模块功能界面包括:
打开属性表界面、要素符号设置界面、缓冲区分析界面、导出数据界面。
打开属性表界面设计:
要素符号设置界面设计:
3)数据输入与显示
2、图层管理
在菜单项上选择添加图层,可以像加载图层一样,选择要添加的文件,应用的也是AddLayer、AddImage函数。
加入图层后,点击菜单项“地图操作”中某一项,然后在地图上即可实现对应操作基本的放大,缩小,漫游,全图等功能Mo封装的很完善,实现都在地图控件的OnMouseDown函数中,选择删除当前图层,需要用户先将要删除的图层选中;而选择删除全部,则相应调用了RemoveAll会将全部加载的图层清空。
选择图层调整,需要先将要移动的图层选中,再选择“上移”或者“下移”,若移动到顶部或顶部,则会有提示信息,否则,ListBox控件的焦点将一直跟随这个图层,方便用户多次移动的需要。
3、地理处理
1)包括属性查询和空间查询
属性查询需要用户选择菜单项“SQl语句查询”,在弹出的对话框中,对最上一个图层的属性字段已经列了出来,如果用户要修改图层的话,只需要将要查询的图层上移为第一个即可。
双击属性表中的某个字段,它的值会自动写入下方的SQL语句控件中,并且该属性字段的值会列入右边的值列表中。
用户要做的就是按照SQL语言规范,双击要写入的属性值和运算符即可。
空间查询,包括点查询和线查询,均需要用户事先选定要查询的图层,而不是自动选择最上面一个图层,相比较而言,在这一点上空间查询比属性查询更友好。
选择“点查询”菜单后,在地图上点击要查询的范围,然后根据一定的缓冲区大小,将包括点的一个小矩形作为查询区域,提取中数据集,再高亮闪烁显示属性表;选择“线查询”后,在地图上拉一条线,这条线所经过的所有地块都被划入数据集,依次高亮闪烁,最后显示属性表。
2)空间分析
要想进行空间分析,画图量测的功能,必须要获得鼠标在地图上漫游的实时坐标,空间分析主要是缓冲区分析的实现。
4、地图符号编辑
地图符号编辑主要包括对点状要素、线状要素、面状要素的编辑,由于校园GIS比例尺较大,在数据库设计阶段并没有点要素,所以文章就展示线状要素和面状要素符号的设置。
5、数据输出
本程序实现的地图输出为栅格输出,包括dwg格式和mxd格式,选择“数据输出”后弹出保存对话框,保存类型有两种可选,用户输入保存名称时可以不输入后缀名,本软件会根据选择的保存类型自动加上。