基于GIS的城市三维交通路线查询系统——以重庆市北碚区西南大学为例

2015-06-01 07:25宋新硕
城市地理 2015年12期
关键词:西南图层站点

宋新硕

(西南大学地理科学学院,重庆 400715)

基于GIS的城市三维交通路线查询系统
——以重庆市北碚区西南大学为例

宋新硕

(西南大学地理科学学院,重庆 400715)

现在,随着校园的交通线路的完善和教学建筑的越1来越复杂,交通车是多数人出行的首选方式。本文的目的在于怎样才能方便人们出行时对交通路线选择和查找以及实现对地物查询。首先通过ArcMap、Arcsence、Sketchup等GIS相关软件设计出三维校园模型,构建校园交通网模型,并在三维中添加交通站点以及设计地物数据库,在此基础之上提供不同建筑物的查找和定位,并根据交通站点的数据库建立不同的交通路线乘坐方案和交通路线查询。方便人们的出行,操作简单,直观的桌面系统。本文也提出三维交通线路在城市应用的思想。

ArcScene;校园公交;查询系统

1、引言

随着数字地球的提出,中国也在加紧数字城市的建设[1]。三维数字校园作为数字城市的微观表现,是数字城市在某一小区域的放大效果。也可以说,三维数字校园是数字地球的理论、技术和战略应用到小范围的网络化、信息化和智能化建设的具体体现[2]。

近年来城市人口的增加,交通设施的也逐步健全,越来越多的人选择乘坐公交车辆出行。然而对于不熟悉当地城市的人来说出行非常不便,尤其是在地势复杂的西南地区。因此设计一个更接近日常生活的、更符合人的直接感官的三维地图及交通查询系统十分必要。本文以重庆西南大学为例提出了校园三维化的快速实现方法,并以此为基础设计了交通查询系统。

2、技术路线设计以及关键技术介绍

2.1 技术路线设计。三维交通查询系统应用GIS相关软件和C#语言设计而成的,系统设计的路线:首先,在ArcMap里通过遥感图勾画出校园建筑物,并且给建筑物添加名称、高度、位置等属性,再勾画出道路,并且附上相应的属性值;其次,将生成的数据导入Sketchup,在Sketchup里设计三维图,设计好三维数据导入到ArcScene;最后,在VS.net设计出系统的界面,并且实现系统的基本功能,通过三维数据设计交通路线查询和建筑物查询。

2.2 关键技术介绍。Google Sketchup是一套直接面向设计方案创作过程的设计工具,其能够充分表达设计师的思想,也使得设计师可以直接在电脑上进行十分直观的构思,是三维建筑设计方案创作的优秀工具。

ArcGISEngine是ESRI在ArcGIS9版本才开始推出的新产品,它是一套完备的嵌入式GIS组件库和工具库,使用ArcGIS Engine开发的GIS应用程序可以脱离ArcGISDesktop而运行。

VS.net是Visual Studio.NET的简称,微软公司研发的一个可视化开发工具,它给程序员提供解决方案、源代码管理和编译调试等环境.包括Visual C#.net、Visual J#.net、Visual C++.net、Visual Basic.net。

3、系统设计

3.1 功能设计。通常,人们在乘坐校车之前,最想知道的信息有:本人所在位置、周边最近站点、目的地附近站点、某次公交运行路线等。因此,本次研究以西南大学为例,将校车信息查询系统的功能初步设计为以下几个方面:

(1)地图浏览:提供西南大学三维图浏览功能,实现地图的基本操作,如放大、缩小、漫游等;(2)图层控制:将地图信息分类,形成不同的图层,用户根据需要显示不同图层;(3)空间数据与属性数据的相互查询:提供各方面与公交相关的信息查询,包括公交站点、公交路线和教学楼的查询;(4)公交换乘查询:进行任意两个站点之间相关的公交换乘信息查询。

3.2 体系结构。系统按照用户界面、查询系统、功能模块、数据库等不同层面进行结构设计。数据库的管理包括对交通站点的数据与属性数据管理,即对基本地理信息进行管理和维护。本系统采用客户机/服务器 (Client/Server,C/S)体系结构来实现。C/S结构3层结构,第1层是客户界面,提供用户和系统的友好交互;第2层是服务器,负责业务逻辑的实现;第3层是数据服务器,负责数据的存储、访问及优化[2]。

4、系统实现

4.1 三维图的制作

4.1.1 地图配准。(1)把西南大学的地形图定义好投影信息加载到ArcMap中,使用Georeferencing模块选取图上的控制点对地图进行校正,使之在屏幕上正确的显示,并且具有正确的坐标和单位;(2)利用同样的方法校正西南大学遥感图像,把遥感图像中特殊点校正到与地形图相对应的位置。

