CN109947890A - 地图实时轨迹的绘制动画实现方法以及装置 - Google Patents

地图实时轨迹的绘制动画实现方法以及装置 Download PDF

Info

Publication number
CN109947890A
CN109947890A CN201910235450.1A CN201910235450A CN109947890A CN 109947890 A CN109947890 A CN 109947890A CN 201910235450 A CN201910235450 A CN 201910235450A CN 109947890 A CN109947890 A CN 109947890A
Authority
CN
China
Prior art keywords
latitude
longitude coordinates
track
drafting
last time
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.)
Pending
Application number
CN201910235450.1A
Other languages
English (en)
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.)
Chongqing Carzo Technology Co Ltd
Original Assignee
Chongqing Carzo Technology 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 Chongqing Carzo Technology Co Ltd filed Critical Chongqing Carzo Technology Co Ltd
Priority to CN201910235450.1A priority Critical patent/CN109947890A/zh
Publication of CN109947890A publication Critical patent/CN109947890A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

本发明公开了一种地图实时轨迹的绘制动画实现方法以及装置,所述方法包括:获取本次需要绘制轨迹点的数据包、本次时间、上次绘制轨迹点的数据包及上次时间,其中,所述本次需要绘制轨迹点的数据包包括本次的经纬度坐标,所述上次绘制轨迹点的数据包包括上次的经纬度坐标;根据本次时间和上次时间得到时间间隔;判断所述时间间隔是否大于或等于预设的绘制轨迹时长的默认值;若大于则视为上一次绘制轨迹动画被延迟执行,选择预设的小于默认值的较小值;若小于或等于则本次的绘制轨迹的时长等于所述预设的绘制轨迹时长的默认值;根据本次绘制轨迹的时长、本次的经纬度坐标、上次的经纬度坐标绘制轨迹动画;待本次绘制完成后,保存本次绘制轨迹的值。

Description

地图实时轨迹的绘制动画实现方法以及装置
技术领域
本发明涉及一种地图实时轨迹的绘制动画实现方法以及装置。
背景技术
现在的地图软件里,实时绘制轨迹路线大多为静态绘制,人们在通过地图软件导航时,地图轨迹的动态展示经常产生“顿挫”感。例如当人们自驾进行导航时,地图软件里车辆所在的位置在前一时刻可能还在地图软件界面中的A坐标位置,但下一时刻可能就跳动到离A坐标位置较远的B坐标位置,这种跳动式的轨迹绘制动画不够顺畅,给人们带来非常不好的视觉体验,降低人们的使用感和体验度。
发明内容
针对上述现有技术的不足,本发明所要解决的技术问题是:提供一种在轨迹绘制时降低“顿挫”感的地图实时轨迹的绘制动画实现方法以及装置。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种地图实时轨迹的绘制动画实现方法,包括以下步骤:
获取本次需要绘制轨迹点的数据包、本次时间RTC、上次绘制轨迹点的数据包以及上次时间RTL,其中,所述本次需要绘制轨迹点的数据包包括本次的经纬度坐标GPSC(x,y),所述上次绘制轨迹点的数据包包括上次的经纬度坐标GPSL(x,y);
根据本次时间RTC和上次时间RTL得到时间间隔n;
判断所述时间间隔n是否大于或等于预设的绘制轨迹时长的默认值TR;
若所述时间间隔n大于预设的绘制轨迹时长的默认值TR,则视为上一次绘制轨迹动画被延迟执行,选择预设的小于所述默认值TR的较小值minT,以使得本次绘制轨迹的时长TR等于所述预设的较小值minT;
若所述时间间隔n小于或等于预设的绘制轨迹时长的默认值TR,则所述本次的绘制轨迹的时长TR等于所述预设的绘制轨迹时长的默认值TR;
根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画;
待本次绘制完成后,保存本次绘制轨迹的值。
进一步的,在根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画的过程中,具体通过以下方式绘制轨迹动画:
在本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间预设M个插值点,所述M个插值点将所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)等分成M+1个段;
获取本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ;
根据方位角θ、本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D;
根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM);
根据所述上次的经纬度坐标GPSL(x,y)、M个插值点以及本次的上次的经纬度坐标GPSC(x,y)(x,y)得到每相邻两个插值点的绘制轨迹的时长为TR’=TR/(M+1);
根据所述每相邻两个点的绘制轨迹的时长TR’,依次绘制上次的经纬度坐标GPSL(x,y)到插值点GPS(x0,y0)的轨迹、插值点GPS(x0,y0)到插值点GPS(x1,y1)的轨迹、……、插值点GPS(xM,yM)到本次的经纬度坐标GPSC(x,y)的轨迹。
进一步的,所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ通过以下公式获得:
θ=arccos(cos(90-GPSCw)×cos(90-GPSLw)+sin(90-GPSCw)×sin(90-GPSLw)×cos(GPSCj-GPSLj)) (一)
式(一)中,GPSCw表示本次的经纬度坐标的纬度,GPSLw表示上次的经纬度坐标的纬度,GPSCj表示本次的经纬度坐标的经度,GPSLj表示上次的经纬度坐标的经度。
进一步的,在根据本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D的步骤中,具体通过以下公式得到所述距离D:
L=R*(θ÷180*π) (二)
式(二)中,R为地球的半径,π为圆周率。
进一步的,在根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别
得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM)的步骤中,具体通过以下公式得到每一个插值点的经纬度坐标:
θN=θ÷(M+1) (三)
式(三)中,θN为第N个插值点与上次的经纬度坐标GPSL(x,y)的方位角,其中,N小于等于M;
a=arccos(cos(90-GPSLw)×cos(θ)+sin(90-GPSLw)×sin(θ)×cos(θN)) (四)
式(四)中,a为第N个插值点的纬度变量值,相对于90度;
C=arcsin(sin(θ)×sin(θN)÷sin(a)) (五)
式(五)中,C为第N个插值点的经度变量值,相对于上次的经纬度坐标的经度GPSLj。
XNj=GPSLj+C (六)
式(六)中,所述XNj为第N个插值点的经度;
XNw=90-a (七)
式(七)中,所述XNw为N个插值点的纬度。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种地图实时轨迹的绘制动画实现装置,包括:
第一获取模块,用于本次需要绘制轨迹点的数据包以及上次绘制轨迹点的数据包,其中,所述本次需要绘制轨迹点的数据包包括本次的经纬度坐标GPSC(x,y)以及本次时间RTC,所述上次绘制轨迹点的数据包包括上次的经纬度坐标GPSL(x,y)以及上次时间RTL;;
时间间隔计算模块,用于根据本次时间RTC和上次时间RTL得到时间间隔n;
判断模块,用于判断所述时间间隔n是否大于或等于预设的绘制轨迹时长的默认值TR;
绘制轨迹时长确定模块,用于当所述判断模块判断得到所述时间间隔n大于预设的绘制轨迹时长的默认值TR,则视为上一次绘制动画被延迟执行,选择预设的较小值minT,以使得本次绘制轨迹的时长TR等于所述预设的较小值minT;还用于当所述判断模块判断得到所述时间间隔n小于或等于预设的绘制轨迹时长的默认值TR,则所述本次的绘制轨迹的时长TR等于所述预设的绘制轨迹时长的默认值TR;
轨迹动画绘制模块,用于根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画;
保存模块,用于待本次绘制完成后,保存本次请求的值,以使得GPSL(x,y)=GPSC(x,y),PL=PC,RTL=RTC。
进一步的,所述轨迹动画绘制模块包括:
插值点预设模块,用于在本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间预设M个插值点,所述M个插值点将所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)等分成M+1个段;
第二获取模块,用于获取本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ;
第三获取模块,用于根据方位角θ、本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D;
插值点经纬坐标获取模块,用于根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM);
相邻两插值点绘制轨迹的时长获取模块,用于根据所述上次的经纬度坐标GPSL(x,y)、M个插值点以及本次的上次的经纬度坐标GPSC(x,y)(x,y)得到每相邻两个插值点的绘制轨迹的时长为TR’=TR/(M+1);
轨迹动画绘制子模块,用于根据所述每相邻两个点的绘制轨迹的时长TR’,依次绘制上次的经纬度坐标GPSL(x,y)到插值点GPS(x0,y0)的轨迹、插值点GPS(x0,y0)到插值点GPS(x1,y1)的轨迹、……、插值点GPS(xM,yM)到本次的经纬度坐标GPSC(x,y)的轨迹。
进一步的,所述插值点经纬坐标获取模块还用于通过以下公式获取所述方位角θ:
θ=arccos(cos(90-GPSCw)×cos(90-GPSLw)+sin(90-GPSCw)×sin(90-GPSLw)×cos(GPSCj-GPSLj)),其中,GPSCw表示本次的经纬度坐标的纬度,GPSLw表示上次的经纬度坐标的纬度,GPSCj表示本次的经纬度坐标的经度,GPSLj表示上次的经纬度坐标的经度。
进一步的,所述第二获取模块还用于通过以下公式得到所述距离D:
L=R*(θ÷180*π),其中,R为地球的半径,π为圆周率。
10、如权利要求6所述的地图实时轨迹的绘制动画实现装置,其特征在于,所述插值点经纬坐标获取模块还用于通过以下公式得到每一个插值点的经纬度坐标:
θN=θ÷(M+1),其中,θN为第N个插值点与上次的经纬度坐标GPSL(x,y)的方位角,其中,N小于等于M;
a=arccos(cos(90-GPSLw)×cos(θ)+sin(90-GPSLw)×sin(θ)×cos(θN)),其中,a为第N个插值点的纬度变量值,相对于90度;
C=arcsin(sin(θ)×sin(θN)÷sin(a)),其中,C为第N个插值点的经度变量值,相对于上次的经纬度坐标的经度GPSLj。
XNj=GPSLj+C,其中,所述XNj为第N个插值点的经度;
XNw=90-a,其中,所述XNw为N个插值点的纬度。
本发明的地图实时轨迹的绘制动画实现方法以及装置,一方面,不像现在技术那样一味的采用绘制轨迹时长的默认值,而是巧妙地在每一次绘制之前均通过时间间隔与绘制轨迹时长的默认值进行判断,轨迹绘制的动画延迟和实际数据绘制上报的间隔可以纠正,极大的降低了现有软件中轨迹动画展示的“卡顿”现象。另一方面,在地图绘制轨迹时,利用插值细分的方式,算出插值坐标点,用细微动画变化到达整体轨迹动画绘制效果,根据定义插值个数,计算出距离比较接近的GPS插值点,利用少距离的移动,来达到总体轨迹绘制的动画实现。通过以上两个方面可以实现轨迹绘制的渐动效果,提高人们的使用感和体验感,提高人们的满意度。
附图说明
图1是本发明地图实时轨迹的绘制动画实现方法一实施例的流程图。
图2是本发明地图实时轨迹的绘制动画实现方法中绘制算法解析图。
图3是本发明地图实时轨迹的绘制动画实现装置一实施例的方框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1及图2,本发明地图实时轨迹的绘制动画实现方法包括以下步骤:
S101、获取本次需要绘制轨迹点的数据包以及上次绘制轨迹点的数据包,其中,所述本次需要绘制轨迹点的数据包包括本次的经纬度坐标GPSC(x,y)以及本次时间RTC,所述上次绘制轨迹点的数据包包括上次的经纬度坐标GPSL(x,y)以及上次时间RTL;
本步骤中,所述上次需要绘制轨迹点的数据是从上一次绘制轨迹完成后保存的值中获取得到。所述本次需要绘制轨迹点的数据包通过以下子步骤获取:
S1011、开始从网络请求数据;本步骤可以是任何具有地图软件的电子设备通过WIFI、2G、3G、4G、5G等等无线网络向GPS定位***请求需要绘制本次轨迹点数据包需求的请求数据。
S1022、记录当前请求时间RTC(即所述本次时间RTC);
S1033、网络请求返回本次需要绘制的轨迹点数据包,所述包括本次的经纬度坐标GPSC(x,y)。
S102、根据本次时间RTC和上次时间RTL得到时间间隔n;
S103、判断所述时间间隔n是否大于或等于预设的绘制轨迹时长的默认值TR;
S104、若所述时间间隔n大于预设的绘制轨迹时长的默认值TR,则视为上一次绘制轨迹动画被延迟执行,选择预设的小于所述默认值TR的较小值minT,以使得本次绘制轨迹的时长TR等于所述预设的较小值minT;
S105、若所述时间间隔n小于或等于预设的绘制轨迹时长的默认值TR,则所述本次的绘制轨迹的时长TR等于所述预设的绘制轨迹时长的默认值TR;
S106、根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画;
作为优选的或可选的,本步骤包括以下子步骤:
S1061、在本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间预设M个插值点,所述M个插值点将所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)等分成M+1个段;
S1062、获取本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ;作为优选的或可选的,所述方位角θ通过以下公式获得:
θ=arccos(cos(90-GPSCw)×cos(90-GPSLw)+sin(90-GPSCw)×sin(90-GPSLw)×cos(GPSCj-GPSLj)) (一)
式(一)中,GPSCw表示本次的经纬度坐标的纬度,GPSLw表示上次的经纬度坐标的纬度,GPSCj表示本次的经纬度坐标的经度,GPSLj表示上次的经纬度坐标的经度。
S1063、根据方位角θ、本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D;作为优选的或可选的,通过以下公式得到所述距离D:
L=R*(θ÷180*π) (二)
式(二)中,R为地球的半径,π为圆周率。
S1064、根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM);作为优选的或可选的,通过以下公式得到每一个插值点的经纬度坐标:
θN=θ÷(M+1) (三)
式(三)中,θN为第N个插值点与上次的经纬度坐标GPSL(x,y)的方位角,其中,N小于等于M;
a=arccos(cos(90-GPSLw)×cos(θ)+sin(90-GPSLw)×sin(θ)×cos(θN)) (四)
式(四)中,a为第N个插值点的纬度变量值,相对于90度;
C=arcsin(sin(θ)×sin(θN)÷sin(a)) (五)
式(五)中,C为第N个插值点的经度变量值,相对于上次的经纬度坐标的经度GPSLj。
XNj=GPSLj+C (六)
式(六)中,所述XNj为第N个插值点的经度;
XNw=90-a (七)
式(七)中,所述XNw为N个插值点的纬度。
S1065、根据所述上次的经纬度坐标GPSL(x,y)、M个插值点以及本次的上次的经纬度坐标GPSC(x,y)(x,y)得到每相邻两个插值点的绘制轨迹的时长为TR’=TR/(M+1);
S1066、根据所述每相邻两个点的绘制轨迹的时长TR’,依次绘制上次的经纬度坐标GPSL(x,y)到插值点GPS(x0,y0)的轨迹、插值点GPS(x0,y0)到插值点GPS(x1,y1)的轨迹、……、插值点GPS(xM,yM)到本次的经纬度坐标GPSC(x,y)的轨迹。
S107、待本次绘制完成后,保存本次绘制轨迹的值,以使得GPSL(x,y)=GPSC(x,y),RTL=RTC。
本方案中,每隔一预定间就向网络请求数据。即,本方案还包括:
S108、等待预定时间TR后,再次执行S101步骤,直至本次导航的轨迹绘制完成。
本发明实施方式,在请求时记录本次的请求时间,本将请求时间与存储的上次的请求时间求得时间差,根据时间差与默认值进行比对以判断上次绘制轨迹动画被延迟执行,从而来调整绘制时长,减少而各种配置的设备的延时问题,极大地降低了地图软件中轨迹动画“卡顿”现象。进一步的,通过上述方法绘制轨迹动画,在每一条轨迹中***若干个插值点,将每一条轨迹细分为若干个段进行绘制,使得轨迹动画更流畅的展示于用户面前,提高用户的体验感、满意度。
请参见图3,图3为本发明地图实时轨迹的绘制动画实现装置一实施例的方框图。本实施例的地图实时轨迹的绘制动画实现装置包括:
第一获取模块101,用于本次需要绘制轨迹点的数据包以及上次绘制轨迹点的数据包,其中,所述本次需要绘制轨迹点的数据包包括本次的经纬度坐标GPSC(x,y)以及本次时间RTC,所述上次绘制轨迹点的数据包包括上次的经纬度坐标GPSL(x,y)以及上次时间RTL。
时间间隔计算模块102,用于根据本次时间RTC和上次时间RTL得到时间间隔n。
判断模块103,用于判断所述时间间隔n是否大于或等于预设的绘制轨迹时长的默认值TR。
绘制轨迹时长确定模块104,用于当所述判断模块103判断得到所述时间间隔n大于预设的绘制轨迹时长的默认值TR,则视为上一次绘制动画被延迟执行,选择预设的较小值minT,以使得本次绘制轨迹的时长TR等于所述预设的较小值minT;还用于当所述判断模块103判断得到所述时间间隔n小于或等于预设的绘制轨迹时长的默认值TR,则所述本次的绘制轨迹的时长TR等于所述预设的绘制轨迹时长的默认值TR。
轨迹动画绘制模块105,用于根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画。
其中,所述轨迹动画绘制模块105包括插值点预设模块1051、第二获取模块1052、第三获取模块1053、插值点经纬坐标获取模块1054、相邻两插值点绘制轨迹的时长获取模块1055以及轨迹动画绘制子模块1056。
所述插值点预设模块1051用于在本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间预设M个插值点,所述M个插值点将所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)等分成M+1个段;
所述第二获取模块1052,用于获取本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ;其中,所述第二获取模块1052还用于通过以下公式获取所述方位角θ:
θ=arccos(cos(90-GPSCw)×cos(90-GPSLw)+sin(90-GPSCw)×sin(90-GPSLw)×cos(GPSCj-GPSLj)),其中,GPSCw表示本次的经纬度坐标的纬度,GPSLw表示上次的经纬度坐标的纬度,GPSCj表示本次的经纬度坐标的经度,GPSLj表示上次的经纬度坐标的经度。
第三获取模块1053,用于根据方位角θ、本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D;所述第三获取模块1053还用于通过以下公式得到所述距离D:
L=R*(θ÷180*π),其中,R为地球的半径,π为圆周率。
所述插值点经纬坐标获取模块1054,用于根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM)。
所述插值点经纬坐标获取模块1054还用于通过以下公式得到每一个插值点的经纬度坐标:
θN=θ÷(M+1),其中,θN为第N个插值点与上次的经纬度坐标GPSL(x,y)的方位角,其中,N小于等于M;
a=arccos(cos(90-GPSLw)×cos(θ)+sin(90-GPSLw)×sin(θ)×cos(θN)),其中,a为第N个插值点的纬度变量值,相对于90度;
C=arcsin(sin(θ)×sin(θN)÷sin(a)),其中,C为第N个插值点的经度变量值,相对于上次的经纬度坐标的经度GPSLj。
XNj=GPSLj+C,其中,所述XNj为第N个插值点的经度;
XNw=90-a,其中,所述XNw为N个插值点的纬度。
所述相邻两插值点绘制轨迹的时长获取模块1055用于根据所述上次的经纬度坐标GPSL(x,y)、M个插值点以及本次的上次的经纬度坐标GPSC(x,y)(x,y)得到每相邻两个插值点的绘制轨迹的时长为TR’=TR/(M+1);
所述轨迹动画绘制子模块1056用于根据所述每相邻两个点的绘制轨迹的时长TR’,依次绘制上次的经纬度坐标GPSL(x,y)到插值点GPS(x0,y0)的轨迹、插值点GPS(x0,y0)到插值点GPS(x1,y1)的轨迹、……、插值点GPS(xM,yM)到本次的经纬度坐标GPSC(x,y)的轨迹。
以及保存模块106,用于待本次绘制完成后,保存本次请求的值,以使得GPSL(x,y)=GPSC(x,y),PL=PC,RTL=RTC。
以上仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种地图实时轨迹的绘制动画实现方法,包括以下步骤:
获取本次需要绘制轨迹点的数据包、本次时间RTC、上次绘制轨迹点的数据包以及上次时间RTL,其中,所述本次需要绘制轨迹点的数据包包括本次的经纬度坐标GPSC(x,y),所述上次绘制轨迹点的数据包包括上次的经纬度坐标GPSL(x,y);
根据本次时间RTC和上次时间RTL得到时间间隔n;
判断所述时间间隔n是否大于或等于预设的绘制轨迹时长的默认值TR;
若所述时间间隔n大于预设的绘制轨迹时长的默认值TR,则视为上一次绘制轨迹动画被延迟执行,选择预设的小于所述默认值TR的较小值minT,以使得本次绘制轨迹的时长TR等于所述预设的较小值minT;
若所述时间间隔n小于或等于预设的绘制轨迹时长的默认值TR,则所述本次的绘制轨迹的时长TR等于所述预设的绘制轨迹时长的默认值TR;
根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画;
待本次绘制完成后,保存本次绘制轨迹的值。
2.如权利要求1所述的地图实时轨迹的绘制动画实现方法,其特征在于,在根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画的过程中,具体通过以下方式绘制轨迹动画:
在本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间预设M个插值点,所述M个插值点将所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)等分成M+1个段;
获取本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ;
根据方位角θ、本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D;
根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM);
根据所述上次的经纬度坐标GPSL(x,y)、M个插值点以及本次的上次的经纬度坐标GPSC(x,y)(x,y)得到每相邻两个插值点的绘制轨迹的时长为TR’=TR/(M+1);
根据所述每相邻两个点的绘制轨迹的时长TR’,依次绘制上次的经纬度坐标GPSL(x,y)到插值点GPS(x0,y0)的轨迹、插值点GPS(x0,y0)到插值点GPS(x1,y1)的轨迹、……、插值点GPS(xM,yM)到本次的经纬度坐标GPSC(x,y)的轨迹。
3.如权利要求2所述的地图实时轨迹的绘制动画实现方法,其特征在于,所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ通过以下公式获得:
θ=arccos(cos(90-GPSCw)×cos(90-GPSLw)+sin(90-GPSCw)×sin(90-GPSLw)×cos(GPSCj-GPSLj)) (一)
式(一)中,GPSCw表示本次的经纬度坐标的纬度,GPSLw表示上次的经纬度坐标的纬度,GPSCj表示本次的经纬度坐标的经度,GPSLj表示上次的经纬度坐标的经度。
4.如权利要求2所述的地图实时轨迹的绘制动画实现方法,其特征在于,在根据本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D的步骤中,具体通过以下公式得到所述距离D:
L=R*(θ÷180*π) (二)
式(二)中,R为地球的半径,π为圆周率。
5.如权利要求2所述的地图实时轨迹的绘制动画实现方法,其特征在于,在根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM)的步骤中,具体通过以下公式得到每一个插值点的经纬度坐标:
θN=θ÷(M+1) (三)
式(三)中,θN为第N个插值点与上次的经纬度坐标GPSL(x,y)的方位角,其中,N小于等于M;
a=arccos(cos(90-GPSLw)×cos(θ)+sin(90-GPSLw)×sin(θ)×cos(θN)) (四)
式(四)中,a为第N个插值点的纬度变量值,相对于90度;
C=arcsin(sin(θ)×sin(θN)÷sin(a)) (五)
式(五)中,C为第N个插值点的经度变量值,相对于上次的经纬度坐标的经度GPSLj。
XNj=GPSLj+C (六)
式(六)中,所述XNj为第N个插值点的经度;
XNw=90-a (七)
式(七)中,所述XNw为N个插值点的纬度。
6.一种地图实时轨迹的绘制动画实现装置,包括:
第一获取模块,用于本次需要绘制轨迹点的数据包以及上次绘制轨迹点的数据包,其中,所述本次需要绘制轨迹点的数据包包括本次的经纬度坐标GPSC(x,y)以及本次时间RTC,所述上次绘制轨迹点的数据包包括上次的经纬度坐标GPSL(x,y)以及上次时间RTL;;
时间间隔计算模块,用于根据本次时间RTC和上次时间RTL得到时间间隔n;
判断模块,用于判断所述时间间隔n是否大于或等于预设的绘制轨迹时长的默认值TR;
绘制轨迹时长确定模块,用于当所述判断模块判断得到所述时间间隔n大于预设的绘制轨迹时长的默认值TR,则视为上一次绘制动画被延迟执行,选择预设的较小值minT,以使得本次绘制轨迹的时长TR等于所述预设的较小值minT;还用于当所述判断模块判断得到所述时间间隔n小于或等于预设的绘制轨迹时长的默认值TR,则所述本次的绘制轨迹的时长TR等于所述预设的绘制轨迹时长的默认值TR;
轨迹动画绘制模块,用于根据所述本次绘制轨迹的时长TR、本次的经纬度坐标GPSC(x,y)、上次的经纬度坐标GPSL(x,y)绘制轨迹动画;
保存模块,用于待本次绘制完成后,保存本次请求的值,以使得GPSL(x,y)=GPSC(x,y),PL=PC,RTL=RTC。
7.如权利要求6所述的地图实时轨迹的绘制动画实现装置,其特征在于,所述轨迹动画绘制模块包括:
插值点预设模块,用于在本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间预设M个插值点,所述M个插值点将所述本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)等分成M+1个段;
第二获取模块,用于获取本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)的方位角θ;
第三获取模块,用于根据方位角θ、本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)得到该两经纬度坐标点之间的距离D;
插值点经纬坐标获取模块,用于根据所述方位角θ、所述距离D以及上次的经纬度坐标GPSL(x,y)分别得到预设于本次的经纬度坐标GPSC(x,y)和上次的经纬度坐标GPSL(x,y)之间的M个插值点的经纬度坐标GPS(x0,y0)、GPS(x1,y1)、……、GPS(xM,yM);
相邻两插值点绘制轨迹的时长获取模块,用于根据所述上次的经纬度坐标GPSL(x,y)、M个插值点以及本次的上次的经纬度坐标GPSC(x,y)(x,y)得到每相邻两个插值点的绘制轨迹的时长为TR’=TR/(M+1);
轨迹动画绘制子模块,用于根据所述每相邻两个点的绘制轨迹的时长TR’,依次绘制上次的经纬度坐标GPSL(x,y)到插值点GPS(x0,y0)的轨迹、插值点GPS(x0,y0)到插值点GPS(x1,y1)的轨迹、……、插值点GPS(xM,yM)到本次的经纬度坐标GPSC(x,y)的轨迹。
8.如权利要求6所述的地图实时轨迹的绘制动画实现装置,其特征在于,所述插值点经纬坐标获取模块还用于通过以下公式获取所述方位角θ:
θ=arccos(cos(90-GPSCw)×cos(90-GPSLw)+sin(90-GPSCw)×sin(90-GPSLw)×cos(G PSCj-GPSLj)),其中,GPSCw表示本次的经纬度坐标的纬度,GPSLw表示上次的经纬度坐标的纬度,GPSCj表示本次的经纬度坐标的经度,GPSLj表示上次的经纬度坐标的经度。
9.如权利要求6所述的地图实时轨迹的绘制动画实现装置,其特征在于,所述第二获取模块还用于通过以下公式得到所述距离D:
L=R*(θ÷180*π),其中,R为地球的半径,π为圆周率。
10.如权利要求6所述的地图实时轨迹的绘制动画实现装置,其特征在于,所述插值点经纬坐标获取模块还用于通过以下公式得到每一个插值点的经纬度坐标:
θN=θ÷(M+1),其中,θN为第N个插值点与上次的经纬度坐标GPSL(x,y)的方位角,其中,N小于等于M;
a=arccos(cos(90-GPSLw)×cos(θ)+sin(90-GPSLw)×sin(θ)×cos(θN)),其中,a为第N个插值点的纬度变量值,相对于90度;
C=arcsin(sin(θ)×sin(θN)÷sin(a)),其中,C为第N个插值点的经度变量值,相对于上次的经纬度坐标的经度GPSLj。
XNj=GPSLj+C,其中,所述XNj为第N个插值点的经度;
XNw=90-a,其中,所述XNw为N个插值点的纬度。
CN201910235450.1A 2019-03-27 2019-03-27 地图实时轨迹的绘制动画实现方法以及装置 Pending CN109947890A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910235450.1A CN109947890A (zh) 2019-03-27 2019-03-27 地图实时轨迹的绘制动画实现方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910235450.1A CN109947890A (zh) 2019-03-27 2019-03-27 地图实时轨迹的绘制动画实现方法以及装置

