鹰眼android sdk提供了querydistance()方法,用于计算指定时间段内的轨迹里程,支持:
1. 计算纠偏后的里程
2. 支持用路线规划补偿中断轨迹的里程
3. 支持返回途径收费道路的里程
支持设置 isprocessed=1和processoption纠偏选项,纠正里程计算。关于纠偏选项的设置,详见轨迹纠偏
注:本页关于里程计算的说明均是指计算已上传到鹰眼服务端的轨迹里程,对于缓存于鹰眼sdk本地的轨迹里程计算,可参见缓存轨迹处理
与查询轨迹一样,里程计算也支持设置 isprocessed和processoption纠偏选项,纠正里程计算。详见轨迹纠偏的说明
除此之外,里程计算还提供里程补充功能,当轨迹中断5分钟以上,会被认为是一段中断轨迹,通过supplementmode参数可设置中断区间里程的计算方式,选项有:
no_supplement:不补充,中断两点间距离不记入里程。
straight:使用直线距离补充
driving:使用最短驾车路线距离补充
riding:使用最短骑行路线距离补充
walking:使用最短步行路线距离补充
开发者可以根据具体的业务场景选择合适的补充方式。
请求12小时内的轨迹里程,并进行轨迹纠偏和驾车里程补偿。
// 请求标识int tag =2;// 轨迹服务idlong serviceid =0;// 设备标识string entityname ="mytrace";// 创建里程查询请求实例distancerequest distancerequest =newdistancerequest(tag, serviceid, entityname);// 开始时间(单位:秒)long starttime =system.currenttimemillis()/1000-12*60*60;// 结束时间(单位:秒)long endtime =system.currenttimemillis()/1000;// 设置开始时间distancerequest.setstarttime(starttime);// 设置结束时间distancerequest.setendtime(endtime);// 设置需要纠偏distancerequest.setprocessed(true);// 创建纠偏选项实例processoption processoption =newprocessoption();// 设置需要去噪processoption.setneeddenoise(true);// 设置需要绑路processoption.setneedmapmatch(true);// 设置交通方式为驾车processoption.settransportmode(transportmode.driving);// 设置纠偏选项distancerequest.setprocessoption(processoption);// 设置里程填充方式为驾车distancerequest.setsupplementmode(supplementmode.driving);// 初始化轨迹监听器ontracklistener mtracklistener =newontracklistener(){// 里程回调@overridepublicvoidondistancecallback(distanceresponse response){}};// 查询里程mtraceclient.querydistance(distancerequest, mtracklistener);
上一篇
下一篇
本篇文章对您是否有帮助?