首页 > 范文大全 > 正文

基于Google Map的态势地图平台的设计与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于Google Map的态势地图平台的设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

【摘要】 对卫星地图在地理信息平台应用和实现进行了分析和介绍,论述了如何解决高精度地图图片的获取、地图图片的修偏、栅格化和校准的问题,以及在GIS平台上的地图显示的过程中检索、显示和加载进行了介绍。该系统的设计实现解决了以往态势地图平台中电子地图获取困难或更新不及时的问题。

【关键词】 Google Map 瓦片式 地理信息系统 势态地图

一、引言

目前态势指挥系统的地图平台大多采用基于GIS的数字栅格地图,其中地图主要来源于测绘部门绘制的矢量地图或根据现有纸质、胶片等地形图经过扫描和纠偏后制作而成。这两种方式实现的数字栅格地图,存在着地图信息更新慢、显示效果单一、精度低的缺点。而目前网络上流行的多种导航和地理信息显示系统普遍采用了高精度卫星地图的显示方式,尤其是以google map为代表的高精度卫星地图,不仅地理信息全,更新快,且精度高(民用级即可到米级)。但这种方式在态势指挥系统中应用也存在困难:需要开发者使用Google Map提供的API开发接口,采用其提供的开发规则,而且需要连接互联网,实时获取地图,Google Map采用的瓦片式技术与传统的GIS平台很难融合。

本文介绍的基于Google Map地图的态势地图平台设计实现方法,不仅可以保留原有GIS架构体制,又能结合Google Map的瓦片式技术使地图图元快速高效的在态势平台上得到应用。

二、系统设计原理

考虑到平台的通用性,本系统的地理信息平台采用商用MapInfo地理信息平台。系统的设计原理主要包含以下几个部分:首先根据Google Map采用的金字塔型瓦片式技术架构(地图层级按清晰度从1级到22级),根据其地图坐标影射方式,计算出对应经纬度范围的地图的网络URL地址,从而从Google地图服务器中获取海量地图图元文件;然后将海量的图元文件进行经纬度修偏;同时根据MapInfo的校准方式设计相应的校准软件自动对地图进行栅格化并生成映射文件;并且根据MapInfo地图平台多层级矢量化的特点,将缩放比例与Google Map的金字塔型层级地图进行对应,当地图的缩放比例满足映射关系即显示该层级的栅格化地图;由于每个层级的地图图元文件数量非常巨大,完全显示将会使系统效率变得很低影响其他用户功能的实现,因此平台会自动获取显示器当前显示的地理范围,自动检索相应的图元文件并进行显示;最后在地理信息平台上将道路信息、用户目标信息、各类状态效果信息以及地理平台数据库进行多层级融合。其主要流程如图1 系统设计流程图所示。

三、系统组成

系统分为平台层、信息支撑层、应用层三层级结构。其中平台支撑层由地理信息支撑系统和数据库系统组成;信息支撑层由多种数据信息组成包括卫星图片信息、地理信息、地理校准信息、地图栅格化信息、用户信息、图元模型信息、用户标绘信息、图层信息等;应用层由态势绘制模块、地图调度模块、显示控制模块、层级控制模块、信息管理模块、标准管理模块和数据库访问模块等组成。如图2所示。

四、金字塔型瓦片式卫星地图获取原理

所谓的金字塔型瓦片卫星地图,是Google Map的地图文件建立与保存检索的方法。金字塔方式是Google Map采用了墨卡托投影方式,即为等角圆柱地球投影,但是其将两极85度以上的地球投影部分切除,形成东西南北相等的正方形,并将此投影作为金字塔最顶端,根据显示的精度不同分为了22个层级;瓦片式即Google Map所有图片均由分辨率大小256*256 的jpg图片无缝拼接而成,每提高一个等级,单个图片都将裂变为4张小图片,如图3所示。

Google Map为每张图片根据金字塔的层级和瓦片裂变的位置都有专用的LRU地址,每块图片的URL格式为http:// /kh?v=3&t=trstrq”样。参数v与图片关系不大,主要是参数t起作用,它是“qrst”4个字符排列而成的字符串。为获取某经纬度的URL,就需要把经纬度转化为“qrst”字符串。Google卫星地图在zoom=1时,全球就为一个256x256的图片,它的中心经纬度为(0,0),URL为“http://kh.google. com/kh?v=3&t=t”。zoom=2时裂化为4块,每块的编号为:左上“t=tq”,右上“t=tr”,右下“t=ts”,左下“t=tt”。依此类推,每放大一倍,每一小块都裂分为四,从左上到右下顺时针按qrst编号,裂分后的编码为裂分前的编号上小块的编号。

Google Map 中定义的比例尺与传统意义定义的比例尺不同,所定义的是单位像素所代表的距离值。在初始等级时的比例尺为:40075016.685578488/256=156543.033928041(米/像素)。地图放大一个级别后原来256*256 的图片将变成4 张256*256 的图片。这时比例尺为:40075016.685578488/5 12=78271.51696402(米/像素)。以此类推各层级比例尺如表1所示。