Publications (1)

Publication Number Publication Date
CN109947890A true CN109947890A (zh) 2019-06-28

Family

ID=67011866

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910235450.1A Pending CN109947890A (zh) 2019-03-27 2019-03-27 地图实时轨迹的绘制动画实现方法以及装置

Country Status (1)

Country Link
CN (1) CN109947890A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112114779A (zh) * 2020-08-26 2020-12-22 北京奇艺世纪科技有限公司 动效对象的处理方法、***、装置、电子设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030078720A1 (en) * 2000-12-08 2003-04-24 Shinya Adachi Method for transmitting information on position on digital map and device used for the same
CN102128626A (zh) * 2010-01-13 2011-07-20 华为技术有限公司 轨迹显示方法、***和地图服务器
CN104515529A (zh) * 2013-09-27 2015-04-15 高德软件有限公司 实景导航方法和导航设备
WO2016095352A1 (zh) * 2014-12-17 2016-06-23 中兴通讯股份有限公司 逆向导航方法及移动终端
JP2018100921A (ja) * 2016-12-21 2018-06-28 Kddi株式会社 移動軌跡に応じて地図上の経路を推定するプログラム、装置及び方法
CN109307513A (zh) * 2017-07-26 2019-02-05 厦门雅迅网络股份有限公司 一种基于行车记录的实时道路匹配方法及***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030078720A1 (en) * 2000-12-08 2003-04-24 Shinya Adachi Method for transmitting information on position on digital map and device used for the same
CN102128626A (zh) * 2010-01-13 2011-07-20 华为技术有限公司 轨迹显示方法、***和地图服务器
CN104515529A (zh) * 2013-09-27 2015-04-15 高德软件有限公司 实景导航方法和导航设备
WO2016095352A1 (zh) * 2014-12-17 2016-06-23 中兴通讯股份有限公司 逆向导航方法及移动终端
JP2018100921A (ja) * 2016-12-21 2018-06-28 Kddi株式会社 移動軌跡に応じて地図上の経路を推定するプログラム、装置及び方法
CN109307513A (zh) * 2017-07-26 2019-02-05 厦门雅迅网络股份有限公司 一种基于行车记录的实时道路匹配方法及***

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112114779A (zh) * 2020-08-26 2020-12-22 北京奇艺世纪科技有限公司 动效对象的处理方法、***、装置、电子设备和存储介质
CN112114779B (zh) * 2020-08-26 2024-02-09 北京奇艺世纪科技有限公司 动效对象的处理方法、***、装置、电子设备和存储介质

