简介:关于本文可作为路径环形方面的大学硕士与本科毕业论文路径环形论文开题报告范文和职称论文论文写作参考文献下载。
摘 要:Google Maps API的开放策略将基于WebGIS的应用开发推向了一个新的论文范文.针对具有特殊需求的路径规划、行车诱导等应用,本文在深入分析路网特点及寻径方式的基础上,探讨了如何根据Google Maps API提供的对象和方法提取局部交通道路数据的策略,并针对一些特殊道路类型设计了提取算法.
关键词:Google Maps交通道路数据探索法 射线法
到日前为止,Google开放其地图服务应用程序接口(Google Maps API)已近四年.Google Maps API的开放,使得通用地理信息服务的开发过程变得相当简单,只需要在J论文范文aScript中嵌入API对象并调用其提供的方法即可实现对通用地理信息的访问.Google的开放策略吸引了越来越多的开发者参与,在灾难防控、应急响应、城市交通引导、本地地理信息查询等方面涌现出越来越多的优秀应用案例,给人们的生活带来了很大的方便.
1.前言
众所周知,地理数据库是地理信息系统的核心,Google Maps正是通过其庞大的地理数据库为WebCIS提供强有力的地理信息可视化及查询功能支持的.然而,在一些特殊的路径规划、行车诱导应用中,用户可能希望通过自己定义路径查找的方式(如通过限定所经过的道路类型、旅行时间、两点间距离等特殊要求)进行路径规划.由于Google Maps API仅提供内置的路径规划算法,封装了对底层地理数据的访问,导致了这类特殊应用无法实现.
为支持这类特殊应用,本文在对Google Maps的路网深入研究的基础上,通过探讨其开放的路径规划API对象及方法,探索提取局部区域内交通地理数据的策略及算法,为这类特殊应用提供地理数据支持.
2. Google Maps API常用对象
为支持J论文范文aScript集成Google Maps地图,API为开发者提供了GMap2、GLargeMapControl、GMapTypeCon-trol等对象及相应的方法实现对地图定位、漫游、缩放三种基本功能的支持,而对于行车导航、本地搜索等服务,API提供了GDirections、GPolvLine、GMarker、GlnfoWindow、GTitleLayerOverlay等对象,以实现对两点间路径查找、路径显示、位置标示、黄页内容显示和用户新增图层的支持.图1展示了Google Maps API中常用对象,以及它们所支持的常用方法和事件.
3. 局部交通道路提取策略分析
3.1道路的类型
要提取交通道路网中各路段数据,首先必须对其道路类型进行分类.Google Maps中展现的道路类型(特指公路)包括了高速路、主干道、支道三类.其中高速路、主干道具有中间分车带或双实线标志,每个车道只允许单向通行;支道分两类,一类允许在同一车道下双向行驶,另一类只允许单向行驶.根据这一特点,我们按照车道的通行能力将Google Maps中的最小路段抽象划分为三类,依次以doubleWay.twoWay和oneWay区分.
由于这三种类型的路段寻径方式有着很大的区别,因此有必要首先进行区分.
3.2 Google Maps公路网寻径特点
通过对Google Maps公路网的深入分析,我们发现:①Google Maps的路段之间是连通的(即路网上任意两点(vl’,v2’)间总可以找到一条分别以这两点为起点和终点的路径);②从宏观上看(如图2所示),Google Maps地图被公路网划分成不同的封闭区域,各个区域以环绕该区域的一条封闭的环形路径为边界;③从微观上看,由于doubleWay类型道路的存在,构成一个区域的封闭环形路径边界往往并不是一条单线,而表现为由三种路段连接而成的边界(如图3所示,区域PL1的边界由pwl、pw2、pw3、pw4和pw5所构成,其中pw2、pw3、pw4是doubleWay类型路段,分别表现为一条环路).
ps 建立环形路径:2016年国家公论文范文培训-2015年公考辅导-行测判断推理教程-位置类移动路径-环形路径
事实上,oneWay和twoWay两类路段非常相似,在路网中均表现为由多条边构成的一条单线(如图中pwl、pw5、pwl0),但寻径方式不同:而doubleWay类型路段分车道双向行驶,因此在路网中表现为多条边构成的一条环路(如图中pw2、pw3、pw4、pw6、pw7、pw8、pw9),以便与实际交通法规中沿行驶方向靠右车道行驶的交通规则相一致.
3.3
Directions对象的道路探索能力
仔细分析Google Maps所提供的用于路径搜索的函数可以发现,路径搜索主要是通过Directions对象完成的.通过调用GDirections对象的LoadFromWaypoints()方法可以实现路径查找功能,并具有以下特点:①地图上任意选择的两点(vl,v2)总能定位到最近道路上的两点(vl’,v2’);②在其”load”事件中总能返回由v01到v02所经过的路径polyLine.进一步,通过得到的polyLine可以获取其包含的顶点数,并可获得其中任意节点所在的经、纬度坐标.
从3.2节我们知道,最小环形区域是构成整个公路路网的基本单位.因此,我们从最小环形区域人手,讨论如何根据Directons对象的寻径能力获取最小环形区域边界路段的方法.
作为路网的一种特例,在最小环形区域内任意选择的两点(vl和v2)也能够通过Directions对象的函数获得其定位于该区域边界上的两点(vl’和v2’).通过大量的研究发现:分别以vl’为起点v2’为终点和以v2’为起点vl’为终点进行路径查找(以下简称为“正反路径查找”),分别得到的路径记为pl和p2,将pl、p2合并为p,则p仅可能存在以下3种情况:p为一条单线(如图4中的pwl’和pw2’);p为一条单线与一条环线的组合(如图4中的pw4’);p为一条环线(如图4中的pw3和ppw4).进一步分析发现:
①当p为一条单线时,观察pl和p2,必为两条相同的路径.即若pl等于<,vl’,vll,v12,等v2’>,,则p2等于<,v2’,等v12,vll,vl’>,,且vl’和v2’必位于同一条twoWay路段或者由多条twoWay路段相连接的路径上.
②当p为一条单线与一条环线的组合时,可以判断vl和v2必分别位于一条twoWay路段和一条double-Way路段上.
③当p为一条环线时,环线的类型可能有两类:一类是包含该最小环形区域的内部最小边界(如图3中由pwl - pw5所有边界路段位于PLI内部的边构成的环路,定义为ppw),另一类是仅包含环形边界上某一条或多条doubleWay类型的路段构成的环路(如图3中pw2).以上两种情况可以通过vl与p的位置关系(通过射线法可以判断出vl位于p的内部还是外部)加以区分.
④若p为ppw时,vl’和v2’所在路段可能存在以下三种情况:a. vl’或v2’位于一条oneWay路段上;b.vl’和v2’分别位于两条doubleWay类型路段上;c. vl’和v2’分别位于相邻或不相邻的twoWay和double-Way两条路段上.
⑤若p为pw类型环形路段时,vl’和v2’必分别位于两条可能相邻也可能不相邻的doubleWaV路段上.
需要说明的是,通过地图上任意两点(vl,v2)所定位到最近道路上的两点(vl’,v2’)不一定是路网中的节点(比较图4和图5,vl’- vl0’都不是路网中的原有的节点),因此需要在考虑提取策略和算法的时候剔除掉这些点,以保证提取的道路与实际道路一致.
3.4局部交通道路提取策略
在探讨寻径策略和算法之前,为便于区分,需要对一些概念进行定义如下:
定义1:局部交通区域是指由用户所选定的一个需要提取交通道路网的区域,记为PL,如图3中所有交通路径所涵盖的区域.
定义2:最小环形区域是PL的最小组成单位,即构成一个区域的封闭环形路径的所有边界所覆盖的区域,记为PLn(n 等于1,2,3等),且PL等于UPLn (n 等于1,2,等).如图3中,PLI等于pwl U pw2 U pw3 U pw4U pw5.
定义3:区域内部最小环路是指经过最小环形区域所有路段内部边界的一条环形路径,记为ppw,如图5中PLI所对应的ppw等于<,v01,v02,v03,v06,v09,v12,v13,v14,v15,v01>,.每个最小环形区域有且仅有一个ppw.
定义4:最小路段是组成最小环形区域边界的不能再分的完整路段,记为pwn(n 等于1,2,3,.,.).最小路段有oneWay、twoWay和doubleWay三种类型,如图3中pwl - pwl0;
第3节的分析为我们获取局部交通地图提供了一条基本思路:①标记用户选择的矩形区域为PL;②将PL划分成最小环形区域(即区域内不再包含更小的环形区域,分别记为PLI,PL2,PL3等,且PL等于PLl UPL2 U等.如图5中PL3等于 pwl U pw2 U pw3 U pw4 U pw5);③通过限制搜索起点和搜索方向,找到包含每个最小环形区域的内部最小环路ppw(如图5中对应于PLI的ppw等于<,vl,v2,v3,v6,v9,v12,v13,v14,v15,vl>,);④依次通过对ppw中的相邻两点进行正反向路径查找,获取各最小环形区域边界上的所有最小路段(如PL3的边界路段由pwl、pw2、pw3、pw4、pw5构成,PL3等于pwl u pw2 u pw3 u pw4u pw5);⑤尽管各最小环形区域内及各最小环形区域之间的最小路段可能会有重叠,但消除重叠路段后,可以获得包含在整个选择区域内的公路网.
4. 局部交通道路提取算法分析与设计
4.1提取算法分析
从以上分析可以看出,实现局部交通道路提取策略的关键是如何通过任意定位在某个环形区域中的一点,找到该环形区域中包含该环形区域内部边界的路径ppw.
但是,在最小环形区域中选择的点(记为vl)的位置是随意的,由于在自动处理的情况下事先并不知道环路的具体情况(包括形状、边界路段类型等),因此需要从vl定位在边界路段上的点vl’开始,通过适当的算法,借助于该最小环形区域内的其它点,逐步探索出边界路径,最终合并为其ppw.
归纳3.3节的讨论结果,可以得出如下结论:当且仅当vl’位于一条oneW论文范文路段时,可以通过在该区域内任意选择另一点v2,通过正反向路径查找并合并找到的两条路径为p,可以立即推断其获得的路径为ppw;在其他情况下,通过另一点所在(twoWay或doubleWay类型)路段的类型无法直接推断所获取的路径必为ppw.
从整个Google Maps地图来看,最小环形区域的形状和边界路段类型是多样的,我们不能保证每一个最小环形区域都包含着oneWay类型路径,因此无法通过仅在最小环形区域中选择两个特殊的点就一定能获取其ppw.通过反复实践,我们发现单纯由twoWay类型路段构成的最小环形区域边界路径的提取是最复杂的,其他类型的复合边界都可以通过在探索这种特殊情况的过程中获得其ppw.因此,下面以图6为例,讨论最小环形区域ppw的提取算法.
4.2提取算法设计
对仅由单线构成的最小环形区域而言,其边界即为区域内部最小环路ppw.由于该环路仅由twoWay类型最小路段构成,为无向环,其寻径总是依据两点间距离最近的路径为基础的,因此,只需要在该ppw上找到任意两点(记为vl’和v2’),找到其路径p0等于<,vl1等,,v2’>,;通过探索法让vl’或v2’沿边界路径延伸,记录下新增长的路径p(如让v2’沿曲线vl&,acute, v2’的方向延伸,延伸到新的点v3’,得到p等于<,v2,等V3’>,);根据vl’和v3’获得新的路径p’,判断p’是否包含原路径p0,若包含,继续延伸;否则,一定能够找到不包含p0的一条新的路径p’,该路径与p0和p、p’一起即可合并为ppw.
对不全由单线构成边界的ppw,若环形区域边界上包含oneWay类型最小路段,且在vl’或v2’延伸的过程中定位到oneWay类型路段上,由4.1节的结论可知,通过正反向查找即可获得该环路的ppw.
若vl’或v2’在延伸的过程中定位到doubleWay类型最小路段上,由3.3节的结论可知,通过正反向查找可能找到两种类型路径:ppw或者包含至少一条pw类型的环形边界,通过射线法可以区分出这两类路径,若不为ppw,可以通过vl’和v2’的继续延伸最终获得ppw.
结合以上分析,我们以图6所示的最小环形区域为例对提取算法说明如下:
①设环形区域内部任意确定一点vl,通过Directions对象获取vl定位到最近边界路段上的点vl’,求得<, vl.vl’>,的直线距离d及线段vlvl’的斜率k(若点vl和vl’具有相同的经度或纬度,需要单独考虑,以下只讨论一般情况).
②在以vl为起点,沿vl&,acute, vl的垂线方向(斜率为- I/k)找到一个距离为d的点v2,可以判断v2必在该环形区域内部(因vl’是vl定位的最小距离点,以vl为半径的圆上任一点都必在该环形区域内).
③以<, vl,v2>,为两个顶点分别调用Directions对象进行正反向路径查找.设v2定位到边界路径上的位置为v2’,查找获得的两条路径分别为pl’和p2’,根据3.3节的结论,可以判断出以vl’和v2’为端点的路径p的类型,记n 等于0,p0<,-p.若p为一条环路,v3’<,- vl’跳转至⑧.
④记n等于n+l,在vl&,acute, v2的正向寻找距vl距离为nxd的点,并标记该点为v3.以(v2,v3)进行正反向路径查找,合并所获得的两条路径pl’、p2’为新的路径p’,记v3在边界上的定位点为v3’.
⑤在p’中找到距离v3’最近的点v4’,求取直线v2v3与直线v4&,acute, v3’的交点V,判断v2与v3是否在交点v的同侧,即可判断出v3是否超出区域边界.若v3超出边界,跳转至⑦;若p’为一条环路,p<, -p’,跳转至⑧;否则,令p<, -p’,顺序执行.
⑥以(vl,v3)进行正反向查找,合并所获得的两条新的路径pl’、p2’为新的路径p’,若p’为一条环路,令p<, -p’,v2<,- vl,v2’<,-vl’,跳转至⑧;判断p’与p0、p的关系,若p0与p、p’合并构成的路径p”为不同路径,则p0与p”必构成一条环路,该环路必为所要寻找的ppw,记p0<,- pOUp&,acute,,算法终止;否则,p0<,-p&,acute,.置vl’<,- v2’,v2<,- v3,v2’<,- v3’,跳转执行④.
⑦求得<,v2,v2’>,的直线距离dl,以v2为起点,沿vlv2的垂线且与v2&,acute, v2不同侧方向,寻找距离为dl的新点v,v也必在该环形区域内部.vl<,-v2,vl’<,- v2,v2<,-v,跳转执行③.
⑧(射线法)在p中找到除端点v2’、v3’外且相邻的两点<,v4’.v5’>,(剔除非路网节点),选取线段v4&,acute, v5’的中点v6’.以<,vl,v6’>,为端点作一直线vlv6’,求得vlv6’与p的另一交点v7’(可能有多个交点,只需要找到一个即可).判断v7’与vl是否在v6’的同侧,即可判断vl在该环路p的内部还是外部.若vl在p的内部,则该环路p必为ppw,算法终止;否则该环路p必为一条或多条边界路径构成的边界环路(如图7所示),跳转执行④.
5.结束语
通过人工或者区域扩展的方法,在局部区域内的各个最小环路上分别选取一点,可以提取出各个最小环路,进而通过合并、消除重复路径可以提取出该局部区域内的整个交通路径.限于篇幅,本文没有给出如何判断重复路径和如何将各个最小环形区域合并为整个局部交通路径的细节.按照以上策略和算法,对绵阳市高新区道路的提取结果显示,该策略能够正确提取较小范围的交通路径,并能够进一步获取各个交通路口、立交桥等特殊交通设施的交通寻径方式,进而通过在Google Maps上叠加图层应用于具有特殊需求环境.但由于算法基于jsp编程,程序通过J论文范文a虚拟机执行,因此,执行效率和存储空间受到较大的限制,在提取较大范围交通路径时存在执行速度较慢的问题.
总结:这篇路径环形论文范文为免费优秀学术论文范文,可用于相关写作参考。
ps 建立环形路径引用文献:
[1] 管理上转型的路径论文提纲 论文提纲样本模板
[2] 丘陵地区乡村振兴路径论文范文 关于丘陵地区乡村振兴路径论文范文3000字
[3] 互联网和路径分析毕业论文格式范文 互联网和路径分析有关自考开题报告范文2万字