4.1.2 数据准备。(1)打开Editor工具栏,在已经配准好了的遥感图像上矢量化出校园的建筑,草坪,湖泊等元素;(2)对于校园的道路,可以大致勾勒出了的位置,利用生成缓冲区的方法,生成道路,在道路上在增加一些校园车的站点,在每一个站点增加一个StationName;(3)打开矢量化后的数据的属性表,增加一个height字段,给每一个数据都附上相应的高度值,对于道路增加一个StartID(起始点)字段与FinishedID(终止点)字段[3];(4)在进行三维模型贴图以前,先对西南大学校园场景素材图进行处理。

4.1.3 转出数据。在ArcMap中使用SketchUp插件选中要转出的数据,把数据转为.sk文件,并利用刚才新添加的height字段作为导出的三维模型的高度。

4.1.4 添加材质

(1)在SketchUp软件中打开转出的三维模型,可以对数据进行相应的修改和优化;(2)给生成的模型贴上材质 (使用西南大学校园场景素材图,如果没有,可以选择软件自带的材质);(3)在基本完成的基础上,可以利用SketchUp模板中的素材对校园添加树木、运动场、电灯、椅子等素材。

4.1.5 把数据导出到ArcScene中显示

(1)在ArcCatalog中新建一个GeoDatabase,并在Geodatabase中新建多个FetureClass,把SketchUp中的数据导出到数据库中 (选择少量数据进行导出,避免导出错误);(2)把导出的文件加载到ArcScene中显示最终的校园三维图。

4.1.6 最终结果图

4.2 图层控制功能的实现。ArcGIS Enging axTOOlbarControl提供了实现三维图浏览功能的多个控件,包括专门用于图层控制功能的控件——axToCControl,它可以呈现和修改当前发布的地图图层,为了减缓服务器的负荷,你可以根据需要的来选择应该显示的图层。

4.3 交通线路查询实现。交通路线查询采用站点的数据库直接查询,当用户在站点文本框中输入路线名时,系统直接调用数据库显示该站点的详细信息,包括开班时间,收班时间,和该路线所经过的站点等信息。

用户乘车时可能有两种情况,第一种情况直达不需要转站,当用户在文本框里输入从哪到哪的站点名时,系统直接调用数据库,查询同时有出发点和结束点的路线,这几个就是所要查询的乘坐的交通路线。第二种情况通过转车到结束点,当用户在文本框里输入出发点和结束点时,首先找到具有出发点和结束点的所有的交通线路,再找出这些交通线路中有具有交叉的站点 (即具有a的站),最后查到这些站点重复的站点,这些重复点就是中转点[4]。

找到中转站以后,通过出发站和中转站查到开始乘的车,在通过中转站和结束站找到要转的车。例如:从西南大学的6号门到橘园需要到地科院转车,首先找出经过6号门的交通线路有一、二路线路,查找出在一线路交叉路口的站点有地科院、田家炳、就业中心、培训学院,在二线路的交叉路口的站点有地科院、田家炳、培训学院,其次找出经过橘园的交通线路有三线路,查找出在三线路交叉路口的站点有地科院、就业中心、培训学院。然后,一、二线路中的交叉站点与三线路的交叉站点做比较,找出具有相同的交叉站点地科院 (找出每个线路第一个相同的交叉站点即可),地科院就是所要中转站 (如图6)。最后,将6号门作为出发点,地科院作为结束点,直接查询交通线路,再将地科院作为出发点,橘园作为结束点,直接查询交通路线,将两个结果连接起来就是想要的结果[5]。

用户查看建筑,有两种方式,第一种方式直接在图上通过鼠标移到建筑物上,系统通过调用ILayer里showsTips和DisplayField两个接口显示建筑物名[6]。第二种方式是输入对象名称,用VS.net中的Tooltips提供的shows方法,通过IScene-Graph接口将屏幕坐标转化成三维坐标作为参数传到shows方法里,Tooltips将定位于所要查询的建筑物上并显示建筑物名。

5.结束语

本系统借助三维技术管理校园交通共用信息平台中的公交信息,实现了公交信息管理的可视化与三维性,也有助于城市公交信息的数据挖掘和交通管理的辅助决策,如果在城市交通线路与站点建数据库时,可以对处于交叉路口的站点加一特殊属性,这样在深度搜索是减少数据量。但是本系统是基于三维的校园的交通查询,要扩展到三维交通线路查询[7],需考虑社会城市交通网络复杂性,以及对乘车多次换乘和最短路径不同影响乘车因素考虑,而且三维在网上发布需要更深层次的研究。

指导老师:陈俊华

[1]钱健,谭伟贤.数字城市建设[M].北京:科学出版社,2007.

[2]邬伦,刘瑜,张晶等.地理信息系统:原理、方法与应用[M].科学出版社,2001,18-86.

猜你喜欢
西南图层站点
古城西南两座桥
“潮”就这么说
传承千年文脉,匠筑美好西南
为《飞舞的空竹龙》加动感
以“夏季百日攻坚”推进远教工作拓展提升
以假乱真窥探湿玻璃后的风景
Country Driving
与众不同“跳出”画面更个性
积极开展远程教育示范站点评比活动
怕被人认出