一种gis电子地图引擎的实现方法

文档序号:6482589阅读:238来源:国知局
专利名称:一种gis电子地图引擎的实现方法
技术领域
本发明涉及一种地图引擎技术,特别是涉及一种GIS(GeographicInformation System,地理信息系统)电子地图引擎的实现方法。
背景技术
人类生活在地球上,80%以上的信息与地球上的空间位置有关,GIS的出现是 信息技术及其应用发展到一定程度的必然产物。近年来,随着GPS(Global Positioning System,全球定位系统)技术的发展,尤其是GPS车船载设备与其监控系统相关技术的推 广,极大地推动了 GIS电子地图引擎技术的发展。目前,很多通用的GIS电子地图引擎的功能虽然完善,但是针对性不强,而且存储 显示和检索的效率较低,尤其对数据的通用性和保密性很难协调(因为GIS要求通用,必定 要求地图数据的通用,就很难对地图进行保密和专用),同时绝大多数地图引擎不能支持地 图数据的即时下载和即时显示功能。

发明内容
本发明要解决的技术问题是为了克服现有技术的缺陷,提供一种GIS电子地图引 擎的实现方法,其能即时下载和即时显示地图数据,而且地图数据的精度高。本发明是通过下述技术方案来解决上述技术问题的一种GIS电子地图引擎的实 现方法,其特征在于,一 GIS电子地图引擎包括一工作空间,该实现方法包括以下步骤Si、打开工作空间,会自动打开对应的地图数据;S2、检查地图数据,判断是否需要下载;如果有地图数据,则不需要下载,并执行步 骤S4 ;如果没有地图数据,则需要下载并执行步骤S3 ;S3、从一地图服务端下载地图数据;S4、根据地图数据来显示地图;S5、根据需要对地图进行操作。优选地,所述地图数据采用紧凑型地图数据格式,用四个字节长整型数据存储。优选地,所述地图数据包括多个图层、图层数据文件和工作空间文件,图层包括多 个地物,图层数据文件存放图层的地理对象数据,工作空间文件存放各图层的显示配置数 据。优选地,所述步骤S4中的显示地图是通过位置栅格索引方法来实现。优选地,所述图层通过位置栅格索引方法处理后,每个图层生成一个图层索引文 件,图层索引文件记录栅格化后的地图数据。优选地,所述图层索引文件包括一个栅格指针列表和一个地物地址指针列表,每 个栅格指针列表包括多个栅格指针,每个地物地址指针列表包括多个地物地址指针,每个 栅格指针和每个地物地址指针一一对应。优选地,所述地图数据还包括名称索引文件,名称索引文件包括多个地物名称指针和多个地物地址指针,每个栅格指针和每个地物地址指针一一对应。优选地,所述GIS电子地图引擎还具有对地图数据动态刷新的功能,GIS电子地图 引擎在使用地图数据时如果发现地图数据缺失或者需要刷新,即向地图服务端发起请求, 实现动态数据下载与显示。
优选地,所述图层为动态图层或静态图层。本发明的积极进步效果在于本发明采用紧凑型地图数据格式,数据存储方式可 比普通地图引擎缩小一半。而且本发明地图数据的精度高,能加速对地图数据的检索,其还 能即时下载和即时显示地图数据。


