专利名称:地图数据的分块下载方法及地图数据的分块下载装置的制作方法
技术领域:
本发明涉及地理导航领域,特别涉及通讯导航中的一种地图数据的 分块下载方法及一种地图数据的分块下载装置。
背景技术:
随着城市交通网的发展和人民生活水平的提高,基于移动定位和无 线互联网技术实现的通讯导航系统已经成为人们生活中不可或缺的一部 分。在通讯导航中,用户使用通讯导4元终端(例如,手机、个人数字助理 等),通过无线互联网或移动通信网络即可获得相应的导航服务,因而成 为近来地理导航领域的发展方向。
公知的是,城市背景地图、交通网数据和导航结果数据等是实现导 航服务所必要的地图数据信息,并且,由于城市地理范围比较大,数据 精度要求比较高,这些地图数据信息的数据量比较大。相对而言,现有 通讯导航终端存在显示区域较小、存储资源有限、运算能力较差等问题, 为解决这个问题,使应用现有通讯导航终端实现通讯导航成为可能,现
有技术提出了以下两种解决方案
一种解决方案为预先将需要进行导航运算的数据存放在服务器上, 当进行通讯导航时,服务器根据当前显示的区域和范围,计算得到该范 围内的数据,然后返回给通讯导航终端的显示设备进行显示。可以看出, 在这种解决方案中,服务器需要实时计算当前显示所需的数据,计算量 很大,这不仅对服务器的要求很高,还严重影响了导航的处理速度,从 而降低了导航的实时性。
另 一 种解决方案为将导航的背景地图数据按城市区域进行划分, 在导航系统安装时,将用户所需的城市区域预先安装到的通讯导航终端 的存储设备中,或通过其它高速网络让用户预先下载到的通讯导航终端 的存储设备上。在通讯导航时,用户向服务器请求导航路径计算,然后 下载导航计算的结果路径数据,再从本地读取相应的背景地图数据,即
可完成导航。本方案通过对背景地图数据按城市区域进行划分,可以在 一定程度上避免现有通讯导航终端的存储资源有限的问题,然而,由于 现有通讯导航终端存储设备的存储量有限,用户每次只能安装少数几个 区域的数据,当用户的导航需求涉及多个城市区域时,由于缺少其它区 域的数据,此方案将无法提供导航服务。此外,本方案采用服务器来计 算导航路径,而由用户的通讯导航终端完成相关路径的匹配,其数据计 算量比较大,可能超出现有的通讯导航终端的运算能力范围,导致导航 速度緩慢。
所以,本领域技术人员迫切需要发展出 一种在通讯导航中可以有效 保证通讯导航实时性的地图数据分块下载方法及地图数据分块下载装 置。
发明内容
本发明所要解决的技术问题是提供一种地图数据的分块下载方法,
用以解决现有技术中导航处理速度緩慢,导航实时性较差的问题;
本发明还提供了 一种地图数据的分块下载装置,用以保证上述方法
在实际中的实现及应用。
为解决上述技术问题,本发明实施例公开了 一种地图数据的分块下
载方法,包4舌
将不同显示级别的地图数据分别切分成具有相应显示级别信息的地 图数据块;
记录所述地图数据块的特征标识,所述特征标识为根据所述地图数 据块的显示级别和位置信息唯一生成; 计算当前显示所需的特征标识; 下载所述特征标识对应的地图数据块。
优选的是,所述地图数据块包括实块和虚块,所述下载步骤包括 如果所述特征标识对应的地图数据块为实块,则下载所述实块; 如果所述特征标识对应的地图数据块为虚块,则根据所述特征标识 确定符合预置规则的实块,并下载所述实块。 优选的是,所述的方法,还包括
将所述下载的地图数据块保存至客户端。
优选的是,所述地图数据块存储于服务器端,所述的方法还包括 判断客户端是否存在所述特征标识对应的地图数据块,如果是,则直
接从客户端读取所述地图数据块;如果否,则从服务器下载所述特征标
识对应的地图数据块。
优选的是,所述各地图数据块的显示尺寸大小均等。
本发明实施例还公开了 一种地图数据的分块下载装置,包括
切分模块用于将不同显示级别的地图数据分别切分成具有相应显
示级别信息的地图数据块;
记录模块用于记录所述地图数据块的特征标识,所述特征标识为
根据所述地图数据块的显示级别和位置信息唯一生成; 计算模块用于计算当前显示所需的特征标识; 下载模块用于下载所述特征标识对应的地图数据块。 优选的是,所述切分模块和记录模块位于服务器端;所述计算模块
和下载模块位于客户端。
优选的是,所述地图数据块包括实块和虚块,所述下载模块包括 实块下载单元用于在所述特征标识对应的地图数据块为实块时,
下载所述实块;
虚块下载单元用于在所述特征标识对应的地图数据块为虚块时, 根据所述特征标识确定符合预置规则的实块,并触发实块下载单元。 优选的是,所述的装置,还包括
保存模块用于将所述下载的地图数据块保存至客户端。 优选的是,所述的装置,还包括
判断模块用于判断客户端是否存在所述特征标识对应的地图数据 块,如果是,则触发读取模块;如果否,则触发下载模块;
读取模块用于从客户端读取所述地图数据块。
与现有技术相比,本发明实施例具有以下优点
首先,本发明实施例通过将不同显示级别的地图数据分别切分成具 有相应显示级别信息的地图数据块,每个地图数据块的大小可以根据通 讯导航的需要进行控制,可以满足导航系统制图的需要和实时下载的流量需要,从而使通讯导航系统在4交短时间间隔内或是零时间间隔内就完 成需要的地理数据块的下载,有效保证了在无线网络条件下通讯导航的 实时性;
其次,本发明实施例对于分块后的地图数据块采用同时存储其坐标 位置信息和显示级别信息的命名和组织方式,在导航计算时,导航系统 可以根据这些参数直接计算出地图数据块的存储位置,索引效率高,计
算时间少,从而有效提高了通讯导航的处理效率;
再者,本发明实施例对于不设置详细数据的地图数据块,例如农村、 森林等,采用一定的规则下载与其相关的有效地图数据块,減少了不必 要的高精度数据下载,从而进一步保证了导航的实时性;
最后,本发明实施例将地图数据块存储于服务器端,不受通讯导航 终端存储容量大小的限制,即使是跨区域导航,也不会因为数据问题而 无法进行。同时,在导航过程中,本发明实施例还可以将这些地图数据 块实时、部分地下载到通讯导航终端上,用以提高显示效率;并且,在 通讯导航终端存在用户所需的地图数据块时,则直接从通讯导航终端中 读取即可,从而进一步保证了通讯导航的实时性。
图1是本发明的一种地图数据的分块下载方法实施例1的流程图2是一种对应不同显示级别的地图数据的示意图3是一种地图数据分层的示意图4是一种优选的地图数据块文件存储的结构示意图5是本发明的一种地图数据的分块下载方法实施例2的流程图6是本发明的一种地图数据的分块下载装置实施例1的结构框图7是应用图7所示的装置实施例进行地图数据分块下载的流程图8是本发明的一种地图数据的分块下载装置实施例2的结构框图9是一种通讯导航系统的结构示意图。
具体实施例方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合
附图和具体实施方式
对本发明作进一步详细的说明。
本发明实施例的核心构思之一在于,将地图数据按地理范围划分成 相互邻接的多个地图数据块,在通讯导航时,只根据显示需要获取相应 的地图数据块即可。从而有效减少网络数据流量,提高通讯导航系统的 反应速度,并保证地图数据的实时下载。
参照图1,示出了本发明的一种地图数据的分块下载方法实施例1的
流程图,具体包括以下步骤
步骤101、将不同显示级别的地图数据分别切分成具有相应显示级别 信息的地图数据块;
步骤102、记录所述地图数据块的特征标识,所述特征标识为根据所 述地图数据块的显示级别和位置信息唯 一 生成;
步骤103、计算当前显示所需的特征标识;
步骤104、下载所述特征标识对应的地图数据块。
在本发明实施例中,各种导航服务由通讯导航系统提供,通讯导航 系统能够将现实世界以电子地图的形式显示给用户,并提供查询、定位、 监测等功能。所述通讯导航系统包括服务器和客户端,所述客户端为通 讯导4jt终端。
需要说明的是,步骤101中所述地图数据为经过分层处理得到的多 个显示级别的地图数据,所述显示级别对应于显示内容的详细程度和显 示比例尺,来源于相同区域的不同比例尺的源数据,或者,从同一个源 数据中按照不同的抽稀级别生成,即根据显示所需要的比例尺不同,根 据一定的抽稀准则,对源数据进行抽稀和简化,最终生成多个显示级别 的地图数据。其中,所述源数据可以包括基础地理信息数据、带有拓朴 关系的交通网数据、带有各种不同属性信息的POI(Point Of Interest,兴趣 点)数据和导航过程所产生的其它辅助数据等;所述抽稀准则主要是根据 地理要素的重要程度,另外还可以根据各个层级所需要的数据量来确定。 经过这样的分层处理后,可以形成了 一个类似金字塔的地图数据序列, 序列中的每一层级都包含了全部地理范围中的地图数据,但是在数据量 上,这些地图数据是逐级递减的。
参考图2,示出了一种对应不同显示级别的地图数据的示意图,图中
的第0层对应显示比例最大的详细数据,其数据量最大,往左的显示比
例依次减小,数据量亦依次减少;图中的第2层对应显示比例最小的数 据,其数据量最小,从图中可以看出,每个显示级别所表示的是相同地 理范围的地图数据,只是显示比例尺的大小不同。
本发明实施例基于分层后的地图数据实现的目的在于,在通讯导航 终端的较小显示界面上显示较大的区域时,适应性地选择相应显示级别 的地图数据显示即可,从而避免由于数据量过多而导致用户识别不清的 情形。此外,所述显示级别所对应的显示比例尺优选为一个连续的序列, 从而保证各显示级别的数据在切换时不会产生太大的跳跃感。当然,本 发明实施例并不需要对所述地图数据分层的方法进行限定,并且,对于 设置所述显示级别的个数,由本领域技术人员根据实际需要相应设置即 可,本发明亦不作限定。
可以想到的是,由于所述分层处理后的地图数据的数据量仍旧较大, 无法在无线网络的条件下提供给用户实时下载,需要对这些经过分层处 理后的地图数据进行进一步地切分。因而在本发明实施例中,需要进一 步按照地图数据显示级别,对各显示级别下的地图数据块分别进行分块 处理。在实际中,所述分块优选以地理范围为依据,例如,按照相等显 示尺寸的规则网格(如,正方形)对各个显示级别的地图数据进行切分。其 中,所述规则网格的大小可以根据单个地图数据块文件所包含的数据量 及文件大小而定。此外,所述规则网格的地理跨度也应当与其相应的显 示级别相关,即不同的显示级别对应不同的跨度。并且,对于各个显示 级别的地图数据而言,其切割后的地图数据分块应当是相互邻接的。
以下通过举例对所述分块的方法进行详细说明
假设上一个显示级别levell的比例尺是下一个显示级别level2的n 倍,也就是说,在这种情况下,levell的地图数据详细于level2的地图数 据,因此,levell的数据量大于level2的数据量。
在这种情况下,分别对levell和level2的地图数据进行分块处理的过 程为按照相等显示尺寸的规则网格(如等大小的正方形)对各个显示级别 的地图数据进行划分。各个显示级别的网格在显示尺寸上是一致的。这 个显示尺寸对应的实际空间距离与显示级别相关。按照前述上一个显示
级别levell的比例尺是下一个显示级别level2的n倍的关系,可以得出, levell和level2的地图数据分别经过分块处理后,各个地图数据块的显示 尺寸大小相同。但是,levell的地图数据块所对应的实际空间距离是level2 的地图数据块所对应的实际空间距离的1/n。对于分块后的地图数据块文 件来说,如果使用正方形的规则网格,所以level2的地图数据块的空间 范围是levell的(nxn)倍。当n=2时,对地图数据分块的示意图如图3所 示。
可以理解的是,不同级别的地图数据块之间有如下关系每个显示 级別的地图数据块的大小为下一个显示级别的地图数据块的大小的nxn 倍;每个显示级别的地图数据块的空间范围等于下一个显示级别的nxn 个地图数据块的空间范围之和。因而,所述分块处理的过程可以看作是 对地图数据进行(nxn)叉剖分的过程。
为了满足通讯导航的需求,有效利用所述地图数据块,所述地图数 据块的大小需要保持在一定范围内,在本实施例中,优选为小于或等于 4K。这个大小范围可以通过控制每个地图数据块的显示大小(如,通讯导 航终端的显示象素大小)来实现。从而使用户可以在很短的时间间隔内或 零时间间隔内完成对地图数据块的下载,提高了导航处理的效率,并保 证了通讯导航的实时性。
为了提高数据的检索效率,优选的是,本发明实施例对于每个地图 数据块需要记录一个唯一的特征标识,这个特征标识由该地图数据块的 显示级别和位置信息生成,所述位置信息优选为经绊度坐标值。为使本 领域技术人员更好地理解本发明,以下以一种记录地图数据块的特征标 识的方法为例进行说明
(1) 标记每一个地图数据块的特征标识BlockID,其逻辑表达式为(x, y, level);
其中,x为经向的地图数据块的序号(即从经度O开始,向东第x块), y为纬向的地图数据块的序号(即从纬度O开始,向北第y块),level为地 图数据块的显示级别。在实际中,x, y也可以为负值,分别表示其正值 的反向,即向西和向南。
(2) 将上述数据以文件形式按照一定规则进行存储。
为了快捷、方便地查找到相应地图数据块,所述地图数据块的特征 标识与保存位置,应当和地图数据块所表示的地理位置以及所在的显示 级别之间存在某种对应关系,即通过某 一点的地理坐标值即可以计算出 该点所在的地理数据块的存放位置。
参考图4,示出了一种优选的地图数据块文件存储的结构示意图,其 中, 一级目录依据数据的种类不同设定,二级目录依据数据的显示级别 不同设定,文件散列中存放不同显示级别下的地图数据块文件,并且, 所述地图数据块文件的特征标识与其所表示的地理范围是可以相互转换
的。以下对这种转换进行举例说明
假设显示级别从leve10开始(leve10为数据最详细,数据量最大的一 层),leve10中每个地图数据块的长度所对应的实际经绰度跨度为d,特征 标识BlockID为^=0, y=0, level)的地图数据块表示其西南角的经炜度坐 标为(O, 0)。假设地图数据块为采用上述(nxn)叉剖分处理获得,则所述 BlockID对应的地图数据块的经炜度跨度为dxnlevel。在这种情况下,对于 BlockID(x, y, level),其对应的西南角经炜度坐标为(lat=xxdxnlevel, lng=yxdxnlevel);如果对应地理范围的经绵度坐标为(lat, lng),则对应地 图数据块的BlocklD为(x41at+(dxn'eve1)], y=[lng+(dxnleve1)], level)。
当然,上述存储地图数据块文件的方法仅限于举例,本领域技术人 员根据需要或经验选择任一种存储方法都是可行的,例如,对应所述(x, y, level)建立文件夹,即首先"t要照显示级别建立level文件夹,然后在每 个level文件夹下再根据x建立文件夹,再在每个x文件夹下根据y建立 文件夹。需要说明的是,为保证本发明实施例在实际中的应用,各地图 数据块应当分别存储于不同的地图数据块文件中,而不能以整个文件的 形式存储。通过应用本发明实施例,当用户需要数据时,不需要进行复 杂运算,即可根据所需要数据的地理位置,直接计算出相应的地图数据 块文件的存放位置,从而有效提高了通讯导航系统的数据处理效率。
在实际中,当采用网络传输所述地图数据块时,还可以根据特征标 识BlockID生成该地图数据块文件唯 一对应的网络地址,例如, http:〃relative—url/BlocklD,其中,relative—url是指地图数据块文件存放的 网绍^立置。
当然,本领域技术人员采用任一种方法记录所述地图数据块的特征 标识都是可行的,本发明对此不需要进行限定。
在实际中,通过获取通讯导航终端的显示界面任意两个对角位置的 坐标,例如,获取显示屏的左下角坐标和右上角坐标,即可确定当前显
示的坐标范围;根据该坐标范围,釆用现有技术中将显示界面的宽度与
所述坐标范围的宽度进行对比的方法或其它方法,即可得到当前显示的 显示级别。根据所述坐标范围和显示级别,即可计算出当前显示所需的 地图数据块的特征标识。
例如, 一种计算当前显示所需的特征标识的方法包括以下步骤
步骤Sl、确定通讯导航终端的显示界面当前需要坐标范围((latl, lngl), (lat2, lng2));
其中,(latl, lngl), (lat2, lng2)分别为显示界面的左下角坐标和右 上角坐标或任意两个对角点的坐标。
当然,本领域技术人员采用现有技术中的任一种确定坐标范围都是 可行的,本发明对此不需要进行限定。
步骤S2、根据上述坐标范围,计算出需要的显示级别;
例如,采用显示界面的宽度与上述显示范围的宽度进行对比运算, 得到显示比例尺,然后对应到相应的显示级别,记为level;
步骤S3、根据上述坐标范围和显示级别,计算出需要下载的地图数 据块;
例如,按照以下公式进行计算
xl=[latl+(dxnleve1)];
x2=[lat2+(dxnleve1)];
yl=[lngl+(dxnleve1)];
y2=[lng2+(dxnleve1)];
其中,dxnlevel为地图数据块的跨度。
步骤S4、确定所述地图it据块的特4i标识BlockID。
BlockID=((xl...x2), (yl…y2), level);
在本实施例中,取(xl…x2), (yl…y2)之间的所有组合。
此外,所述显示所需的特征标识也可以由本领域技术人员采用任一
种方法计算获得,本发明对此不作限制。
根据该获得的特征标识后,即可查找到对应的地图数据块,例如,
BlockID为(x二O, y=0, level)所对应的地图数据块即为显示级别为0,经 炜度坐标为(O, O)的地图数据块,从而可以实时完成对当前显示所需的地 图数据块的下载。
优选的是,本实施例还可以包括步骤将所述下载的地图数据块保 存至客户端。在本发明中,所述客户端为通讯导航终端。通过实时、小 部分地将地图数据块下载至客户端,可以有效提高地图数据块的显示效
至客户端的数据量的大小,可以由用户根据实际情况进行设置。
由于现有通讯导航终端的存储资源有限,因而优选的是,所述地图 数据块优选存储于服务器端,在这种情况下,本发明实施例还可以包括 步骤
判断客户端是否存在所述特征标识对应的地图数据块,如果是,则
直接从客户端读取所述地图数据块;如果否,则从服务器下载所述特征 标识对应的地图数据块。
在实际中,通过将计算得到的特征标识与客户端中已存在的特征标 识进行匹配,即可得知客户端是否已有相应的地图数据块,如果没有, 则通过无线网络从服务器端下栽该地图数据块,如果有,则直接将该地 图数据块提供给用户显示,以保证导航的实时性。
当然,本领域技术人员采用任一种下载的方法都是可行的,本发明 对此不需要进行限定。
在通讯导航中,并不是对于所有地区都需要详细的大比例尺的地图 数据,例如,在山区、森林、农村等地区,只需要很小比例尺的地图数 据就可以实现导航。为减少这种地区不必要的高精度数据下载,本发明 提出了另一实施例,参照图5,示出了本发明的一种地图数据的分块下载 方法实施例2的流程图,在本实施例中,将所述地图数据块分为实块和 虚块,在这种情况下,本实施例具体包括以下步骤
步骤501、将不同显示级别的地图数据分别切分成具有相应显示级别 信息的地图数据块;
步骤502、记录所述地图数据块的特征标识,所述特征标识为根据所 述地图数据块的显示级别和位置信息唯一生成; 步骤503、计算当前显示所需的特征标识;
步骤504a、如果所述特征标识对应的地图数据块为实块,则下载所 述实块;
步骤504b、如果所述特征标识对应的地图数据块为虚块,则根据所 述特征标识确定符合预置规则的实块,并下载所述实块。
在实际中,所述分块优选以地理范围为依据,例如,按照相等显示 尺寸的规则网格(如,正方形)对各个显示级别的地图数据进行切分。以下 通过举例对所述分块的方法进行详细说明
假设上一个显示级别levell的比例尺是下一个显示级别level2的n 倍,在这种情况下,按照相等显示尺寸的规则网格(如等大小的正方形) 对各个显示级别的地图数据进行划分。各个显示级别的网格在显示尺寸 上是一致的。这个显示尺寸对应的实际空间距离与显示级别相关。按照 前述上一个显示级别levdl的比例尺是下一个显示级别level2的n倍的关 系,可以得出,levell和level2的地图数据分别经过分块处理后,各个地 图数据块的显示尺寸大小相同。但是,levell的地图数据块所对应的实际 空间距离是leve12的地图数据块所对应的实际空间距离的1/n。对于分块 后的地图数据块文件来说,如果使用正方形的规则网格,所以level2的 地图数据块的空间范围是levell的nxn倍。由此可以得知,不同级别的 地图数据块之间有如下关系每个显示级别的地图数据块的大小为下一 个显示级别的地图数据块的大小的nxn倍;每个显示级别的地图数据块 的空间范围等于下一个显示级别的nxn个地图数据块的空间范围之和, 即nxn叉剖分。连续两个显示级别中的表示同一地理范围内的地图数据 块可以看作父子关系。在本例中,level2中的地图数据块为父块,levell 中的地图数据块为子块, 一个父块对应nxn个子块,在本实施例中,对 同一显示级别中具有相同父块的nxn个子块称为兄弟。
优选的是,为更有效地提高导航效率,本发明实施例对于诸如农村、 森林、山区等不需要高精度数据的地区导航可以设置叶子规则。在本实 施例中,对于实际存在的地图数据块称为实块,而将实际不存在的地图
数据块称为虚块,所述叶子规则是指,在某个父块所对应的子块都为虚 块,并且该父块对应实际存在的地图数据块时,该父块成为"叶子",即表 示没有进一步地分支,当计算得到当前显示所需的特征标识对应到不存 在的地图数据块(即虚块)时,则获取当前分支上的叶子,即对应的实块,
进行下载。对于父块BlockID(x, y, level),其对应的子块为(xxn + i, yxn + j, leve卜1);其中,i=(0, 1), j=(0, 1);对于子块BlockID(x, y, level), 其对应的父块为([x+n], [y+n], level+l)。例如,父块的BlockID为(1, 1, 1),在2x 叉剖分的情况下,其相应的子块为(2, 2, 0)、 (3, 2, 0)、 (2, 3, 0)和(3, 3, 0)。
可以理解的是,根据各子块之间关系,所述叶子规则还可以设置如 下定义
如果某个地图数据块为虚块,则它的兄弟(nxn-l)地图数据块均为虚 块,并且它们的所有子块也都是虚块;如果某个地图数据块是实块,则 它的兄弟(nxn-l)地图数据块均为实块。
在实际中,对于实块和虚块可以通过设置地图数据块的属性区别; 也可以针对地图数据块单独记录实块或虚块的信息;还可以采用现有技 术任一种方法进行区分,本发明对此不作限制。对于判断特征标识所对 应的地图数据块是否为实块或虚块的方法,可以通过判断所述特征标识 是否对应实际存在的地图数据块确定,也可以相应于前述区分实块和虚 块的方法确定,本发明对此亦不需要进行限定。
应用本发明实施例,当需要下载的地图数据块为实块时,则下载所 述实块;当需要下载的地图数据块为虚块时,则根据其特征标识计算出 具有上一显示级别和相应位置信息的父块的特征标识,如果该父块的特 征标识对应的地图数据块仍为虚块,则根据该父块的特征标识,继续计 算具有上一显示级别和相应位置信息的父块的特征标识,直至计算出对 应到实块的特征标识,才确定该实块为需要下载的地图数据块。
优选的是,本实施例还可以包括步骤将所述下载的地图数据块保 存至客户端。在本发明中,所述客户端为通讯导航终端。通过实时、小 部分地将地图数据块下载至客户端,可以有效提高地图数据块的显示效
至客户端的数据量的大小,可以由用户根据实际情况进行设置。
由于现有通讯导航终端的存储资源有限,因而优选的是,所述地图数 据块优选存储于服务器端,在这种情况下,本发明实施例还可以包括步
骤
判断客户端是否存在所述特征标识对应的地图数据块,如果是,则直 接从客户端读取所述地图数据块;如果否,则从服务器下载所述特征标 识对应的地图数据块。
在实际中,通过将计算得到的特征标识与客户端中已存在的特征标识 进行匹配,即可得知客户端是否已有相应的地图数据块,如果没有,则 通过无线网络从服务器端下载该地图数据块,如果有,则直接将该地图 数据块提供给用户显示,以保证导航的实时性。
当然,本领域技术人员采用任一种下载的方法都是可行的,本发明对 此不需要进行限定。
为使本领域技术人员更好地理解本发明,以下以在实际中应用本发 明的 一种实施例进行地图数据分块下载的过程为例进行说明
一、 获得如图2所示的经过分层后的地图数据,包括3个显示级别, 其中leve10为数据最详细的层,往上数据量依次减小。设其显示比例尺 的对应关系为leve10的比例尺是levell的2倍,levell的比例尺是level2 的两倍。
二、 按均等大小(指显示尺寸大小相等,在本例中设为100x100象素) 的正方形,分别进行(2x2)叉分块处理。分块后各个显示级别的地图数据 块的显示尺寸大小相同,但地图数据块所代表的实际距离,levell是leve10 的2倍,level2是levell的2倍。在这种情况下,设leve10的块宽度所代 表的实际宽度是d(经纬度跨度)。则区域左下角的经纬度为(O, 0),右上 角的经綷度为(8d, 8d)。对应levell的块实际宽度为dx2、2d,对应level2 的块实际宽度为dx22 = 4d。
三、 计算得到当前通讯导航终端需要显示的地理范围为((2.2d, 1.5d), (4.5d, 4.8d)),当前显示级别为levell,进行以下计算
xl=[2.2d "Kdx2,l; x2=[4.5d + (dx21)] =2;
yl=[1.5d+(dx2')]=l; y2=[4.8d + (dx2')]=2; BlockID=((1...2), (1...2), 1);
在本例中,取(1...2), (1...2)之间的所有组合,即得到需要下载的数 据块为(l, 1, 1), (1, 2, 1), (2, 1, 1), (2, 2, 1)。
四、 判断地图数据块(l, 1, l)为实块,并且在通讯导航终端中不存 在,则从服务器端将其下载到客户端中。
五、 依次对地图数据块(l, 2, 1), (2, 1, 1), (2, 2, l)进行上述操 作,完成地图数据地分块下载。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列 的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动 作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时 进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均 属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
此外,在上述方法实施例中,对各个实施例的描述都各有侧重,每个 实施例重点说明的都是与其他实施例的不同之处,某个实施例中没有详 述的部分,可以参见其他实施例的相关描述即可。并且,本领域:技术人 员易于想到的是上述实施例1和实施例2任意组合应用都是可行的, 故上述实施例1和实施例2之间的任意组合都是本发明的实施方案,但 是由于篇幅限制,本说明书在此就不——详述了。
参考图6,示出了本发明的一种地图数据的分块下载装置实施例1的 结构框图,具体包括以下模块
切分模块601:用于将不同显示级别的地图数据分别切分成具有相应 显示级别信息的地图数据块;
记录模块602:用于记录所述地图数据块的特征标识,所述特征标识 为根据所述地图数据块的显示级别和位置信息唯一生成;
计算模块603:用于计算当前显示所需的特征标识;
下载模块604:用于下载所述特征标识对应的地图数据块。
在通讯导航中,并不是对于所有地区都需要详细的大比例尺的地图 数据,例如,在山区、森林、农村等地区,只需要很小比例尺的地图数
据就可以实现导航。为减少这种地区不必要的高精度数据下载,在本实 施例中,将所述地图数据块分为实块和虚块,在这种情况下,所述下载
才莫块604可以包括以下单元
实块下载单元用于在所述特征标识对应的地图数据块为实块时, 下载所述实块;
虚块下载单元用于在所述特征标识对应的地图数据块为虚块时, 根据所述特征标识确定符合预置规则的实块,并触发实块下载单元,下 载所述实块。
优选的是,本实施例还可以包括保存模块605:用于将所述下载的地 图数据块保存至客户端。通过实时、小部分地将地图数据块下载至客户 端,可以有效提高地图数据块的显示效率,从而更有利于保证用户获得 导航服务的实时性体验,并且对于下载至客户端的数据量的大小,可以 由用户根据实际情况进行设置。
在这种情况下,本实施例优选还可以包括以下4莫块
判断模块用于判断客户端是否存在所述特征标识对应的地图数据 块,如果是,则触发读取模块;如果否,则触发下载模块,从服务器端 下载所述特征标识对应的地图数据块;
读取模块用于从客户端读取所述地图数据块。
在实际中,通过将计算得到的特征标识与客户端中已存在的特征标 识进行匹配,即可得知客户端是否已有相应的地图数据块,如果没有, 则通过无线网络从服务器端下载该地图数据块,如果有,则直接将该地 图数据块提供给用户显示,以保证导航的实时性。
参考图7,示出了应用图6所示的装置实施例进行地图数据分块下载 的流程图,具体包括以下步骤
步骤701、切分模块将不同显示级别的地图数据分別切分成具有相应 显示级别信息的地图数据块;
步骤702、记录模块记录所述地图数据块的特征标识,所述特征标识 为根据所述地图数据块的显示级别和位置信息唯一生成;
步骤703、计算模块计算当前显示所需的特征标识;
步骤704、判断模块判断客户端是否存在所述特征标识对应的地图数
据块,如果是,则执行步骤705;如果否,则执行步骤706; 步骤705、读取模块从客户端读取所述地图数据块; 步骤706、当所述特征标识对应的地图数据块为实块时,实块下载单 元下载所述实块;当所述特征标识对应的地图数据块为虚块时,虚块下 载单元根据所述特征标识确定符合预置规则的实块,并触发实块下载单
元下载所述实块;
步骤707、保存模块将所述下载的实块保存至客户端。
参考图8、示出了本发明的一种地图数据分块下载装置实施例2的结 构框图,所述装置在通讯导航系统中,所述通讯导航系统包括服务器和 客户端,所述的装置具体包括以下模块
位于服务器端的切分模块801:用于将不同显示级别的地图数据分别 切分成具有相应显示级别信息的地图数据块;
位于服务器端的记录模块802:用于记录所述地图数据块的特征标 识,所述特征标识为根据所述地图数据块的显示级别和位置信息唯一生 成;
位于客户端的计算模块803:用于计算当前显示所需的特征标识; 位于客户端的下载模块804:用于下载所述特征标识对应的地图数据块。
在本发明实施例中,各种导航服务由通讯导航系统提供,通讯导航 系统能够将现实世界以电子地图的形式显示给用户,并提供查询、定位、 监测等功能。所述通讯导航系统包括服务器和客户端,所述客户端为通 讯导航终端。参考图9,示出了一种通讯导航系统的结构示意图。通讯导 航终端与导航服务器采用无线通讯,通讯导航终端计算出需要显示的地 图数据块后,通过无线网络向导航服务器发出数据请求,导航服务器根 据该请求查找相应的地图数据块,通讯导航终端在需要的情况下进行下 载,用以进行导航运算和服务。导航是一个地域性很强的服务,尤其在 通讯导航中,每一次数据下载都直接关系到用户使用服务所需要支出费 用。因而,本发明实施例的另一优点在于,可以最大限度地减少数据的 下载流量,从而减少了服务所产生的费用,有效节约了用户成本。并且, 由于数据量小,减少了下载的等待时间,提高了导航系统的反应速度,
可以使用户获得更好的使用体验。
优选的是,在本实施例中,将所述地图数据块分为实块和虚块,在
这种情况下,所述客户端的下载模块804可以包括以下单元
实块下载单元用于在所述特征标识对应的地图数据块为实块时, 下载所述实块;
虚块下载单元用于在所述特征标识对应的地图数据块为虚块时, 根据所述特征标识确定符合预置规则的实块,并触发实块下载单元下载 所述实块。
优选的是,本实施例还可以包括客户端的保存模块805:用于将所述 下载的地图数据块保存至客户端。通过实时、小部分地将地图数据块下 载至客户端,可以有效提高地图数据块的显示效率,从而更有利于保证 用户获得导航服务的实时性体验,并且对于下载至客户端的数据量的大 小,可以由用户根据实际情况进行设置。
在这种情况下,本实施例优选还可以包括以下模块
客户端的判断模块用于判断客户端是否存在所述特征标识对应的地 图数据块,如果是,则触发读取模块;如果否,则触发下载模块,从服 务器端下载所述特征标识对应的地图数据块;
读取模块用于从客户端读取所述地图数据块。
在实际中,通过将计算得到的特征标识与客户端中已存在的特征标 识进行匹配,即可得知客户端是否已有相应的地图数据块,如果没有, 则通过无线网络从服务器端下载该地图数据块,如果有,则直接将该地 图数据块提供给用户显示,以保证导航的实时性。
对于系统实施例而言,由于其基本相应于方法实施例,所以描述的 比较简单,相关之处参见方法实施例的部分说明即可。本说明书中的各 个系统实施例均釆用递进的方式描述,各个系统实施例之间相同相似的 部分互相参见即可,每个系统实施例重点说明的都是与其它系统实施例 的不同之处。
需要指出的是,本领域技术人员易于想到上述系统实施例1和实 施例2任意组合应用都是可行的,故上述系统实施例1和实施例2之间 的任意组合都是本发明的实施方案,但是由于篇幅限制,本说明书在此
就不一一详述了 。
以上对本发明所提供的 一种地图数据的分块下载方法及地图数据的 分块下载装置进行了详细介绍,本文中应用了具体个例对本发明的原理 及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的 方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的 思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说 明书内容不应理解为对本发明的限制。
权利要求
1、一种地图数据的分块下载方法,其特征在于,包括将不同显示级别的地图数据分别切分成具有相应显示级别信息的地图数据块;记录所述地图数据块的特征标识,所述特征标识为根据所述地图数据块的显示级别和位置信息唯一生成;计算当前显示所需的特征标识;下载所述特征标识对应的地图数据块。
2、 如权利要求l所述的方法,其特征在于,所述地图数据块包括实 块和虚块,所述下载步骤包括如果所述特征标识对应的地图数据块为实块,则下载所述实块; 如果所述特征标识对应的地图数据块为虚块,则根据所述特征标识 确定符合预置规则的实块,并下载所述实块。
3、 如权利要求l或2所述的方法,其特征在于,还包括 将所述下载的地图数据块保存至客户端。
4、 如权利要求3所述的方法,其特征在于,所述地图数据块存储于 服务器端,所述的方法还包括判断客户端是否存在所述特征标识对应的地图数据块,如果是,则直接从客户端读取所述地图数据块;如果否,则从服务器下载所述特征标 识对应的地图数据块。
5、 如权利要求l所述的方法,其特征在于,所述各地图数据块的显 示尺寸大小均等。
6、 一种地图数据的分块下载装置,其特征在于,包括 切分模块用于将不同显示级别的地图数据分别切分成具有相应显示级别信息的地图数据块;记录才莫块用于记录所述地图数据块的特征标识,所述特征标识为根据所述地图数据块的显示级别和位置信息唯一生成; 计算模块用于计算当前显示所需的特征标识; 下载模块用于下载所述特征标识对应的地图数据块。
7、 如权利要求6所述的装置,其特征在于,所述切分模块和记录模 块位于服务器端;所述计算模块和下载模块位于客户端。
8、 如权利要求6或7所述的装置,其特征在于,所述地图数据块包 括实块和虚块,所述下载模块包括实块下载单元用于在所述特征标识对应的地图数据块为实块时, 下载所述实块;虚块下载单元用于在所述特征标识对应的地图数据块为虚块时, 根据所述特征标识确定符合预置规则的实块,并触发实块下载单元。
9、 如权利要求8所述的装置,其特征在于,还包括 保存模块用于将所述下载的地图数据块保存至客户端。
10、 如权利要求7所述的装置,其特征在于,还包括判断模块用于判断客户端是否存在所述特征标识对应的地图数据 块,如果是,则触发读取模块;如果否,则触发下载模块; 读取模块用于从客户端读取所述地图数据块。
全文摘要
本发明公开了一种地图数据的分块下载方法,包括将不同显示级别的地图数据分别切分成具有相应显示级别信息的地图数据块;记录所述地图数据块的特征标识,所述特征标识为根据所述地图数据块的显示级别和位置信息唯一生成;计算当前显示所需的特征标识;下载所述特征标识对应的地图数据块。本发明通过将不同显示级别的地图数据分别切分成具有相应显示级别信息的地图数据块,每个地图数据块的大小可以根据通讯导航的需要进行控制,以满足导航系统制图的需要和实时下载的流量需要,从而使通讯导航系统在较短时间间隔内或是零时间间隔内就完成需要的地理数据块的下载,有效保证了在无线网络条件下通讯导航的实时性。
文档编号G09B29/10GK101363734SQ200710120000
公开日2009年2月11日 申请日期2007年8月6日 优先权日2007年8月6日
发明者茳 孙, 孙亚夫, 丽 张, 谭宁生 申请人:北京灵图软件技术有限公司