Similar Documents

Publication Publication Date Title
CN104077326B (zh) 一种道路数据的处理方法及装置
CN109919518A (zh) 地图轨迹匹配数据的质量确定方法、装置、服务器及介质
CN100517346C (zh) 一种最优路径的寻径方法
CN103902788B (zh) 电子地图图层绘制方法和装置
CN108645421A (zh) 基于隐马尔科夫模型的自适应在线地图匹配方法
CN105222774B (zh) 一种室内定位方法及用户终端
CN107645701A (zh) 一种生成运动轨迹的方法及装置
CN109947890A (zh) 地图实时轨迹的绘制动画实现方法以及装置
CN104422442B (zh) 一种室内导航方法及***
CN110118976A (zh) 一种行驶轨迹绘制方法、装置、终端设备及可读存储介质
CN101619981A (zh) 自助导游导航终端及其优化选择导游导航信息的方法
CN105890587B (zh) 一种基于地图的导航方法及装置
WO2011081919A2 (en) Method for re-using photorealistic 3d landmarks for nonphotorealistic 3d maps
CN103185581B (zh) 信息提示装置、poi搜索结果的提示方法
CN102809381B (zh) 导航方法、导航***、服务器及导航装置
EP1305783B1 (en) Implementation of route instruction service with a three-dimensional model
CN107560626A (zh) 路况信息获取提示的方法和***、及其导航装置和服务器
EP1146739A3 (en) A method and system for providing additional information to a user receiving a video or audio program
CN107806883A (zh) 一种导航方法和装置
CN103185597B (zh) 导航方法以及导航装置
CN110087121A (zh) 虚拟形象显示方法、虚拟形象显示装置和电子设备
CN111400747B (zh) 一种基于轨迹隐私保护的度量方法
EP2261607A3 (en) Method and system for determining a preferred path in a navigation system
CN104717607B (zh) 一种日程提醒方法及移动终端
CN106441269A (zh) 一种用于景区电子语音导游的区间定位方法

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190628