图1为本发明GIS电子地图引擎的实现方法的流程图。图2为本发明对地图数据进行位置栅格索引的示意图。图3为本发明对地物进行图层索引的示意图。图4为本发明对地物按名称进行模糊查询的示意图。
具体实施例方式下面结合附图给出本发明较佳实施例,以详细说明本发明的技术方案。GIS电子地图引擎包括一工作空间,工作空间存储地图数据,如图1所示,GIS电子 地图引擎的实现方法包括以下步骤步骤1、打开工作空间,会自动打开对应的地图数据;具体是在地图工具栏中点击 “打开工作空间”图标后,弹出文件选择对话框,在对话框中可以选择需要打开的地图工作 空间。选择好工作空间后,地图引擎将打开工作空间。步骤2、检查地图数据,判断是否需要下载;如果有地图数据,则不需要下载,并执 行步骤4 ;如果没有地图数据,则需要下载并执行步骤3 ;本发明GIS电子地图引擎可以在 无地图数据的情况下进行工作,地图引擎可以在地图服务端的支持下,动态下载并显示地 图数据,达到地图视野切换到哪里,地图动态显示到哪里的效果,地图数据在一次下载完毕 后即在本地保存,下次使用无需再次动态下载。步骤3、从地图服务端下载地图数据,下载后执行步骤4 ;步骤4、根据地图数据来显示地图;步骤5、根据需要对地图进行操作比如切换视野,显示更新等。本发明的地图数据采用紧凑型地图数据格式,数据存储方式可比普通地图引擎缩 小一半。根据GPS监控领域的特点,GPS定位精度在15米左右,对位置分辨率精度不高。本 发明采用的经度和纬度数据精确到小数点后6位,分辨率可达到0. 1米,足以达到GPS监控 领域的精度要求。这样定义的经度数据范围为-179. 999999至179. 999999,纬度数据范围 为-89. 999999至89. 999999。经度和纬度数据乘以1000000 (—百万)后,可以用4个字 节长整型数据存储。定义本发明的经纬度坐标由经度和纬度组成,为存储方便,将经纬度值乘以 1000000后取整存储,一对经度和纬度数据总共由8字节组成,格式如表1所示表 1
名称字节数I类型rai
经度4Int32X*1000000
纬度4Int32Y*1000000同时,本发明的地图数据包括多个图层、图层数据文件和工作空间文件,图层包括 多个地物,图层类型包括通用复合图层、通用点(Point)图层和通用线(Polyline)图层等, 图层数据文件主要存放图层的地理对象数据,工作空间文件主要存放各图层的显示配置数 据。工作空间文件的文件后缀名为“.ws” (workspace的缩写)。本发明采用位置栅格索引方法来实现对地图数据的显示与查询。由于GIS电子地 图中所有地物都带有位置信息,而GIS的操作也基本以位置为基础,如地图的显示,其实就 是对某位置范围的操作,根据这一位置特性,本发明采用位置栅格索引技术来加速对地图 数据的显示与查询。如图2所示,地图数据在第一次使用时,GIS电子地图引擎会对地图的 各图层根据地物的密集程度进行栅格化处理,以后使用不需要再作栅格化处理。栅格化处 理后,GIS电子地图引擎为每个图层生成一个为“idx”后缀的图层索引文件,图层索引文件 记录栅格化后的数据。在地图进行显示处理时,GIS电子地图引擎根据当前需要显示的地 图视野,为每个图层确定需要显示的栅格,并由图层索引文件确定需要显示的地物数据。图层索引文件包括一个栅格指针列表和一个地物地址指针列表,每个栅格指针列 表包括多个栅格指针,每个地物地址指针列表包括多个地物地址指针,每个栅格指针和每 个地物地址指针一一对应,图层包括多个地物,对于每个图层都对应有一个栅格指针列表, 如图3所示,GIS电子地图引擎可以根据地图视图的视野范围和位置快速定位栅格指针的 位置。 每个栅格指针指向该栅格内对应的地物地址指针,地物地址指针指向对应的地物,比 如栅格指针对应地物地址指针1,地物地址指针1对应地物1。这样通过地物地址指针,可 以快速检索到地图数据结构,即找到对应的地物,进行搜索显示等。另外,本发明GIS电子地图引擎采用名称索引文件和图层的数据结构实现对地物 按名称进行模糊查询。地图引擎在第一次初始化时为每个图层自动生成名称索引文件和数 据结构,名称索引文件包括地物名称指针和地物地址指针,每个栅格指针和每个地物地址 指针一一对应,如图4所示,比如地物名称指针1指向地物地址指针1,地物地址指针1指向 地物1,这样通过名称索引文件可以快速定位到地物的详细数据。本发明GIS电子地图引擎还具有对地图数据动态刷新技术,基于GIS系统的地图 数据位置栅格索引方法,位置栅格索引方法把地图数据划分为块,GIS引擎与地图服务端间 的每小块数据有简单的对应关系,GIS电子地图引擎在使用地图数据时如果发现地图数据 缺失或者需要刷新,即向地图服务端发起请求,实现动态数据下载与显示。GPS监控领域中的GIS地图引擎需要对车辆实时位置、车辆历史轨迹等动态图层 进行高效的显示与管理,本发明GIS电子地图引擎采用独特的动态图层与静态图层相辅的 图层管理技术。地图数据等背景数据在视野切换完成后,数据显示就不再发生变化,这类图 层在本发明GIS电子地图引擎中定义为静态图层。车辆实时位置、车辆历史轨迹等信息独 立于地图,实时都会发生变化,此类图层在本发明GIS电子地图引擎中定义为动态图层。在本发明GIS电子地图引擎中,静态图层显示完成后,将生成内存位图保存与内存中,在显示 视图需要刷新时,直接将内存位图输出至显示缓冲区,然后再刷新动态图层。这种方式下可 以节省静态图 层的刷新处理,大大提高刷新效率。 虽然以上描述了本发明的具体实施方式
,但是本领域的技术人员应当理解,这些 仅是举例说明,在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变 更或修改。因此,本发明的保护范围由所附权利要求书限定。
权利要求
一种GIS电子地图引擎的实现方法,其特征在于,一GIS电子地图引擎包括一工作空间,该实现方法包括以下步骤S1、打开工作空间,会自动打开对应的地图数据;S2、检查地图数据,判断是否需要下载;如果有地图数据,则不需要下载,并执行步骤S4;如果没有地图数据,则需要下载并执行步骤S3;S3、从一地图服务端下载地图数据;S4、根据地图数据来显示地图;S5、根据需要对地图进行操作。
2.如权利要求1所述的GIS电子地图引擎的实现方法,其特征在于,所述地图数据采用 紧凑型地图数据格式,用四个字节长整型数据存储。
3.如权利要求1所述的GIS电子地图引擎的实现方法,其特征在于,所述地图数据包括 多个图层、图层数据文件和工作空间文件,图层包括多个地物,图层数据文件存放图层的地 理对象数据,工作空间文件存放各图层的显示配置数据。
4.如权利要求3所述的GIS电子地图引擎的实现方法,其特征在于,所述步骤S4中的 显示地图是通过位置栅格索引方法来实现。
5.如权利要求4所述的GIS电子地图引擎的实现方法,其特征在于,所述图层通过位置 栅格索引方法处理后,每个图层生成一个图层索引文件,图层索引文件记录栅格化后的地 图数据。
6.如权利要求5所述的GIS电子地图引擎的实现方法,其特征在于,所述图层索引文件 包括一个栅格指针列表和一个地物地址指针列表,每个栅格指针列表包括多个栅格指针, 每个地物地址指针列表包括多个地物地址指针,每个栅格指针和每个地物地址指针一一对应。
7.如权利要求3所述的GIS电子地图引擎的实现方法,其特征在于,所述地图数据还包 括名称索引文件,名称索引文件包括多个地物名称指针和多个地物地址指针,每个栅格指 针和每个地物地址指针一一对应。
8.如权利要求3所述的GIS电子地图引擎的实现方法,其特征在于,所述GIS电子地图 引擎还具有对地图数据动态刷新的功能,GIS电子地图引擎在使用地图数据时如果发现地 图数据缺失或者需要刷新,即向地图服务端发起请求,实现动态数据下载与显示。
9.如权利要求3所述的GIS电子地图引擎的实现方法,其特征在于,所述图层为动态图 层或静态图层。
全文摘要
本发明公开了一种GIS电子地图引擎的实现方法,一GIS电子地图引擎包括一工作空间,该实现方法包括以下步骤S1、打开工作空间,会自动打开对应的地图数据;S2、检查地图数据,判断是否需要下载;如果有地图数据,则不需要下载,并执行步骤S4;如果没有地图数据,则需要下载并执行步骤S3;S3、从一地图服务端下载地图数据;S4、根据地图数据来显示地图;S5、根据需要对地图进行操作。本发明采用紧凑型地图数据格式,数据存储方式可比普通地图引擎缩小一半。而且本发明地图数据的精度高,能加速对地图数据的检索,其还能即时下载和即时显示地图数据。
文档编号G06F17/30GK101882131SQ20091005076
公开日2010年11月10日 申请日期2009年5月7日 优先权日2009年5月7日
发明者励建东 申请人:上海大潮电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1