本发明专利技术公开了一种矢量地图数据存储方法及系统,属于移动地理信息系统领域。首先选定一地图级别,根据地图的经纬度范围和选定的地图级别将地图进行网格化,将地图划分为若干个网格单元;根据原始矢量地图数据中地图对象的经纬度坐标确定地图对象所在的网格单元,将地图对象归置到网格单元中;再建立网格单元中的地图对象与地图对象的属性数据的映射关系最后存储网格单元中的地图对象的经纬度坐标数据和属性数据。通过该方法及系统进行数据存储,能够很方便的将数据下载到移动智能终端上作为离线地图数据使用,减少了数据流量,加速了地图显示,提高了用户体验。
【技术实现步骤摘要】
一种矢量地图数据存储方法及系统
本专利技术涉及移动GIS(地理信息系统)领域,具体涉及一种矢量地图数据存储方法及系统。
技术介绍
随着现代社会的快速发展,移动智能终端已经在人们日常生活中扮演越来越重要的角色,移动智能终端是传统手机和网络终端的结合物,不仅能够满足打电话、发短信的需求,还包括上网、办公、社交、娱乐等多种功能,近些年,以移动地图为代表的移动GIS产品也迅速发展,为智能手机用户带来了极大的便利。移动GIS主要包括手机地图、基于定位的各种应用,例如优惠券、公交换乘、团购、交友、社交、采集等等,大部分基于定位的移动应用基本上都会用到手机地图,用以在地图上定位各种信息。手机地图是移动GIS的基础性应用,其提供各种基础GIS设施,供其他应用使用实现定位、地图展示等功能,手机地图中最重要的部分是地图数据,由于移动设备的硬件资源和网络带宽有限,因此对地图数据的要求比较苛刻,要求地图数据不仅要尺寸小,而且能够查询快,同时应该有的关键性属性数据不能缺失。早期手机地图使用的地图数据是PNG或JPG格式的地图切片,手机通常都是通过移动互联网上网,如果地图数据都是在线请求,不仅流量大,而且显示效果不流畅,影响体验,而且所有级别的地图切片集合起来尺寸太大,往往好几百兆,就算想以离线数据的形式预先下载到手机上,也十分费时费力。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种矢量地图数据存储方法及系统,通过该方法及系统提供尺寸小、查询快的矢量地图数据。为实现上述目的,本专利技术采用的技术方案如下:一种矢量地图数据存储方法,包括以下步骤:(1)选定一地图级别,根据地图的经纬度范围和选定的地图级别将地图进行网格化,所述的网格化是指将地图划分为若干个网格单元;(2)根据原始矢量地图数据中地图对象的经纬度坐标确定地图对象所在的网格单元,将地图对象归置到网格单元中;(3)建立网格单元中的地图对象与地图对象的属性数据的映射关系;(4)重复步骤(1),直至完成所有地图级别下的步骤(1)~(3);(5)存储网格单元中的地图对象的经纬度坐标数据和属性数据。进一步,如上所述的一种矢量地图数据存储方法,步骤(5)中,在存储网格单元中的地图对象的经纬度坐标数据和属性数据之前,还包括:将不同地图级别下的网格单元中的地图对象的经纬度坐标数据进行容差过滤,容差过滤的具体方式为:如果两个地图级别下的地图对象的经纬度坐标数据的数据量级小于设定容差值,则删除较小地图级别下的地图对象的经纬度坐标数据。进一步,如上所述的一种矢量地图数据存储方法,步骤(1)中,所述的地图级别是指地图的缩放级别,地图级别越大,每一个网格单元的经纬度范围越小。进一步,如上所述的一种矢量地图数据存储方法,步骤(1)中,根据地图的经纬度范围和选定的地图级别将地图进行网格化的具体方式为:设选定的地图级别为n,n为自然数;计算每一个网格单元的经纬度范围,计算公式为:网格单元的经度范围=地图的经度范围/2n;网格单元的纬度范围=地图的纬度范围/2n;根据网格单元的经纬度范围将地图进行网格化。进一步,如上所述的一种矢量地图数据存储方法,步骤(2)中,将地图对象的经纬度坐标数据进行压缩后,再将地图对象归置到网格单元中;将地图对象的经纬度坐标数据进行压缩是指根据地图对象的经纬度坐标所在的网格单元的经纬度范围,将地图对象的绝对经纬度坐标转换成相对经纬度坐标。再进一步,如上所述的一种矢量地图数据存储方法,将地图对象归置到网格单元中的具体方式为:如果地图对象为点,直接根据点的经纬度坐标确定该点所在的网格单元;如果地图对象为线或面,将线或面切分后,分别根据切分后的对象的经纬度坐标确定切分后的对象所在的网格单元。更进一步,如上所述的一种矢量地图数据存储方法,步骤(5)中,将相对坐标转换成整型数据坐标后,再存储网格单元中的地图对象的坐标数据。一种矢量地图数据存储系统,包括:地图网格化模块,用于遍历地图级别,并选定一地图级别,根据地图的经纬度范围和选定的地图级别将地图进行网格化,所述的网格化是指将地图划分为若干个网格单元;地图对象归置模块,用于根据原始矢量地图数据中地图对象的经纬度坐标确定地图对象所在的网格单元,将地图对象归置到网格单元中;映射关系建立模块,用于建立网格单元中的地图对象与地图对象的属性数据的映射关系;数据存储模块,用于存储网格单元中的地图对象的经纬度坐标数据和属性数据。进一步,如上所述的一种矢量地图数据存储系统,还包括:容差过滤模块,用于将不同地图级别下的网格单元中的地图对象的经纬度坐标数据进行容差过滤,容差过滤的具体方式为:如果两个地图级别下的地图对象的经纬度坐标数据的数据量级小于设定容差值,则删除较小地图级别下的地图对象的经纬度坐标数据。再进一步,如上所述的一种矢量地图数据存储系统,所述的一种矢量地图数据存储系统,所述的地图网格化模块包括:地图级别选定单元,用于选定地图级别,设选定的地图级别为n,n为自然数;经纬度范围计算单元,用于计算每一个网格单元的经纬度范围,计算公式为:网格单元的经度范围=地图的经度范围/2n;网格单元的纬度范围=地图的纬度范围/2n;网格化单元,用于根据网格单元的经纬度范围将地图进行网格化。本专利技术的有益效果在于:采用本专利技术所述的方法及系统,可以得到数据量小、能够快速查询的离线地图数据,尤其适用于将数据预先下载存储到移动智能终端中,通过移动智能终端的手机地图访问本地数据,节省了流量且地图加载数据快,提高了用户体验。附图说明图1为本专利技术具体实施方式中一种矢量地图数据存储系统的结构框图;图2为本专利技术具体实施方式中一种矢量地图数据存储方法的流程图;图3为具体实施方式中地图级别为2时的地图网格化后的示意图。具体实施方式下面结合说明书附图与具体实施方式对本专利技术做进一步的详细说明。图1示出了本专利技术具体实施方式中一种矢量地图数据存储系统的结构框图,该系统包括地图网格化模块11、地图对象归置模块12、映射关系建立模块13、容差过滤模块14和数据存储模块15,其中:地图网格化模块11用于遍历地图级别,并选定一地图级别,根据地图的经纬度范围和选定的地图级别将地图进行网格化,所述的网格化是指将地图划分为若干个网格单元;该模块包括了地图级别选定单元、经纬度范围计算单元以及网格化单元,其中,地图级别选定单元,用于选定地图级别,设选定的地图级别为n,n为自然数;经纬度范围计算单元,用于计算每一个网格单元的经纬度范围,计算公式为:网格单元的经度范围=地图的经度范围/2n;网格单元的纬度范围=地图的纬度范围/2n;网格化单元,用于根据网格单元的经纬度范围将地图进行网格化。地图对象归置模块12用于根据原始矢量地图数据中地图对象的经纬度坐标确定地图对象所在的网格单元,将地图对象归置到网格单元中;映射关系建立模块13用于建立网格单元中的地图对象与地图对象的属性数据的映射关系;容差过滤模块14用于将不同地图级别下的网格单元中的地图对象的经纬度坐标数据进行容差过滤,容差过滤的具体方式为:如果两个地图级别下的地图对象的经纬度坐标数据的数据量级小于设定容差值,则删除较小地图级别下的地图对象的经纬度坐标数据。数据存储模块15用于存储网格单元中的地图对象的经纬度坐标数据和属性数据。图2示出了本专利技术本文档来自技高网...

【技术保护点】
一种矢量地图数据存储方法,包括以下步骤:(1)选定一地图级别,根据地图的经纬度范围和选定的地图级别将地图进行网格化,所述的网格化是指将地图划分为若干个网格单元;(2)根据原始矢量地图数据中地图对象的经纬度坐标确定地图对象所在的网格单元,将地图对象归置到网格单元中;(3)建立网格单元中的地图对象与地图对象的属性数据的映射关系;(4)重复步骤(1),直至完成所有地图级别下的步骤(1)~(3);(5)存储网格单元中的地图对象的经纬度坐标数据和属性数据;在存储网格单元中的地图对象的经纬度坐标数据和属性数据之前,还包括:将不同地图级别下的网格单元中的地图对象的经纬度坐标数据进行容差过滤,容差过滤的具体方式为:如果两个地图级别下的地图对象的经纬度坐标数据的数据量级小于设定容差值,则删除较小地图级别下的地图对象的经纬度坐标数据。
【技术特征摘要】
1.一种矢量地图数据存储方法,包括以下步骤:(1)选定一地图级别,根据地图的经纬度范围和选定的地图级别将地图进行网格化,所述的网格化是指将地图划分为若干个网格单元;(2)根据原始矢量地图数据中地图对象的经纬度坐标确定地图对象所在的网格单元,将地图对象归置到网格单元中;(3)建立网格单元中的地图对象与地图对象的属性数据的映射关系;(4)重复步骤(1),直至完成所有地图级别下的步骤(1)~(3);(5)存储网格单元中的地图对象的经纬度坐标数据和属性数据;在存储网格单元中的地图对象的经纬度坐标数据和属性数据之前,还包括:将不同地图级别下的网格单元中的地图对象的经纬度坐标数据进行容差过滤,容差过滤的具体方式为:如果两个地图级别下的地图对象的经纬度坐标数据的数据量级小于设定容差值,则删除较小地图级别下的地图对象的经纬度坐标数据。2.如权利要求1所述的一种矢量地图数据存储方法,其特征在于,步骤(1)中,所述的地图级别是指地图的缩放级别,地图级别越大,每一个网格单元的经纬度范围越小。3.如权利要求2所述的一种矢量地图数据存储方法,其特征在于,步骤(1)中,根据地图的经纬度范围和选定的地图级别将地图进行网格化的具体方式为:设选定的地图级别为n,n为自然数;计算每一个网格单元的经纬度范围,计算公式为:网格单元的经度范围=地图的经度范围/2n;网格单元的纬度范围=地图的纬度范围/2n;根据网格单元的经纬度范围将地图进行网格化。4.如权利要求1所述的一种矢量地图数据存储方法,其特征在于,步骤(2)中,将地图对象的经纬度坐标数据进行压缩后,再将地图对象归置到网格单元中;将地图对象的经纬度坐标数据进行压缩是指根据地图对象的经纬度坐标所在的网格单元的经纬度范围,将地图对象的绝对经纬度坐...
【专利技术属性】
技术研发人员:李欣,王生,李强,赵兴宇,汪利宝,
申请(专利权)人:方正国际软件有限公司,方正国际软件北京有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。