系统通过计算出所有用户设定区域内的经纬度信息从Google Map地图服务器中获取相关瓦片图元并根据层级自动保存下来。

五、海量地图的修偏与栅格化

由于地图映射后转换的偏差以及Google公司对本身资源的保护会在不同区域设置一定的地理偏差,因此需要在GIS平台中建立修偏数据库并形成栅格化图层,载入各地点位的修编地标与卫星地图图层进行对接与修偏保证地图显示的准确性。同时由于地图图片是jpg格式,如果要载入GIS平台首先必须要将地图进行栅格化处理。

海量下载的地图图片是jpg格式,如果要载入GIS平台首先需要将地图栅格化。由于Google Map下载的图元文件数量非常巨大,普通中等城市的图元文件会有几十万甚至上百万张量级。人工进行地图的修偏和栅格化显然是不现实的。因此必须实现对地图的自动修偏和栅格化。

系统在计算瓦片地图文件URL地址的过程中自动将获取的地图文件名保存为“qrst”裂分规则文件名,因此在栅格化的过程中系统根据不同地图层级对256*256的地图图片逐一进行检索,根据文件名中的“qrst”规则倒推出该图片的经纬度信息,并且根据该层级比例尺计算出该图片的实际显示面积,获取图片4个顶点的经纬度信息,即(1,1)(1,256)(256,1)(256,256)4个像素坐标值,根据MapInfo校准文件规则自动生成校准文件,当然在校准的过程中,还需要根据图片的经纬度值从修编数据库中检索出该经纬度的偏差值进行经纬度补偿才能准确的完成地图的栅格化。其生成的栅格化文件及浏览界面如图5所示。

六、地图缩放比例与图层切换的无缝衔接

由于MapInfo平台采用的栅格化矢量地图平台采用的是“无级化”缩放控制,即用户可以任意调整地图当前的现实比例尺,如果用户使用地图的放大或缩小功能,地图将根据用户的操作及当前地图显示的范围自动控制缩放比例已达到较好的显示效果。

而使用瓦片式架构的卫星栅格化地图对于缩放比例与地图层级的控制非常重要,也是显示效果好坏的关键技术。因为每一显示层级图片使用固定的比例尺,由于两个层级间的比例差,如果将用户的缩放功能和Google的比例尺绑定即只有1-22级缩放比例,图层的缩放会失去原有GIS平台“无级化”的优势,地图在层级见且欢的过程中会给用户带来突变的感觉,同时固定的比例尺对其他图层图元信息的显示会带来颗粒度不一致的问题。因此系统设计了在两层级间采用GIS的“无级化”缩放,当比例尺跨越更高或更低层级后才进行图层图片切换,并且隐藏原有层级图片。在这一切换技术的设计过程中还存在一个突出的问题,即在不同区域拥有的卫星地图图片的精度不同,因此会带来再某一层级显示的过程中会有某些区域无该精度地图,导致地图“留白”。这就需要在检索不同缩放比例地图时,遇到无该精度栅格图片的情况下向上或向下检索,使用不同层级的图片缩放后差级显示。

七、显示区域地图的自动检索

当用户在GIS平台中确定显示的地理中心,或者进行移动、放大、缩小等操作后,系统需要检索出当前需要显示的地图图层和区域已满足操作员的显示需要。而载入的图片多少直接关系到系统资源的占用度,为了提高显示效率,系统仅仅需要显示当前显示器所覆盖的地图区域即能满足用户使用的需要,并且根据不同的显示分辨率进行自动匹配。

因此系统首先通过GetZoom()函数获取当前地图平台的显示比例尺,同时通过GetWindowSize()函数获取当前显示区域的像素值,并且根据显示比例尺换算出显示区域的经纬度面积,再根据当前卫星地图层级检索出需要显示的地图图元信息逐一载入。

如果地图采用的是移动、放大、缩小等操作,系统设计了二级缓冲机制,将需要显示的地图优先显示后再将区域外的地图推出,使地图显示无闪烁或跳变感。

八、图元的多层级融合

由于卫星地图显示的仅仅是地理信息,当系统需要实际使用中,还必须加载地图上的道路图、关键地名以及用户需要的各类图元信息。这就需要将数据库与地理信息系统进行绑定,载入用户信息图元。或者在MapInfo平台下使用EXCEL或TXT的文件格式将图元地理信息载入后生成图层文件加载到系统中实现多层级信息的显示,如图6所示。

九、结束语

本文设计的基于Google Map的态势地图平台,解决了卫星地图在GIS平台应用中关于地图图元获取、海量图元文件修偏、校准、检索、层间融合等一系列技术问题。并且很好的应对了在态势指挥系统中电子地图获取困难和更新慢问题,在各类地理信息系统有在良好的应用前景。

参 考 文 献

[1] 高皓亮.基于Google Map的空间数据整合技术.上海:华东师范大学,2000

[2] 崔金红等.Google地图算法研究及实现.计算机科学,2007.