CN107967664B - 一种电子地图路线绘制方法及装置 - Google Patents

一种电子地图路线绘制方法及装置 Download PDF

Info

Publication number
CN107967664B
CN107967664B CN201610912698.3A CN201610912698A CN107967664B CN 107967664 B CN107967664 B CN 107967664B CN 201610912698 A CN201610912698 A CN 201610912698A CN 107967664 B CN107967664 B CN 107967664B
Authority
CN
China
Prior art keywords
route
thread
analysis
data
drawn
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610912698.3A
Other languages
English (en)
Other versions
CN107967664A (zh
Inventor
李加武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Alibaba China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN201610912698.3A priority Critical patent/CN107967664B/zh
Publication of CN107967664A publication Critical patent/CN107967664A/zh
Application granted granted Critical
Publication of CN107967664B publication Critical patent/CN107967664B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Navigation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种路线绘制方法及装置,本申请针对过长的路线,由第一解析线程对路线的起始一段路线对应的路线数据进行解析,得到第一解析数据,并通过绘制线程利用第一解析数据进行路线绘制,绘制后可以第一时间进行显示,通过合理选取起始一段路线的长度可以保证第一解析线程不会响应超时,且减少用户等待时间。进一步,利用第二解析线程对剩余路线对应的路线数据进行解析,得到第二解析数据,第二解析数据由绘制线程进行绘制及显示,保证剩余路线也能够进行显示。

Description

一种电子地图路线绘制方法及装置
技术领域
本申请涉及地图绘制技术领域,更具体地说,涉及一种电子地图路线绘制方法及装置。
背景技术
电子地图客户端在收到用户的导航请求时,会计算导航路线,并获取导航路线对应的路线数据,路线数据包括路况数据、电子眼数据、红绿灯数据等。客户端获取到路线数据之后会进行解析,并利用解析数据进行路线绘制,最后进行显示。
现有技术在对路线数据进行解析、绘制时,通常是调用电子地图应用的主线程对整体路线数据进行解析,全部解析完毕后再利用解析数据进行路线绘制。当导航路线过长时,导航路线对应的路线数据量是巨大的,主线程对路线数据解析所要花费的时间将会大大延长。而现有操作系统对主线程的响应时间做了限制,最长响应时间不能超过5秒,否则操作系统会主动杀死该主线程。现有技术在对很长的导航路线进行绘制时,主线程解析路线数据的过程可能会超过操作系统限制的最长响应时间,从而导致路线数据解析失败,导航路线无法正常绘制。
发明内容
有鉴于此,本申请提供了一种电子地图路线绘制方法及装置,用于解决现有技术在绘制较长导航路线时,解析路线数据超时,导致路线绘制失败的问题。
为了实现上述目的,现提出的方案如下:
一种电子地图路线绘制方法,包括:
获取待绘制路线的路线数据;
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据,以及通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据;
通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
优选地,在通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析之前,还包括:
确定所述路线数据中包含的所述待绘制路线的长度是否超过第一设定长度阈值,若是,则执行所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析这一步骤。
优选地,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,包括:
通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析。
优选地,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,包括:
通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析;
或,
通过第一解析线程,对所述待绘制路线中前第二设定长度阈值的路线对应的路线数据进行解析,所述第二设定长度阈值不大于所述第一设定长度阈值。
优选地,所述通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示,包括:
通过绘制线程,利用所述第一解析数据绘制路线并显示,以及在利用所述第一解析数据绘制的路线的基础上,利用所述第二解析数据绘制路线并显示。
优选地,在所述通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析之前,该方法还包括:
将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线;
所述通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,包括:
通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析。
优选地,所述将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线,包括:
将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为设定条数的子路线;
或者,
以第三设定长度阈值为划分单位,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线。
优选地,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,包括:
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
优选地,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析,包括:
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
优选地,所述通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析,包括:
通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
优选地,所述通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析,包括:
通过操作系统的子线程,依次对每一所述子路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
优选地,所述第一解析线程为主线程,所述第二解析线程为子线程。
一种电子地图路线绘制装置,包括:
路线数据获取单元,用于获取待绘制路线的路线数据;
第一解析单元,用于通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据;
第二解析单元,用于通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据;
路线绘制单元,用于通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
优选地,还包括:
待绘制路线长度阈值比较单元,用于在所述第一解析单元通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析之前,确定所述路线数据中包含的所述待绘制路线的长度是否超过第一设定长度阈值,若是,则执行所述第一解析单元的步骤。
优选地,所述第一解析单元具体用于,通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析;或,通过第一解析线程,对所述待绘制路线中前第二设定长度阈值的路线对应的路线数据进行解析,所述第二设定长度阈值不大于所述第一设定长度阈值。
优选地,所述路线绘制单元具体用于,通过绘制线程,利用所述第一解析数据绘制路线并显示,以及在利用所述第一解析数据绘制的路线的基础上,利用所述第二解析数据绘制路线并显示。
优选地,还包括:
路线划分单元,用于在所述第二解析单元执行对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析的步骤之前,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线;
所述第二解析单元具体用于,通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析。
优选地,所述路线划分单元具体用于,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为设定条数的子路线;或者,以第三设定长度阈值为划分单位,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线。
优选地,所述第一解析单元具体用于,通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
优选地,所述第一解析单元具体用于,通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
优选地,所述第二解析单元具体用于,通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
优选地,所述第二解析单元具体用于,通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
优选地,所述第一解析线程为主线程,所述第二解析线程为子线程。
从上述的技术方案可以看出,本申请实施例提供的电子地图路线绘制方法,获取待绘制路线的路线数据;通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据;通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据;通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。由此可见,本申请针对过长的路线,可以通过第一解析线程对路线中起始一段的路线对应的路线数据进行解析,并通过第二解析线程对剩余的路线对应的路线数据进行解析,以及通过合理选取起始一段路线的长度,可以减少第一解析线程解析路线数据的时间,从而避免由于响应超时导致路线绘制失败。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种电子地图路线绘制方法流程图;
图2为本申请实施例公开的另一种电子地图路线绘制方法流程图;
图3为本申请实施例公开的又一种电子地图路线绘制方法流程图;
图4为本申请实施例公开的一种电子地图路线绘制装置结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请公开了一种路线绘制方案,应用于电子地图客户端,结合图1对本申请的电子地图路线绘制方法进行介绍。如图1所示,该方法包括:
步骤S100、获取待绘制路线的路线数据;
具体地,该待绘制路线可以是响应用户的导航请求所计算得到的路线。本步骤中,获取待绘制路线的路线数据,该路线数据可以是在电子地图客户端本地缓存的,也可以是电子地图客户端向后台服务器请求的。
路线数据包括绘制路线所需的各种对象数据,如路况数据、电子眼数据、红绿灯数据等。路线数据一般是以二进制数值格式进行存储。
进一步地,路线数据中可以包含有待绘制路线的长度。
步骤S110、通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据;
具体地,待绘制路线的起始一段路线可以根据需要而设定,如起始一段路线为待绘制路线的前设定比例长度的路线,如前1/3等。除此之外,起始一段路线还可以是,前设定长度的路线,如前200公里或其它数值。
步骤S120、通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据;
具体地,待绘制路线除去起始一段路线后剩余的路线对应的路线数据交由第二解析线程进行解析。其中,第二解析线程对该剩余路线的路线数据进行解析的过程,可以与第一解析线程进行路线数据解析的过程同时执行。
步骤S130、通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
具体地,第一解析线程解析得到第一解析数据之后传递给绘制线程,由绘制线程利用第一解析数据进行路线绘制及显示,保证能够快速进行路线显示。在此基础上,绘制线程在收到由第二解析线程解析得到的第二解析数据时,利用第二解析数据进行路线绘制及显示,保证剩余路线能够显示。
可选的,第二解析线程解析得到的第二解析数据可以直接传递给绘制线程。除此之外,第二解析线程还可以将第二解析数据传递给第一解析线程,由第一解析线程再传递给绘制线程。
一种可选的实施方式,第一解析线程可以是应用的主线程,第二解析线程可以是应用的子线程。绘制线程也可以是子线程,该子线程可以只负责路线绘制工作。
本申请实施例提供的电子地图路线绘制方法,获取待绘制路线的路线数据;通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据;通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据;通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。由此可见,本申请针对过长的路线,可以通过第一解析线程对路线中起始一段的路线对应的路线数据进行解析,得到第一解析数据,并通过绘制线程利用第一解析数据进行路线绘制,绘制后可以第一时间进行显示,通过合理选取起始一段路线的长度,可以保证第一解析线程不会响应超时,且减少用户等待时间。进一步,通过第二解析线程对剩余路线对应的路线数据进行解析,得到第二解析数据,第二解析数据由绘制线程进行绘制及显示,保证剩余路线也能够进行显示。
参见图2,图2为本申请实施例公开的另一种电子地图路线绘制方法流程图,如图2所示,该方法包括:
步骤S200、获取待绘制路线的路线数据;
路线数据包括绘制路线所需的各种对象数据,如路况数据、电子眼数据、红绿灯数据等。路线数据一般是以二进制数值格式进行存储。
进一步地,路线数据中可以包含有待绘制路线的长度。
步骤S210、确定所述路线数据中包含的所述待绘制路线的长度是否超过第一设定长度阈值,若是,则执行步骤S220;
具体地,通过路线数据可以获取待绘制路线的长度。本申请可以确定该待绘制路线的长度是否超过第一设定长度阈值。其中,第一设定长度阈值为工作人员设定的一个值,通过合理设置第一设定长度阈值可以保证第一解析线程对所述待绘制路线中前第一设定长度阈值的路线对应的路线数据进行解析时,不会出现响应超时的情况。
可选的,第一设定长度阈值可以是200公里或其它数值。
步骤S220、通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据;
具体地,在确定待绘制路线的长度超过第一设定长度阈值时,可以通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据。
可以理解的是,若确定待绘制路线的长度不超过第一设定长度阈值,则可以通过第一解析线程直接对待绘制路线对应的路线数据进行解析、绘制。
步骤S230、通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据;
具体地,待绘制路线除去起始一段路线后剩余的路线对应的路线数据交由第二解析线程进行解析。其中,第二解析线程对该剩余路线的路线数据进行解析的过程,可以与第一解析线程进行路线数据解析的过程同时执行。
步骤S240、通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
相比于上一实施例,本实施例中增加了对所述待绘制路线的长度是否超过第一设定长度阈值的确定步骤,且只有在确定待绘制路线的长度超过第一设定长度阈值时,由第一解析线程和第二解析线程配合完成对待绘制路线对应路线数据的解析工作。
可以理解的是,在本实施例中,在确定待绘制路线的长度超过第一设定长度阈值时执行的步骤S220,具体可以通过下述两种方式实现:
通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析;
或,
通过第一解析线程,对所述待绘制路线中前第二设定长度阈值的路线对应的路线数据进行解析,所述第二设定长度阈值不大于所述第一设定长度阈值。
一种可选的实施方式中,第二设定长度阈值可以与第一设定长度阈值相同。
参见图3,图3为本申请实施例公开的又一种电子地图路线绘制方法流程图,如图3所示,该方法包括:
步骤S300、获取待绘制路线的路线数据;
具体地,该待绘制路线可以是响应用户的导航请求所计算得到的路线。本步骤中,获取待绘制路线的路线数据,该路线数据可以是在电子地图客户端本地缓存的,也可以是电子地图客户端向后台服务器请求的。
路线数据包括绘制路线所需的各种对象数据,如路况数据、电子眼数据、红绿灯数据等。路线数据一般是以二进制数值格式进行存储。
进一步地,路线数据中可以包含有待绘制路线的长度。
步骤S310、通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据;
具体地,待绘制路线的起始一段路线可以根据需要而设定,如起始一段路线为待绘制路线的前设定比例长度的路线,如前1/3等。除此之外,起始一段路线还可以是,前设定长度的路线,如前200公里或其它数值。
步骤S320、将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线;
步骤S330、通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析,得到第二解析数据;
具体地,第二解析线程可以按照各个子路线的划分先后顺序,依次对各子路线进行解析,得到若干组第二解析数据。第二解析线程每解析得到一组第二解析数据时,可以立即将该组第二解析数据发送给绘制线程,或者发送给第一解析线程,由第一解析线程转发给绘制线程。
步骤S340、通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
具体地,第一解析线程解析得到第一解析数据之后传递给绘制线程,由绘制线程利用第一解析数据进行路线绘制及显示,保证能够快速进行路线显示。在此基础上,绘制线程在每收到由第二解析线程解析得到的一组第二解析数据时,利用该组第二解析数据进行路线绘制及显示,保证剩余路线能够依次进行显示。
其中,子路线对应的路线数据可以从获取的待绘制路线对应的路线数据中提取。
可选的,第二解析线程可以按照串行方式顺序对每一子路线对应的路线数据进行解析。
相比于上述实施例,本实施例中增加了对待绘制路线除去起始一段路线后剩余的路线进行子路线划分的过程,通过划分为若干子路线,以便第二解析线程可以依次对各子路线对应的路线数据进行解析,解析数据传递给绘制线程进行绘制,使得各个子路线可以逐次进行绘制显示,减少用户等待时间。
在本申请的又一个实施例中,对上述步骤S320,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线的过程进行介绍。
本实施例中介绍了两种可选的实施方式,分别如下:
第一种方式:
将所述待绘制路线除去所述起始一段路线后剩余的路线顺序划分为设定条数的子路线。
具体地,本申请实施例可以定义设定条数,如设定条数为4条。进一步,将待绘制路线除去所述起始一段路线后剩余的路线顺序划分为设定条数的子路线。
可选的,划分后的各条子路线的长度可以相同,也即均匀地将待绘制路线除去所述起始一段路线后剩余的路线划分为设定条数的子线路。
除此之外,各条子路线的长度还可以是不同的,如顺序划分后靠前的子路线的长度可以小于靠后的子路线的长度,以便第二解析线程首先对较短的子路线的路线数据进行解析,解析速度更快,从而使得绘制线程利用解析数据进行绘制的速度也更快,用户等待时间更短。
第二种方式:
以第三设定长度阈值为划分单位,将所述待绘制路线除去所述起始一段路线后剩余的路线顺序划分为若干子路线。
具体地,本申请可以预先定义第三设定长度阈值,如500公里等,以该第三设定长度阈值为划分单位,顺序从所述待绘制路线除去所述起始一段路线后剩余的路线中截取子线路,得到若干子线路。
本申请实施例中仅仅示例了两种可选的子路线划分方式,除此之外还可以选用其它划分策略,本申请不作严格限定。
在本申请的又一个实施例中,介绍了一种路线数据解析方法。
在介绍本实施例公开的路线数据解析方法之前,首先对现有路线数据解析方法进行介绍。
现有技术在对路线数据进行解析时,一般采用多次遍历的方式,每一次遍历路线数据,从中解析出一类对象数据。也即,路线数据的遍历次数与路线数据中包含的对象数据的种类相同。举例说明如下:
现有技术第一次遍历路线数据,从中解析出路况数据;第二次遍历路线数据,从中解析出电子眼数据;第三次遍历路线数据,从中解析出红绿灯数据……
现有技术多次遍历路线数据会导致性能开销增加,且增加了路线数据的解析时间。为此,本申请提供了另外一种路线数据遍历方式,即:
对路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
按照本申请的解析方式,通过一次遍历即可将路线数据中包含的各个对象数据全部解析出来,相比于现有技术大大减少了路线数据解析时间。
基于该种路线数据解析方式,上述步骤S310,通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析的过程,可以包括:
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
同理,上述通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析的过程,可以包括:
通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
进一步地,现有技术在对路线数据进行解析时,首先将路线数据中的对象数据解析为中间对象,进一步将中间对象解析为绘制线程中绘制接口所能识别的数据。其中,中间对象包含对对象数据的详细描述,其再次解析为绘制接口所能识别的数据的过程更加简单。但是,当待绘制路线很长时,对应的路线数据中包含的对象数据是海量的,每一对象数据都生成一中间对象,会导致内存消耗以及时间消耗。为此本申请提供了一种对象数据解析方法,即:
针对路线数据一次遍历过程所遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
基于该种对象数据解析方式,上述步骤S310的过程可以包括:
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
同理,上述通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析的过程可以包括:
通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
接下来本申请通过一个具体实例对本申请方案进行介绍:
规划一条从北京->拉萨的路线,长度为1000公里。
获取该规划路线对应的路线数据。
假设第一设定长度阈值等于第二设定长度阈值,且均为200公里。显然,该规划路线的长度大于200公里,因此将规划路线除去前200公里后剩余的路线均匀划分为4段子路线,分别为子路线1-4。
通过主线程对规划路线中前200公里的路线对应的路线数据进行解析,得到第一解析数据,并立即传递给绘制线程,由绘制线程利用第一解析数据进行路线绘制,进而显示。
通过子线程依次对子路线1-4对应的路线数据进行解析,每解析得到一条子路线的第二解析数据之后,传递给绘制线程,由绘制线程绘制对应的子线路。
其中,主线程和子线程在进行路线数据解析过程,对路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
下面对本申请实施例提供的电子地图路线绘制装置进行描述,下文描述的电子地图路线绘制装置与上文描述的电子地图路线绘制方法可相互对应参照。
参见图4,图4为本申请实施例公开的一种电子地图路线绘制装置结构示意图。
如图4所示,该装置包括:
路线数据获取单元41,用于获取待绘制路线的路线数据;
第一解析单元42,用于通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据;
第二解析单元43,用于通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据;
路线绘制单元44,用于通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
,本申请针对过长的路线,可以通过第一解析线程对路线中起始一段的路线对应的路线数据进行解析,得到第一解析数据,并通过绘制线程利用第一解析数据进行路线绘制,绘制后可以第一时间进行显示,通过合理选取起始一段路线的长度,可以保证第一解析线程不会响应超时,且减少用户等待时间。进一步,通过第二解析线程对剩余路线对应的路线数据进行解析,得到第二解析数据,第二解析数据由绘制线程进行绘制及显示,保证剩余路线也能够进行显示。
具体地,第一解析线程解析得到第一解析数据之后传递给绘制线程,由绘制线程利用第一解析数据进行路线绘制及显示,保证能够快速进行路线显示。在此基础上,绘制线程在收到由第二解析线程解析得到的第二解析数据时,利用第二解析数据进行路线绘制及显示,保证剩余路线能够显示。
可选的,第二解析线程解析得到的第二解析数据可以直接传递给绘制线程。除此之外,第二解析线程还可以将第二解析数据传递给第一解析线程,由第一解析线程再传递给绘制线程。
可选的,第一解析线程可以是应用的主线程,第二解析线程可以是应用的子线程。绘制线程也可以是子线程,该子线程可以只负责路线绘制工作。
可选的,本申请的装置还可以包括:
待绘制路线长度阈值比较单元,用于在所述第一解析单元通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析之前,确定所述路线数据中包含的所述待绘制路线的长度是否超过第一设定长度阈值,若是,则执行所述第一解析单元的步骤。
可选的,所述第一解析单元具体可以用于,通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析;或,通过第一解析线程,对所述待绘制路线中前第二设定长度阈值的路线对应的路线数据进行解析,所述第二设定长度阈值不大于所述第一设定长度阈值。
可选地,所述路线绘制单元具体用于,通过绘制线程,利用所述第一解析数据绘制路线并显示,以及在利用所述第一解析数据绘制的路线的基础上,利用所述第二解析数据绘制路线并显示。
可选的,本申请的装置还可以包括:
路线划分单元,用于在所述第二解析单元执行对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析的步骤之前,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线。
基于此,所述第二解析单元具体可以用于,通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析。
可选的,所述路线划分单元具体可以用于:
将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为设定条数的子路线;或者,以第三设定长度阈值为划分单位,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线。
可选的,所述第一解析单元具体可以用于,通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
可选的,所述第一解析单元具体可以用于,通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
可选的,所述第二解析单元具体可以用于,通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
可选的,所述第二解析单元具体可以用于,通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (14)

1.一种电子地图路线绘制方法,其特征在于,包括:
获取待绘制路线的路线数据;
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据,以及通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据,所述第一解析线程为主线程,所述第二解析线程为子线程;
通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
2.根据权利要求1所述的方法,其特征在于,在通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析之前,还包括:
确定所述路线数据中包含的所述待绘制路线的长度是否超过第一设定长度阈值,若是,则执行所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析这一步骤。
3.根据权利要求1所述的方法,其特征在于,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,包括:
通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析。
4.根据权利要求2所述的方法,其特征在于,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,包括:
通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析;
或,
通过第一解析线程,对所述待绘制路线中前第二设定长度阈值的路线对应的路线数据进行解析,所述第二设定长度阈值不大于所述第一设定长度阈值。
5.根据权利要求1所述的方法,其特征在于,所述通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示,包括:
通过绘制线程,利用所述第一解析数据绘制路线并显示,以及在利用所述第一解析数据绘制的路线的基础上,利用所述第二解析数据绘制路线并显示。
6.根据权利要求1所述的方法,其特征在于,在所述通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析之前,该方法还包括:
将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线;
所述通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,包括:
通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析。
7.根据权利要求6所述的方法,其特征在于,所述将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线,包括:
将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为设定条数的子路线;
或者,
以第三设定长度阈值为划分单位,将所述待绘制路线中除去所述起始一段路线后剩余的路线顺序划分为若干子路线。
8.根据权利要求1所述的方法,其特征在于,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,包括:
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
9.根据权利要求8所述的方法,其特征在于,所述通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析,包括:
通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
10.根据权利要求6所述的方法,其特征在于,所述通过第二解析线程,依次对每一所述子路线对应的路线数据进行解析,包括:
通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析。
11.根据权利要求10所述的方法,其特征在于,所述通过第二解析线程,依次对每一所述子路线对应的路线数据进行一次遍历,对遍历到的各对象数据依次进行解析,包括:
通过操作系统的子线程,依次对每一所述子路线对应的路线数据进行一次遍历,针对遍历到的各对象数据,将其直接解析为所述绘制线程中绘制接口所能识别的数据。
12.一种电子地图路线绘制装置,其特征在于,包括:
路线数据获取单元,用于获取待绘制路线的路线数据;
第一解析单元,用于通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析,得到第一解析数据,所述第一解析线程为主线程;
第二解析单元,用于通过第二解析线程,对所述待绘制路线中除去所述起始一段路线后剩余的路线对应的路线数据进行解析,得到第二解析数据,所述第二解析线程为子线程;
路线绘制单元,用于通过绘制线程,利用所述第一解析数据和所述第二解析数据绘制路线并显示。
13.根据权利要求12所述的装置,其特征在于,还包括:
待绘制路线长度阈值比较单元,用于在所述第一解析单元通过第一解析线程,对所述待绘制路线的起始一段路线对应的路线数据进行解析之前,确定所述路线数据中包含的所述待绘制路线的长度是否超过第一设定长度阈值,若是,则执行所述第一解析单元的步骤。
14.根据权利要求13所述的装置,其特征在于,所述第一解析单元具体用于,通过第一解析线程,对所述待绘制路线的前设定比例长度的路线对应的路线数据进行解析;或,通过第一解析线程,对所述待绘制路线中前第二设定长度阈值的路线对应的路线数据进行解析,所述第二设定长度阈值不大于所述第一设定长度阈值。
CN201610912698.3A 2016-10-19 2016-10-19 一种电子地图路线绘制方法及装置 Active CN107967664B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610912698.3A CN107967664B (zh) 2016-10-19 2016-10-19 一种电子地图路线绘制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610912698.3A CN107967664B (zh) 2016-10-19 2016-10-19 一种电子地图路线绘制方法及装置

Publications (2)

Publication Number Publication Date
CN107967664A CN107967664A (zh) 2018-04-27
CN107967664B true CN107967664B (zh) 2021-03-16

Family

ID=61996342

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610912698.3A Active CN107967664B (zh) 2016-10-19 2016-10-19 一种电子地图路线绘制方法及装置

Country Status (1)

Country Link
CN (1) CN107967664B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102235873A (zh) * 2010-04-21 2011-11-09 北京四维图新科技股份有限公司 导航电子地图的处理方法和装置、导航仪
US8374390B2 (en) * 2009-06-24 2013-02-12 Navteq B.V. Generating a graphic model of a geographic object and systems thereof
CN103036954A (zh) * 2012-12-03 2013-04-10 北京邮电大学 基于gis的移动信息聚合系统及其方法
CN103759735A (zh) * 2014-01-06 2014-04-30 公安部沈阳消防所 面向消防车辆的导航系统
CN104142935A (zh) * 2013-05-07 2014-11-12 北京四维图新科技股份有限公司 动态瓦片地图的获取方法与装置
CN104596521A (zh) * 2014-03-14 2015-05-06 腾讯科技(深圳)有限公司 一种路线信息的显示方法及装置
US9244940B1 (en) * 2013-09-27 2016-01-26 Google Inc. Navigation paths for panorama
CN105788338A (zh) * 2014-12-26 2016-07-20 北京奇虎科技有限公司 一种交互式智能gps
CN105910612A (zh) * 2015-12-29 2016-08-31 乐视网信息技术(北京)股份有限公司 一种个性化导航的方法及系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8374390B2 (en) * 2009-06-24 2013-02-12 Navteq B.V. Generating a graphic model of a geographic object and systems thereof
CN102235873A (zh) * 2010-04-21 2011-11-09 北京四维图新科技股份有限公司 导航电子地图的处理方法和装置、导航仪
CN103036954A (zh) * 2012-12-03 2013-04-10 北京邮电大学 基于gis的移动信息聚合系统及其方法
CN104142935A (zh) * 2013-05-07 2014-11-12 北京四维图新科技股份有限公司 动态瓦片地图的获取方法与装置
US9244940B1 (en) * 2013-09-27 2016-01-26 Google Inc. Navigation paths for panorama
CN103759735A (zh) * 2014-01-06 2014-04-30 公安部沈阳消防所 面向消防车辆的导航系统
CN104596521A (zh) * 2014-03-14 2015-05-06 腾讯科技(深圳)有限公司 一种路线信息的显示方法及装置
CN105788338A (zh) * 2014-12-26 2016-07-20 北京奇虎科技有限公司 一种交互式智能gps
CN105910612A (zh) * 2015-12-29 2016-08-31 乐视网信息技术(北京)股份有限公司 一种个性化导航的方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
车载导航系统路径引导模块分析;张毅;《万方数据库》;20100119;全文 *

Also Published As

Publication number Publication date
CN107967664A (zh) 2018-04-27

Similar Documents

Publication Publication Date Title
CN107195190B (zh) 一种路况信息分享系统
RU2018121960A (ru) Интерактивная телематическая система
US20190018859A1 (en) Information providing system, information providing method, and non-transitory recording medium
EP2648106A1 (en) Method and web content management system for A/B testing or multivariate testing of websites on computers being connected to a web content management system
US9705772B2 (en) Identification apparatus, identification method and identification program
CN109144697B (zh) 一种任务调度方法、装置、电子设备及存储介质
US20190301884A1 (en) Computer-implemented method for recommending booths-to-visit
KR101712592B1 (ko) 프로그램
KR20130082848A (ko) 어플리케이션 추천 방법 및 장치
CN107967664B (zh) 一种电子地图路线绘制方法及装置
CN108763374B (zh) 一种行驶路径展示方法、装置及设备
CN110542425B (zh) 导航路径选择方法、导航装置、计算机设备及可读介质
JP2015088005A (ja) 画像配信システム、方法およびプログラム
KR101905739B1 (ko) 실시간 지도데이터 업데이트 관리를 위한 장치 및 그의 실시간 지도데이터 업데이트 관리 방법
CN112150666A (zh) 确定道路拥堵原因的方法、装置、电子设备及存储介质
EP3189512A1 (en) Methods and systems for generating flow data
CN115239375A (zh) 一种基于大数据广告投放方法、装置及系统
CN110543436B (zh) 一种机器人的数据获取方法及装置
US20210221384A1 (en) System and method for evaluating recorded vehicle operation data
CN111159196A (zh) 基于分片的区块链数据存储、获取方法及装置
US20170131989A1 (en) Installation interface presentation method and apparatus
CN111314268B (zh) 一种数据包分析方法及装置
KR101836852B1 (ko) 이미지 기반의 웹/앱 서비스 사용자 체감 성능 측정 방법 및 시스템
CN110706065A (zh) 订单处理方法及装置、信息显示方法及装置和电子设备
JP4501561B2 (ja) ナビゲーション装置、ナビゲーションシステム、及びナビゲーション装置における表示制御方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200507

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: Alibaba (China) Co.,Ltd.

Address before: 100080 Beijing City, Haidian District Suzhou Street No. 3 floor 16 room 2

Applicant before: AUTONAVI INFORMATION TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant