高校讲坛·3·
基于GIS的数字校园的设计与实现
姚文涛
葛
琳
张文杰
张庆龙
(中国矿业大学资源与地球科学学院江苏徐州221116)
摘要:本文对开源GIS软件与商业GIS软件进行比较,并深入分析开源GIS软件具体的技术特点。将中国矿业大学南湖校区作为研究对象,根据WebGIS架构方式,在开源软件平台上构建了南湖校区数字校园系统,实现了数据的共享,方便了用户的浏览和查询。在开源软件的基础上构
更新和移植性强等优点,这对于建立基于WebGIS的校园地理信息系统具有重要的现实意义。建数字校园系统具有运行成本低,功能扩展、
关键词:WebGIS;开源软件;数字校园
作为现代社会重要组成部分的高等院校,其校园的科学管理越来越受到社会的重视,随着校园信息化的迅猛发展,数字校园的概念应运而生。结合计算机网络和GIS技术的WebGIS更是在构建数字校园过程中起到了举足轻重的作用。
本文讨论的“数字校园”就是在WebGIS建设的基础上提出的,试图用层次化、整体的观点来规划、实施学校的信息化建设为教育信息化确定一个清晰的目标。数字校园的建设将对学校所有信息资源进行统一的、科学的组织与管理,对校园网上的信息进行更好的组织和分类,让用户在网上快速发现自己需求的信息,为师生提供优质的网上信息交流环境,让管理人员科学地、规范地管理自己的数据,并将这些信息以最有效的方式、更方便地发布,提供给用户服务。
本研究以中国矿业大学南湖校区为例,以南湖校区的实测及图文数据为基础数据,在开源软件平台上搭建基于WebGIS的校园地理信息系统。利用WebGIS技术实现了用图形、图像数字信息来表示校园各种空间及属性要素,为用户提供了各种校园信息的查询、检索,为校园发展预测,规划决策及科学的管理提供了可靠的依据。
1.系统平台选择
目前,商业WebGIS软件大多提供专业的地图制图、查询、地理编码等空间分析功能,这些商业软件确实提供了很多WebGIS建设机会,几乎所有的主流GIS厂商都推出了自己的WebGIS产品,如ESRI的ArcIMS、MapInfo公司的MapXTreme、Intergraph公司的GeoMediaWebMap、Bently公司推出了ModeIServer/Discovery、AutoCAD公司MapGuide、中地公司的MapGIS—IMS、超图公司的SuperMapIS.NET5等,用户可以直接在向导的指引下进行操作,简单方便地建立功能强大的WebGIS系统,但也有局限性:
1)面向大型站点建设,软件和维护费用高且呈上升趋势。2)系统配置复杂。
3)不能实现不同格式的数据共享,不能实现无缝连接。
开源软件,即开放源代码软件,用户可以免费获得软件的源代码。与商业软件相比,开源软件具有如下特点:
1)用户可以免费获得程序的源代码,修改程序以改善和提高产品的性能;
2)用户可以分发这些修改后的代码,使得代码重用、共享成为可能;3)用户可以免费从网上下载或支付较少的费用获取并使用开源软件,扩大了软件的用户群。而使用商业软件受许可证的制约,用户需要支付大笔的软件许可证费用。
因此结合上述分析结果以及我校的实际情况,选择在开源GIS软件构建南湖校区数字校园,从Web服务器、后台数据库到网络地图服务器前台开发语言均是采用开源软件。
2.系统总体架构2.1系统结构框架
鉴于应用的实际需要,系统开发采用了浏览器/服务器(B/S)模式的三层结构:客户层、网络服务层和数据服务层三层组成整个系统。
本文选择Apache作为WEB服务器,MapServer作为WebGIS服务器,采用PostgreSQL数据库作为数据库服务器端的空间数据管理平台,并通过空间数据库引擎PostGIS对其进行扩展。选择PHP作为开发的主要语言。
2.2客户层
客户端采用常用的微软IE浏览器,由于GIS一般以矢量图形作为处理对象,在此系统中通过MapServer的CGI程序将矢量图转换成网络浏览器支持的JPG,GIF或PNG等格式的图形文件。通过浏览器将图片显示出来。结合HTML语言方便的修改用户接口,并通过PHP编写脚本语言,用户可以在浏览器上交互式地进行地图的漫游、放大、缩小、查询等操作。
2.3网络服务层
网络服务层是系统的核心层,包括网络服务器以及WebGIS应用服务器。网络服务器采用开源的Apache服务器,ApacheHTTPServer是世界上排名第一的网络服务器产品。目前的Apache几乎可以运行在所有的计算机平台上,并具有出色的技术性能。
WebGIS应用服务器选择UMNMapServer软件。相比与由商业企业提供的众多WebGIS解决方案,MapServer是开源项目。这就意味着你可以免费使用MapServer,并具有自行修改、复制以及再分发的权利[3]。同
时MapServer还有众多的优点:
1)支持的向量格式:ESRIshapefiles,PostGIS,ESRI的ArcSDE等(通过OGR库实现)。支持的栅格格式:TIFF/GeoTIFF,EPPL7等(通过GDAL库实现)。
2)对shapefile文件,可以建立四元树空间索引。3)完全支持定制的template的输出。
4)支持微软和Apple公司共同研制的字型标准TrueType。5)支持分块的(tiled)向量和栅格数据。
6)地图元素(如比例尺、图例,参照图等)自动控制。7)图像比例自动调节。
8)利用逻辑或正则表达式生成专题地图。9)特征标注(包含标注冲突解决)。
10)可以通过URLS动态的对MapServer进行配置。11)支持动态的投影变换。
12)对OGC若干网络规范的支持:WMS、non-transactionalWFS、WCS、WMC、SLD、GML和FilterEncoding。
MapServer中的一个重要文件就是MapFile文件,它可以看成是MapServer的配置文件。MapFile文件将各种地图要素组织成具有层次关系的对象系统[4]。数据来源,使用的数据格式,用户交互和对OGC协议的支持也在MapFile中定义。
配置一个完整的MapFile文件需要GIS数据源,字体文件,符号文件。GIS数据源可以分布在不同的计算机上;字体文件用来定义输出地图中使用的字体类型。地图中使用的点,线,面符号可以在MapFile文件
——无须在不同的Map-Symbol对象中定义;不过为了实现符号的重用—File文件中定义相同的符号,通常在MapFile外部定义独立的符号文件。
MapFile文件中大部分对象或与地图要素相对应,或是GIS中应用较普遍的概念;如Lengend,Scalebar,Layer等。
数据库服务器采用开源数据库PostgreSQL/PostGIS。PostgreSQL是免费的开放源码的关系数据库。最早由美国加州大学伯克利分校开发的,经过十几年的发展,PostgreSQL已经成为最富特色的开源数据库管理系统,甚至也可以说是最强大的开源软件数据库管理系统。该数据库具有良好的可扩展性,并且支持丰富的数据类型,支持面向对象技术等特性。
PostGIS专门为PostgreSQL数据库进行了遵循OpenGIS规范的Ge-ometry类型的数据类型扩展,它基于WKT格式存储Geometry数据类型并支持WKT/WKB两种格式数据取出,PostGIS提供如下空间信息服务功能:空间对象、空间索引、空间操作函数和空间操作符等。可以为GIS应用系统担任后台空间数据库平台,其角色与ESRI公司的SDE以及Oracle公司的OracleSpatial等同。
由于构建数字校园需要系统处理空间数据,所以在PostgreSQL基础上引用PostGIS空间数据库引擎对原有的数据库进行扩展,让它适应存储管理以及处理空间数据。
3.数据库设计
校园地理信息种类繁多、内容丰富,如何将它们进行有机的组织、有效的存储、管理和检索应用是一项十分重要的工作。它直接影响数据库乃至整个系统的应用效率。数据库设计是系统设计的主要内容,系统存在的基础是具有良好的数据库设计支持。数字校园系统数据库由空间数据库和属性数据库组成。
3.1数据采集
系统数据库的设计包括空间数据库和属性数据库的设计,因此数据的采集包括了这两种数据类型的内容。图形数据的采集利用ArcView对南湖校区CAD图进行矢量化,获取南湖校区shp格式的矢量图。属性数据的采集主要通过文本资料,与学校近期的各种统计信息相结合。属性数据库包括了建筑物数据信息、教学课程安排、学生信息、基础设施信息等。
3.2空间数据库
空间数据库包含着大量的空间信息,以及与空间信息相对应的属性信息。在具体应用中,虽然可以通过Insert语句逐条添加信息记录,但是对与现成的大量地理空间数据,这种方法显然不能满足实际需要。PostgreSQL本身支持SQL脚本数据导入方式,经过PostGIS扩展后,还可以直接对Shape文件进行快速导入。
作为一套能够被直接使用的shape数据来说,它至少包含三个主文
·4·
高校讲坛
科技致富向导2009.7
件名相同而扩展名不同的核心文件,即filename.shp、filename.dbf以及filename.shx文件,分别为存储几何属性的主文件,存储属性信息的数据库文件以及对该数据中的几何图元所建立起来的索引文件。只要具备这三个核心文件,地理数据以及其相关的属性信息就可以被完整的显示和读取。
PostGIS所提供的Loader程序能够将用来记录一套数据的三个核心文件(.shp、.dbf、.shx)直接转换为SQL脚本文件,用来完成该过程的是shp2pgsql命令,使用时指定shape文件的主文件名,要转换成的数据表的表名,想导入到的数据库的名称,就可以生成SQL脚本文件,然后通过PostgreSQL的导入命令psql执行该SQL脚本文件即可。具体如下:
shp2pgsqlclassroomclassroom_tablepostgis>classroom.sqlpsql–dpostgis–fclassroom.sql
通过上述命令就可将空间数据以图层为单位批量导入数据库中。3.3属性数据库
这里所指的属性数据是指不包含任何地理信息的文件,主要包括了建筑物数据信息、教学课程安排、学生信息、基础设施信息、校车时刻表等。存储这些属性数据同样采用功能强大的PostgreSQL数据库。
4.南湖校区数字校园设计与实现
数字校园是以网络为基础,利用先进的信息化手段和工具,实现从环境(硬条件)、资源(软环境等)到活动(包括教、学、管理、服务、办公等)的全部数字化,在传统校园的基础上构建一个数字空间以拓展现实校园的时间和空间维度,从而提升了传统校园的效率,扩展了传统校园的功能,最终实现教育过程的全部信息化。
单中按钮激活MapServerCGI模块。
在开发本系统的过程中,始终以建设数字校园的根本目的为宗旨,在实现电子地图基本功能的基础上,系统进行了扩展,为方便广大师生,在系统中加入了属性查询、课表查询、校车路线查询、距离面积查询等功能。通过在主页面中的相关链接进入相应的查询页面中。系统实现的主要功能如下:
1)地图显示功能:通过网络浏览器,用户可以对地图进行漫游,缩放,图层管理等基本地图操作。由于在MapServer的支持下,使用We-bGIS技术,管理员可以很方便的更新地图信息,利用开源软件的优势,易于平台的整体移植,并能对多种数据格式实现共享。
2)属性查询功能:根据用户的需求,用户可以在浏览器上点击地物进行相关属性的查询,并将查询结果反应在模板中,并显示所查询地物的图片,图文并茂,这种查询结果能够让用户产生直观的印象。
3)面积长度查询:使用PostGIS空间数据库引擎调用数据库中的空间数据,并利用PostGIS自带的空间数据处理函数,查询地物的面积以及长度。
4)教务查询:在该查询功能中加入时间要素,将空间维度与时间维度有机的组成一体,突破传统三维模式,形成四维查询。通过用户选择教学楼以及教室,系统就会反馈给用户该教室当前时刻的教务信息,包括所上课程,任课教师,听课学生等信息。另外可以查询用户所选时间段内可以上自习的教室,极大方便了教务管理以及学生学习。
5)校车路线查询:当用户选择出发地和目的地,并点击按钮后,响应程序将会对数据库进行查询,返回该条路线的上车站点与下车站点和所经过的若干车站的名称,并将整张校车时刻表输出以供用户参考。
5.结论
将WebGIS技术应用到高校校园中形成数字校园,以达到能够同时处理校园属性信息与空间信息,并实现对空间信息的可视化管理的目的。
本文在此基础上探索了一条基于开源GIS平台搭建数字校园的道路,最终呈现出一种快捷、经济、可行的WebGIS实现方案。在开发过程中采用开源软件平台进行系统架构,由于开源软件遵守OpenGIS规范,并能实现数据的分布式共享,所以系统具有较低的成本,较强的扩展性以及移植能力,为以后系统的扩展及升级提供了便利。这对构建数字校园共享平台具有重要的现实意义。
图4系统主页面
由于表单在数字校园系统中起着关键的作用,为了能让用户在主页使用MapServer提供的地图功能,需要使用初始化界面,通过点击表
参考文献
[1]王梅,耿国华,周明全.基于GIS的数字校园系统的设计与实现[J].微机发展,2005,15(1).
[2]沈培华,蒋东兴,王映雪,陈怀楚.数字校园理论与实践[J].
[3]姜真杰,方陆明,寿韬.GIS技术在数字校园建设中的应用[J].计算机工程与设计,2004,24(8).
[4]吴信才.地理信息原理与方法[M].北京:电子工业出版社,2002[5]董振宁.GIS应用新趋势.国家电力信息网.
[6]蒋剑,刘东洋,周建中.数字校园与Gls应用探索.信息技术,2002年第1期[7]李静燕,陈勇,王志坚,张雪洁.基于webservices的分布式GIS集成框架IJ].计算机工程,2004,3(12):59一64.
(上接第2页)
3)公交换乘功能
公交换乘查询分为直达和一次换乘,输入起点站,终点站,获取最短路径。使居民公交出行的换乘次数控制在平均1次内,缩短乘客的路途时间,最大限度利用公交资源。
4)后台管理
主要是设立了添加站点,删除站点,修改站点,线路添加,线路删除这几个大的功能模块,地图的图层,控制等,一些小的功能模块。
5)地图显示功能
主要包括两个主要窗口,一个是主地图显示窗口,一个是鹰眼窗口,在主地图窗口上,可以通过放大,缩小,移动等一些功能对地图进行操作。
2.5模块设计
本系统由4个子系统成:线路查询、站点查询、公交换乘、后台管理2.6数据采集
地理信息系统的数据,主要包括属性数据和空间数据。属性数据:包括统计数据、各种文字报告和理发文件、声音和图片等;空间数据:包括地图、测绘和遥感影像等。本系统的空间数据源为桂林市地图,属性数据为桂林市地图上的文字信息。
本系统的空间数据采集分为层。前三层为桂林市底图所包括的,桂林市底图层,桂林市地物层,桂林市道路层,是面状要素层,实际上这些层,并不参与空间数据的运算与分析,只是为了在各个区域之间围成街道的形状,在视觉效果上更直观一些。第四层为站点层,是点状要素层,由桂林市的公交站点组成。在MapInfo中建立站点表,其中包含一个点编号字段,表示每个站点的唯一标识码。还包括所属线路,站点名称这些信息。第五层为线路图层,包括线路id,以及线路名称。在空间数据采
集工作完成以后,就开始属性数据的采集。地理信息系统的属性数据即空间实体的特征数据,一般包括名称、等级、数量代码等多种形式。属性数据的内容有时直接记录在栅格或矢量数据文件中,有时则单独输入数据库存储为属性文件,通过关键码与图形数据相联系。本系统的属性数据是存储在SQLServe数据库中。
2.7概念模型
在公交信息查询中涉及的实体有:站点、线路站点属性有:站点名称、所属线路。
线路属性有:线路名称、长度、始末班时间,周围建筑物,空调车。
参考文献
[1]胡鹏,黄杏元,华一新等编著.地理信息系统教程[M].武汉大学出版社,2002[2]MichaelF.Goodchild.GIScience,Geography,Form,andProcess[C].An-nalsoftheAssociationofAmericanGeographers,2004,94(4),pp.709-714[3]TransmissiaSemiawanandMichaelMiddleton.StrategicinformationplanningandcampusinformationsystemsdevelopmentinIndonesia[J].Campus-WideInformationSystems,1999,16(2),pp.70–76
[4]CHENShupengandZHONGErshu.PerspectivesonGISDevelopmentinChina[C].From:2ndAnnualGISInfrastructurePlanningandManagementConference,Beijing,China,26-28May,1998
[5]李满春,任建武等编著.GIS设计与实现[M].科学出版社,2003
[6]吴信才等编著,地理信息系统设计与实现[M].电子工业出版社,2002[7]张永梅,韩焱.城市公交查询系统的研究与设计[J].计算机应用,2005,25(2),pp:423-425
[8]刘光明,蔡先华.一种城市公交查询的算法及其应用[J].交通运输工程与信息学报,2005,3(2),pp:89-91.
及其开发研究[J].科技导报[9]郭腾云.WebGIS系统的实现技术
因篇幅问题不能全部显示,请点此查看更多更全内容