1、基于开源WebGIS的城市旅游交通电子地图开发研究 设计者:殷睿睿,张玉明,刘瑞涛,周韬 指导教师:徐鹏 (长沙理工大学 交通运输工程学院 湖南 长沙410004) 作品内容简介 世界旅游业和计算机技术的飞速发展使游客获取旅游交通信息的方式发生了重大变革,由传统的纸质交通旅游图转变为互联网上的电子地图。开源软件的发展和WebGIS技术的进步促进了网络电子地图的繁荣,产生了巨大的商业价值。本研究在综合比较各类开源WebGIS软件平台的基础上,选择Geoserver、PostgreSQL和Openlayers构建了一个旅游交通电子地图平台,实现城市旅游交通信息资源的发布,提供了一种利
2、用开源软件构建旅游交通电子地图思路和整体解决方案。研究结果表明:采用开源软件构建城市旅游交通电子地图所需的WebGIS平台,具有技术先进、开发成本低、周期短、易于维护和兼容性强等优点。 关键字:旅游交通 电子地图 开源软件 WebGIS 1.研究背景 国际著名的扬克洛维奇营销顾问公司(Yankelovich Partners)在全球旅游趋势观察报告中指出,世界旅游中正在发生“从以目的地为中心向以游客为中心”的转变。以游客为中心的含义就是旅游者有绝对的主观选择权,旅游者选择去一个城市旅游,首先需要了解该城市旅游景点的概况,以及交通设施情况。如何动态而全面的展现一个城市的旅游交通信
3、息是很多人思考的问题。 随着空间信息科学和计算机网络技术的发展,一些旅游主流网站目前都推出旅游交通电子地图,作为城市旅游交通信息的动态发布平台。这是一种新型的、动态的网络旅游营销模式。旅游交通电子地图通常以行政区划等基础地理信息为背景图层,在此基础上叠加交通网络、公交线路、旅游景点、宾馆和餐饮等基础设施。用户足不出户即可通过电子地图设计自己的游玩路线,查询公交和道路信息、选择一条最优路径节省时间,了解每个景点的详细情况,包括门票信息、景点全貌图、周围的基础设施等等。旅游者通过这个平台能够非常容易做出选择,选择自己想去的地方。 本研究建立的旅游交通电子地图以WebGIS技术为基础,采用B/
4、S(浏览器/服务器)架构。当前各种开源WebGIS平台在测绘和国土资源管理部门已经得到一些应用,但用于旅游交通电子地图开发仍处于起步阶段。开源软件具有易于维护、扩展灵活、便于共享等优势。基于Geoserver、PostgreSQL和Openlayers等开源软件构建本研究所需的WebGIS平台时机比较成熟。 2.设计原理 2.1系统架构设计 系统采用B/S模式三层架构,由客户端、服务器端构成,其中服务器端包括Web服务器和地图应用服务器以及PostgresSQL数据库三部分组成。系统结构如图1所示。具体说明如下。 客户端:本系统客户端开发基于Openlayers提供的JavaScri
5、pt工具包。采用OpenLayers作为客户端不存在浏览器依赖性。用户使用普通的Web浏览器(如IE)即可使用相应的服务,不需要安装专门的浏览器插件,对用户计算机系统软、硬件要求低,系统维护、升级方便。客户端网页即是用户界面,通过该页面,用户可以实现公交线路和旅游景点查询条件输入、地图浏览、空间查询和分析等功能。 图1 系统结构图 服务器端:分析用户发送的指令信息,执行相应的操作提取数据,并把查询或分析结果反馈给用户。旅游交通信息查询服务基于系统的WebGIS平台,主要根据用户在Web页面选择的操作或查询条件,执行相应的信息查询(如公交线路、景点信息),并将查询结果通过浏览器反馈给用户
6、 数据库:包括旅游交通综合信息数据库、WebGIS空间数据库组成。实现数据的存储、查询和更新等功能。数据是旅游交通信息查询系统的核心和关键,数据的准确度和时效性是衡量系统实用价值的重要指标。 2.2系统功能模块设计 包括地图操作和信息查询两大功能模块,具体说明见表1。 表1 主要功能 功能 说明 地图操作 地图漫游 地图移动,通过鼠标或键盘实现地图漫游 地图缩放 地图放大缩小,使用鼠标滚轮或者工具条,在不同比例尺地图之间进行切换,浏览城市全貌或者局部细节 全图显示 显示全市范围的电子地图 距离测量 在地图上进行概略距离量算,方便进行路径规划 旅游信息查询 景
7、点查询 查询景点相关信息,通过链接景区官方网站,获取权威旅游资讯 酒店查询 根据输入条件查询酒店相关信息,或者查询兴趣点周边一定范围内的酒店分布情况 餐饮查询 根据输入条件查询餐饮设施相关信息,或者查询兴趣点周边一定范围内的餐饮设施分布 交通信息查询 公交线路查询 输入需要查询的公交线路,将相应线路和经过站点在电子地图上显示 公交站点查询 输入公交站点,显示经过该站点的公交线路名称,点击线路名称可实现线路查询 公交换乘查询 根据公交线路通达情况,规划公交换乘方案;提供多种方案供游客选择 自驾游路径规划 根据起点和目的地之间的道路连通情况,使用GIS空间分析功能,在路
8、网中搜索最短路径或者最快路径 上述功能模块的实现,需要采用基于PostgresSQL的空间数据采集和建库技术、基于Geoserver的电子地图配置和发布、基于Openlayers的富客户端开发技术。 3.关键技术及其实现 3.1数据库管理系统 查询系统采用PostgreSQL实现WebGIS空间数据、订单数据和用户数据管理;PostgreSQL是先进的开放源码的对象——关系型数据库管理系统,本研究采用的版本为8.3。PostGIS是PostgreSQL的扩展,提供空间信息服务功能:空间对象、空间索引、空间操作函数和空间操作符,同时PostGIS支持OpenGIS的规范。 Postg
9、reSQL8.3提供了一款图形用户界面的数据库管理工具pgAdmin,通过这款软件实现数据库的维护工作:包括空间数据建库和维护、用户信息库的建库和维护。界面如图2所示。 图2 pgAdmin Ⅲ数据库管理软件用户界面 图3 sql数据入库 3.2空间数据建库 建立原型系统所需的背景电子地图、旅游交通信息数据和相应的元数据由湖南省第一测绘院生产和提供,文件形式的空间数据格式为shapefile(ESRI的shp文件)。空间数据保存在名称为postgis的数据库中,每个shp文件对应数据库中的一张表。通过PostgreSQL提供的数据转换工具shp2
10、pgsql.exe将shp文件转换成sql语句,便于入库。在系统命令符模式下,使用shp2pgsql命令转换空间数据的格式如下:
shp2pgsql.exe [<可选参数>]
11、并建立空间索引。提供基于OpenGIS标准的WMS和WFS服务,为空间查询和分析提供基础。它的功能通过Openlayers等客户程序结合使用表现出来。 Geoserver通过Web服务器Tomcat提供地图服务,因此需要在服务器上先安装Tomcat,然后将war格式的Geoserver程序安装在webapps目录下,Geoserver服务随Tomcat启动而启动。 Geoserver服务启动后,可以在浏览器中输入http://localhost:8080/geoserver/welcome.do(localhost为服务器域名或IP地址,8080为tomcat的端口号),进入Geoser
12、ver配置页面: 图4 Geoserver主界面 通过Geoserver发布PostgreSQL数据库中的空间数据,还需要在Geoserver中进行一系列的数据配置。在主界面上点击“配置”->“数据”->“数据库”->“新建”,用于创建新的数据集chenzhou,该数据集关联PostgreSQL数据库中的空间数据。如图5、6所示。 图5 建立新的数据集 图6 与postgis数据库建立关联 数据集chenzhou中包含与postgis数据库对应的空间数据,在此基础上需要定义可以通过服务(此类服务包括符合OGC规范的WM
13、S、WFS和WCS)访问的 FeatureType。Postgis中的每一张表所包含的空间数据对应一个FeatureType,配置FeatureType的界面如图7所示: 图7 FeatureType编辑页面 在FeatureType编辑页面中,需要输入空间数据的表现样式(由样式文件SLD决定,该文件符合OGC的规范)、空间引用系统(决定空间数据采用的投影系统和参数)、数据边界范围等信息。这些参数决定WebGIS空间数据在客户端浏览器中的显示形式。编辑好的FeatureType可以通过Geoserver自带的数据浏览器查看。图8和图9分别为对系统配置好的实验区域道路网络和地名数据预览的
14、效果图: 图8交通路网预览 图9地名注记信息预览 在对所有的空间数据建立相应的FeatureType之后,系统完成了数据准备的工作,地图可视化以及相应的旅游交通信息查询通过WebGIS客户端的的开发实现。 3.4系统客户端开发 此部分为系统建设的难点。Openlayers是基于Ajax技术的WebGIS客户端开发工具,由一套JavaScript包组成,研究采用的版本为2.8。Openlayers实现访问空间数据的方法都符合行业标准,如OpenGIS的WMS和WFS规范。采用Openlayers提供的开源接口,实现空间数据的显示查询和空间
15、分析。 系统客户端界面如图10所示。由查询条件、查询结果、地图浏览等几部分组成。其中查询条件、查询结果由界面左侧的按钮切换显示,地图浏览部分是客户端的主要部分,在Openlayers提供的JavaScript工具包上二次开发而成。由地图显示区域、菜单栏、鹰眼图、地图浏览控件、查询条件输入和查询结果显示等几部分组成。 图10 查询系统客户端界面 系统在开发过程中充分利用开源系统的灵活性,在Openlayers提供的控件基础上进行封装和扩展,新建了几个大类(每个类由一个js文件组成),实现地图的显示、交通旅游信息查询和分析。 3.创新特色 本研究创新之处在于:采用开源软件构建城市
16、旅游交通电子地图所需的WebGIS平台,相关手段具有技术先进、开发成本低、周期短、易于维护和兼容性强等优点。 相关研究结合OGC规范和最新开源项目,搭建能够有效管理旅游交通基础地理数据的WebGIS系统,在开发和测试过程中,开源软件表现出极大的灵活性。随着开源项目的不断发展,如GeoServer在支持WFS,WCS等OGC规范的前提下,不断提升自身地图的出图质量和性能,WebGIS系统整体功能将会进一步提高,给旅游交通电子地图的开发带来更大方便。 4.应用前景 通过与城市交通、旅游事业主管部门开展合作,开发极具地方特色的城市旅游交通电子地图,并利用电子地图的宣传作用使城市旅游资源产生社会
17、经济和环境效益,促进当地的经济发展和社会进步。相关研究成果具有广阔的市场前景。 同时,利用开源WebGIS在旅游交通电子地图建设过程中的示范作用,凭借其功能强大、技术先进和源代码公开等特点,在一些中小型GIS项目建设中有广阔的应用前景,将有可能改变目前商用WebGIS为主的运行模式,推动GIS产业的发展。随着开源WebGIS项目越来越成熟,WebGIS取得越来越多的应用,开源WebGIS软件目前已经形成了一个比较齐全的产品线,在一些特定的功能方面将优于商业GIS平台软件。 参考文献 [1]高超. 城市交通旅游电子地图的研究与应用[D].南京:南京师范大学,2007. [2]李黎黎
18、吕德奎.基于OpenLayers的旅游地图方案研究[J].现代测绘,2008(9):47-48. [3]胡庆武等.开源GIS进展及其典型应用研究[J].地理信息世界,2009(2):46-55. [4]张大鹏,张锦.基于开源 WebGIS软件的110指挥中心警情分析系统[J].科技情报开发与经济,2008(11):162-163. [5]孙剑. GIS 的开源梦想[J].软件世界,2007,(16):50- 51. [6]顾进.基于开源的 WebGIS平台研究与地理信息LOD实现[D].徐州:中国矿业大学,2007. [8] OpenGIS Consortium.Overview of OpenGIS implementation specifications[S].2002.






