轨道校正服务插件。用于将一组可能偏离道路的方向和经纬度轨迹纠正为沿道路准确的经纬度路径。例如,通过传输一组间隔收集的车辆的位置、方向、速度、时间等信息,可以获得一组沿道路的经纬度路径和总驾驶过程。
准备原始轨迹数据
原始轨迹点需要根据以下数据规格进行修正,x、y、sp、ag、tm代表经度、纬度、速度、角度和时间。
需要注意:
1. 经纬度应该是高德坐标,而不是GPS直接收集的坐标可以通过AMap.convertFrom转化
2. tm以秒为单位,第一个收集点tm从1970年0点开始,其他收集点与第一个收集点之间的差值
var originPath= [
{"x":116.478928,"y":39.997761,"sp":19,"ag":0, "tm":1478031031},
{"x":116.478907,"y":39.998422,"sp":10,"ag":0, "tm":2},
{"x":116.479384,"y":39.998546,"sp":10,"ag":110,"tm":3},
{"x":116.481053,"y":39.998204,"sp":10,"ag":120,"tm":4},
{"x":116.481793,"y":39.997868,"sp":10,"ag":120,"tm":5},
{"x":116.482898,"y":39.998217,"sp":10,"ag":30, "tm":6},
{"x":116.483789,"y":39.999063,"sp":10,"ag":30, "tm":7},
{"x":116.484674,"y":39.999844,"sp":10,"ag":30, "tm":8}]
调用轨迹纠偏服务
AMap.plugin('AMap.GraspRoad',function(){
var grasp = new AMap.GraspRoad();
grasp.driving(originPath,function(error,result){
if(!error){
var newPath = result.data.points;///纠偏后的轨迹
var distance = result.data.distance;//里程
}
})
})