一种地图平滑移动的方法及装置的制作方法

文档序号:2649723阅读:212来源:国知局
专利名称:一种地图平滑移动的方法及装置的制作方法
技术领域
本发明涉及导航领域,尤其涉及一种地图平滑移动的方法及装置。
背景技术
在现有的导航技术中,显示界面上显示的地图随着当前位置的变化而发生移动, 现有技术中地图平滑移动有多种实现方式,例如,地图被拖动的过程中不绘制,拖动停止后,再获取显示界面上地图对应的数据,重新绘制地图;或者地图在拖动的过程中,实时加载数据。但是,现有技术中的地图平滑移动的技术效果不是很好,由于是在地图停止拖动之后再对地图进行更新或者是实时加载数据,使得在地图被拖动的过程中存在时间差或数据加载时间较长,显示界面数据更新慢,时延长,效率不高,不能很好的实现地图的平滑移动,不能满足用户的需求。

发明内容
本发明实施例提供了一种地图平滑移动的方法及装置,用于实现地图的平滑移动。本发明实施例的方法包括在地图被移动过程中,实时获取当前显示界面上需要绘制的地图的范围;判断需要绘制的地图的范围是否在预置的参考位图中,参考位图为缓存的已绘制的地图;若需要绘制的地图的范围完全在参考位图中,则将需要绘制的地图在参考位图中的对应部分显示在当前显示界面上;若需要绘制的地图的范围不在参考位图中,判断需要绘制的地图对应的数据是否缓存在数据缓存区中,数据缓存区包含已显示过的不在参考位图中的地图对应的数据;若需要绘制的地图对应的数据缓存在数据缓存区中,则从数据缓存区中获取需要绘制的对图对应的数据;根据获取到的数据在当前显示界面上显示对应的地图。本发明实施例的装置包括获取单元,用于在地图被移动过程中,实时获取当前显示界面上需要绘制的地图的范围;第一判断单元,用于判断需要绘制的地图的范围是否在预置的参考位图中,参考位图为缓存的已绘制的地图;第一显示单元,用于若需要绘制的地图的范围完全在参考位图中,则将需要绘制的地图在参考位图中的对应部分显示在当前显示界面上;第二判断单元,用于若需要绘制的地图的范围不在参考位图中,判断需要绘制的地图对应的数据是否缓存在数据缓存区中,数据缓存区包含已显示过的不在参考位图中的地图对应的数据;数据获取单元,用于若需要绘制的地图对应的数据缓存在数据缓存区中, 从数据缓存区中获取需要绘制的对图对应的数据;第二显示单元,用于根据获取到的数据在当前显示界面上显示对应的地图。从以上技术方案可以看出,本发明实施例具有以下优点通过使用缓存的已绘制的参考位图,使得当需要绘制的地图在参考位图中时,可直接将需要绘制的对图在参考位图中对应的部分显示在当前显示界面上,不需要进行地图数据的加载及绘制,能够有效的缩短地图显示的时间,使得地图能够平滑的移动。同时,当需要绘制的地图不在参考位图中时,通过利用数据缓存区中缓存的数据绘制地图能够有效的避免数据加载,缩短地图显示的时间,实现地图的平滑移动。


