android– 根据我的曲目详细信息跟踪距离和时间

android– 根据我的曲目详细信息跟踪距离和时间,第1张

概述我正在使用android中的gps跟踪来跟踪用户位置并提供记录轨道的功能.我现在能够绘制路径我想要计算轨道距离和时间,就像假设用户开始跟踪记录并移动到另一个现在位置我想计算谷歌地图中从开始到结束位置(用户位置更新)的总距离和时间旅行.我有计算2个位置的距离但不适合我的路线的功

我正在使用android中的gps跟踪来跟踪用户位置并提供记录轨道的功能.我现在能够绘制路径我想要计算轨道距离和时间,就像假设用户开始跟踪记录并移动到另一个现在位置我想计算谷歌地图中从开始到结束位置(用户位置更新)的总距离和时间旅行.我有计算2个位置的距离但不适合我的路线的功能,因为路线是折线,它是灵活的纬度/直线位置.是他们的任何API或谷歌为此提供的任何功能或服务.任何帮助或建议都很感激.

解决方法:

我会创建一个名为waypoint的类

class WayPoint{   DateTime depart; //some date time container   DateTime arrive; //some date time container   Coordinate position; //some gps coordinate}

然后创建这些类的列表,允许在任何位置插入元素,这对于路由更改有帮助:

List<WayPoint> journey = new ArrayList<WayPoint>();//just add your waypointsjourney.add(startWayPoint);journey.add(wayPoint_1);journey.add(wayPoint_2);//...journey.add(wayPoint_n_minus_2);journey.add(wayPoint_n_minus_1);journey.add(enDWayPoint);

然后转换为数组并计算总数:

WayPoint[] wayPoints = journey.toArray();double total_distance = 0.0f; //distance in metresdouble total_travel_time = 0.0f; // time in hours//start at index 1 because there are n-1 segmentsif(wayPoints.length>1)foreach(int i=1; i<wayPoints.length;i++){  total_distance += calcdistanceBetween(      wayPoints[i-1].position,      wayPoints[i].position);  total_time += calcTimeInHoursBetween(      wayPoints[i-1].depart,      wayPoints[i].arrive);}log.d("Total distance",String.valueOf(total_distance));log.d("Total Travel Time",String.valueOf(total_travel_time));
总结

以上是内存溢出为你收集整理的android – 根据我的曲目详细信息跟踪距离和时间全部内容,希望文章能够帮你解决android – 根据我的曲目详细信息跟踪距离和时间所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1098076.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存