图1为本发明实施例一种地图平滑移动的方法的一个示意图;图2为本发明实施例一种地图平滑移动的方法的另一示意图;图3为本发明实施例一种地图平滑移动的方法的另一示意图;图4为本发明实施例一种地图平滑移动的装置的一个示意图;图5为本发明实施例一种地图平滑移动的装置的另一示意图。
具体实施例方式本发明实施例提供了一种地图平滑移动的方法及装置,用于导航系统中地图的显示,使得地图能够平滑移动。请参阅图1,为本发明实施例一种地图平滑移动的方法的实施例,包括101、实时获取当前显示界面上需要绘制的地图的范围;在地图被移动过程中,系统将实时的获取当前显示界面上需要绘制的地图的范围。102、判断需要绘制的地图的范围是否在预置的参考位图中,若是,则执行步骤 103,若否,则执行步骤104;在本发明实施例中,系统将预置参考位图,参考位图是以位图形式存在的已绘制的地图,且参考位图缓存在系统中,在使用时不需要对进行数据的加载及地图的绘制。系统获取需要绘制的地图的范围之后,将判断获取到的需要绘制的地图的范围是否在预置的参考位图中。103、将需要绘制的地图在参考位图中的对应部分显示在当前显示界面上;当需要绘制的地图的范围完全在参考位图中时,则可从参考位图对应的缓存区中获取当前显示界面需要显示的地图对应的部分,并将获取到的部分显示在当前显示界面上。104、判断需要绘制的地图对应的数据是否缓存在数据缓存区中,当需要绘制的地图对应的数据缓存在数据缓存区中时,执行步骤105 ;当需要绘制的地图的范围不在参考位图中时,系统为了确定获取用于绘制地图的数据的方式将进一步判断需要绘制的地图对应的数据是否缓存在数据缓存区中。105、从数据缓存区中获取需要绘制的地图对应的数据;在本发明实施例中,数据缓存区中缓存了已经使用过的数据,具体为,已经在显示界面上显示的不在参考位图中的地图对应的数据,通过利用数据缓存区缓存已使用过的数据,可以避免地图绘制之前对数据的加载。106、根据获取到的数据在当前显示界面上显示对应的地图。系统获取到不在参考位图中的需要绘制的地图对应的数据之后,将根据获取到的数据绘制当前显示界面对应的地图,并将绘制的地图显示在当前显示界面上。
通过使用缓存的已绘制的参考位图,使得当需要绘制的地图在参考位图中时,可直接将需要绘制的对图在参考位图中对应的部分显示在当前显示界面上,不需要进行地图数据的加载及绘制,能够有效的缩短地图显示的时间,使得地图能够平滑的移动。同时,当需要绘制的地图不在参考位图中时,通过利用数据缓存区中缓存的数据绘制地图能够有效的避免数据加载,缩短地图显示的时间,实现地图的平滑移动。为了更好的理解技术,请参阅图2,为本发明实施例一种地图平滑移动的方法的实施例,包括201、实时获取当前显示界面上需要绘制的地图的范围;用户在使用导航系统时,将根据需要拖动地图,使得地图发生移动,或者导航系统的显示界面将根据导航装置的移动方向,实时的改变当前显示界面上显示的地图,例如汽车导航系统中,显示界面将根据用户所处的位置实时的更新显示界面上的地图,因此系统将实时的进行地图的绘制。在本发明实施例中,地图在移动的过程中,系统将实时的获取当前显示界面上需要绘制的地图的范围。202、判断需要绘制的地图的范围是否在预置的参考位图中,若是,则执行步骤 203,若否,则执行步骤204 ;用户在使用导航系统时,多数时候地图变化的范围不会太大,因此系统可预置参考位图并将参考位图进行缓存,其中,参考位图的面积至少为当前显示界面的屏幕面积的 2倍,需要说明的是,在实际应用中,用户可以根据需要自行选择设置参考位图的面积大小, 当用户没有设置参考位图的大小时,将使用系统默认的参考位图的大小。在本发明实施了中,系统获取到需要绘制的地图的范围之后,将判断需要绘制的地图的范围是否在预置的参考位图中,以确定需要绘制的地图的获取方式。203、将需要绘制的地图在参考位图中的对应部分显示在当前显示界面上;参考位图为经缓存的已绘制的地图,当需要绘制的地图在参考位图中时,可从参考位图中获取需要绘制的地图对应的部分,将需要绘制的地图对应的部分显示在当前显示界面上。204、判断需要绘制的地图对应的数据是否缓存在数据缓存区中,若是则执行步骤 205,若否,则执行步骤206 ;步骤204与图1实施例所示的步骤104描述的内容相同,此处不再赘述。205、从数据缓存区中获取需要绘制的对图对应的数据;步骤205与图1实施例所示的步骤105描述的内容相同,此处不再赘述。206、加载需要绘制的地图对应的数据;当需要绘制的地图对应的数据没有缓存在数据缓存区中时,系统将加载需要绘制的地图对应的数据。207、解析获取到的数据得到对应的定长数据及变长数据;系统通过从数据缓存区获得需要绘制的地图对应的数据,或者加载需要绘制的地图对应的数据之后,将解析获取到的数据得到对应的定长数据及变长数据。在本发明实施例中,数据缓存区采用二级缓存机制,且数据缓存区中缓存的数据包包括已显示过的未在参考位图中的地图对应的数据,通过数据进行缓存,使得地图在绘制过程中不需要每次都加载数据。其中,数据分为定长数据及变长数据,且数据在使用之前系统已经进行了切割,使得数据包含定长数据和变长数据,定长数据是指在利用数据绘制地图时数据使用的结构体的长度是固定的,例如路段数据中包含的端点坐标,形状点坐标及个数可称为定长数据,定长数据的结构体的大小是固定的,不变的,变长数据是指在利用数据绘制地图时数据使用的结构体的长度是可以变化的,例如路段数据中包含的道路名称为变长数据,数据包中定长数据和变长数据将以指针偏移的形式建立关联,在使用数据包时,获取到定长数据之后,可根据指针偏移的偏移量获取到对应的变长数据,通过将数据包切割为定长数据及变长数据,可以使得在地图绘制的过程中,使用的无用数据变少,加快地图绘制的速度。需要说明的是,在本发明实施例中,定长数据还可以包含其他数据信息,例如建筑物的坐标地址,变长数据也可以包含其他的数据信息,例如建筑物的名称,在本发明实施例中,数据包中的定长数据和变长数据包含的数据信息视具体的情况而定,此处不做限定。208、根据解析得到的数据绘制并显示当前显示界面上对应的地图。系统对获取到的数据进行解析得到定长数据及变长数据之后,将根据解析后的数据绘制当前显示界面对应的地图,并将绘制的地图显示在当前显示界面上。在本发明实施例中,在进入下一显示界之前,系统将当前显示界面上不在参考位图中的地图对应的数据缓存到数据缓存区中,以备以后使用。通过使用缓存的已绘制的参考位图,使得当需要绘制的地图在参考位图中时,可直接将需要绘制的对图在参考位图中对应的部分显示在当前显示界面上,不需要进行地图数据的加载及绘制,能够有效的缩短地图显示的时间,使得地图能够平滑的移动。同时,当需要绘制的地图不在参考位图中时,通过利用数据缓存区中缓存的数据绘制地图能够有效的避免数据加载,且缓存的数据包含定长数据和变长数据,定长数据与变长数据已指针偏移的方式进行关联,能够有效的缩短地图显示的时间,实现地图的平滑移动。在本发明实施例中,图1及图2所示的实施例描述了需要绘制的地图完全在参考位图中及不在参考位图中的情况,在实际应用中,还可能存在另一种情况,即需要绘制的地图部分在参考位图中,且部分不在参考位图中,请参阅图3,为本发明实施例一种地图平滑移动的方法的另一实施例,包括301、将需要绘制的地图的范围划分为超出区域及未超出区域;本发明实施例以需要绘制的地图部分在参考位图中,且部分不在参考位图中为前提说明地图实现平滑移动的方式。在这种情况下,系统将所需要绘制的地图的范围划分为超出区域及未超出区域,其中,超出区域指的是不在参考位图的范围之内的区域,未超出区域指的是在参考位图的范围之内的区域。系统通过对需要绘制的地图的范围进行划分可按不同的处理方式进行处理。302、判断超出区域对应的数据是否缓存在数据缓存区中,若是,则执行步骤303, 若否,则执行步骤304;数据缓存区中缓存了已显示过的不在参考位图范围内的地图对应的数据,系统获得需要绘制的地图的超出区域之后,将判断超出区域对应的数据是否缓存在数据缓存区中。303、从数据缓存区中获取所述超出区域对应的数据,继续执行步骤306 ;
当超出区域对应的数据在数据缓存区中时,可从数据缓存区中获取对应的数据, 有效避免数据的加载。304、加载超出区域对应的数据;当超出区域对应的数据不在数据缓存区中时,系统将加载超出区域对应的数据包。305、根据获取到的超出区域对应的数据绘制超出区域的地图;系统通过从数据缓存区中获取超出区域对应的数据,或者通过加载超出区域对应的数据之后,将根据获取到的超出区域对应的数据绘制超出区域对应的地图,在本发明实施例中,从数据缓存区获取的数据包含定长数据及变长数据,在地图绘制之前,需要对数据进行解析得到定长数据和变长数据,再利用定长数据及变长数据进行地图绘制得到超出区域对应的地图。306、将超出区域的地图及未超出区域在参考位图中对应的部分显示在当前显示界面上。在本发明实施例中,未超出区域对应的地图可从参考位图中获取,因此,系统绘制超出区域对应的地图之后,将超出区域的地图及未超出区域在参考位图中对应的部分显示在当前显示界面上,实现地图的显示。在本发明实施例中,通过利用参考位图和数据缓存区实现地图的显示,且缓存区中的数据包含定长数据及变长数据,使得地图显示的时间缩短,实现地图的平滑移动。请参阅图4,为本发明实施例一种地图平滑移动的装置的实施例,包括获取单元401,用于在地图被移动过程中,实时获取当前显示界面上需要绘制的地图的范围;第一判断单元402,用于判断需要绘制的地图的范围是否在预置的参考位图中,参考位图为缓存的已绘制的地图;第一显示单元403,用于若需要绘制的地图的范围完全在参考位图中,则将需要绘制的地图在参考位图中的对应部分显示在当前显示界面上;第二判断单元404,用于若需要绘制的地图的范围不在参考位图中,判断需要绘制的地图对应的数据是否缓存在数据缓存区中,数据缓存区包含已显示过的不在参考位图中的地图对应的数据;数据获取单元405,用于若需要绘制的地图对应的数据缓存在数据缓存区中,从数据缓存区中获取需要绘制的对图对应的数据;第二显示单元406,用于根据获取到的数据在当前显示界面上显示对应的地图。在本发明实施例中,装置还包括数据加载单元407,若需要绘制的地图对应的数据没有缓存在数据缓存区中,重新加载需要绘制的地图对应的数据。在本发明实施例中,在地图被移动过程中,获取单元401将实时获取当前显示界面上需要绘制的地图的范围,接着第一判断单元402将判断需要绘制的地图的范围是否在预置的参考位图中,若需要绘制的地图的范围完全在参考位图中,第一显示单元403则将需要绘制的地图在参考位图中的对应部分显示在当前显示界面上;若需要绘制的地图的范围不在参考位图中,第二判断单元404将判断需要绘制的地图对应的数据是否缓存在数据缓存区中,若需要绘制的地图对应的数据缓存在数据缓存区中,数据获取单元405从数据缓存区中获取需要绘制的对图对应的数据,若需要绘制的地图对应的数据没有缓存在数据缓存区中,数据加载单元407将加载需要绘制的地图对应的数据,系统获取到数据之后,第二显示单元406将根据获取到的数据在当前显示界面上显示对应的地图。在本发明实施例中,图4所示实施例的装置是用于当需要绘制的地图在参考位图中及不在参考位图中的两种情况,在实际应用中,还存在另一种情况,即需要绘制的地图部分在参考位图中,请参阅图5,为本发明实施例一种地图平滑移动的另一装置实施例,包括划分单元501,用于当需要绘制的地图的范围的一部分在参考位图中,则将需要绘制的地图的范围划分为超出区域及未超出区域;第三判断单元502,判断超出区域对应的数据是否缓存在数据缓存区中;获取单元503,用于当超出区域对应的数据缓存在数据缓存区中时,则从数据缓存区中获取超出区域对应的数据;加载单元504,用于当超出区域对应的数据没有缓存在数据缓存区中时,则加载超出区域对应的数据;绘制单元505,用于根据获取到的超出区域对应的数据绘制超出区域的地图;第三显示单元506,用于将超出区域的地图及所述未超出区域在参考位图中对应的部分显示在当前显示界面上。在本发明实施例中,当需要绘制的地图的范围的一部分在参考位图中,划分单元 501将需要绘制的地图的范围划分为超出区域及未超出区域,第三判断单元502将判断超出区域对应的数据是否缓存在数据缓存区中,当超出区域对应的数据缓存在数据缓存区中时,获取单元503将从数据缓存区中获取超出区域对应的数据,当超出区域对应的数据没有缓存在数据缓存区中时,加载单元504将加载超出区域对应的数据,绘制单元505将根据获取到的超出区域对应的数据绘制超出区域的地图,最后,第三显示单元506将超出区域的地图及所述未超出区域在参考位图中对应的部分显示在当前显示界面上。通过使用缓存的已绘制的参考位图,使得当需要绘制的地图在参考位图中时,可直接将需要绘制的对图在参考位图中对应的部分显示在当前显示界面上,不需要进行地图数据的加载及绘制,能够有效的缩短地图显示的时间,使得地图能够平滑的移动。同时,当需要绘制的地图不在参考位图中时,通过利用数据缓存区中缓存的数据绘制地图能够有效的避免数据加载,且缓存的数据包含定长数据和变长数据,定长数据与变长数据已指针偏移的方式进行关联,能够有效的缩短地图显示的时间,实现地图的平滑移动。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上对本发明所提供的一种地图平滑移动的方法及装置进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种地图平滑移动的方法,其特征在于,包括在地图被移动过程中,实时获取当前显示界面上需要绘制的地图的范围; 判断所述需要绘制的地图的范围是否在预置的参考位图中,所述参考位图为缓存的已绘制的地图;若所述需要绘制的地图的范围完全在所述参考位图中,则将所述需要绘制的地图在所述参考位图中的对应部分显示在当前显示界面上;若所述需要绘制的地图的范围不在所述参考位图中,则判断所述需要绘制的地图对应的数据是否缓存在数据缓存区中,所述数据缓存区包含已显示过的不在所述参考位图中的地图对应的数据;当所述需要绘制的地图对应的数据缓存在所述数据缓存区中时,则从所述数据缓存区中获取所述需要绘制的对图对应的数据;根据获取到的数据在当前显示界面上显示对应的地图。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括若所述需要绘制的地图对应的数据没有缓存在所述数据缓存区中,则加载所述需要绘制的地图对应的数据。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括;当所述需要绘制的地图的范围的一部分在所述参考位图中,则将所述需要绘制的地图的范围划分为超出区域及未超出区域;判断所述超出区域对应的数据是否缓存在所述数据缓存区中; 若是,则从所述数据缓存区中获取所述超出区域对应的数据; 若否,则加载所述超出区域对应的数据; 根据获取到的所述超出区域对应的数据绘制超出区域的地图; 将所述超出区域的地图及所述未超出区域在所述参考位图中对应的部分显示在当前显示界面上。
4.根据权利要求1所述的方法,其特征在于,所述参考位图的面积至少为当前显示界面的屏幕面积的2倍,所述数据缓存区采用二级缓存机制,所述数据缓存区中的数据含定长数据和变长数据,所述定长数据通过指针偏移的形式与所述变长数据关联。
5.根据权利要求1所述的方法,其特征在于,所述根据获取到的数据在当前显示界面上显示对应的地图包括解析获取到的数据得到对应的定长数据及变长数据; 根据解析得到的数据绘制并显示当前显示界面上对应的地图。
6.根据权利要求4或5所述的方法,其特征在于,所述定长数据包含路段的端点坐标, 形状点坐标及形状点个数,变长数据含路段的道路名称。
7.根据权利要求1至5任意一项所述的方法,其特征在于,所述方法还包括 将所述加载的数据保存到所述数据缓存区中。
8.—种地图平滑移动的装置,其特征在于,包括获取单元,用于在地图被移动过程中,实时获取当前显示界面上需要绘制的地图的范围;第一判断单元,用于判断所述需要绘制的地图的范围是否在预置的参考位图中,所述参考位图为缓存的已绘制的地图;第一显示单元,用于若所述需要绘制的地图的范围完全在所述参考位图中,则将所述需要绘制的地图在所述参考位图中的对应部分显示在当前显示界面上;第二判断单元,用于若所述需要绘制的地图的范围不在所述参考位图中,判断所述需要绘制的地图对应的数据是否缓存在数据缓存区中,所述数据缓存区包含已显示过的不在所述参考位图中的地图对应的数据;数据获取单元,用于当所述需要绘制的地图对应的数据缓存在所述数据缓存区中时, 从所述数据缓存区中获取所述需要绘制的对图对应的数据;第二显示单元,用于根据获取到的数据在当前显示界面上显示对应的地图。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括数据加载单元,用于若所述需要绘制的地图对应的数据没有缓存在所述数据缓存区中,加载所述需要绘制的地图对应的数据。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括划分单元,用于当所述需要绘制的地图的范围的一部分在所述参考位图中,则将所述需要绘制的地图的范围划分为超出区域及未超出区域;第三判断单元,判断所述超出区域对应的数据是否缓存在所述数据缓存区中; 获取单元,用于当所述超出区域对应的数据缓存在所述数据缓存区中时,则从所述数据缓存区中获取所述超出区域对应的数据;加载单元,用于当所述超出区域对应的数据没有缓存在所述数据缓存区中时,则加载所述超出区域对应的数据;绘制单元,用于根据获取到的所述超出区域对应的数据绘制超出区域的地图; 第三显示单元,用于将所述超出区域的地图及所述未超出区域在所述参考位图中对应的部分显示在当前显示界面上。
全文摘要
本发明实施例公开了一种地图平滑移动的方法及装置,用于实现地图的平滑移动。本发明实施例方法包括实时获取当前显示界面上需要绘制的地图的范围;判断需要绘制的地图的范围是否在预置的参考位图中;若需要绘制的地图的范围完全在参考位图中,则将需要绘制的地图在参考位图中的对应部分显示在当前显示界面上;若需要绘制的地图的范围不在参考位图中,判断需要绘制的地图对应的数据是否缓存在数据缓存区中;若需要绘制的地图对应的数据缓存在数据缓存区中,则从数据缓存区中获取需要绘制的对图对应的数据;根据获取到的数据在当前显示界面上显示对应的地图。本发明实施例还包括与方法对应的装置,能够有效地实现地图的平滑移动。
文档编号G09B29/00GK102542903SQ201010616249
公开日2012年7月4日 申请日期2010年12月30日 优先权日2010年12月30日
发明者王军 申请人:上海博泰悦臻电子设备制造有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1