实时轨迹 编辑文档

1. 轨迹记录

startRecordingPath() 用于记录指定 Key 的轨迹,并实时上传至云端,默认为 5 秒 上传一次。

设置上传频率

你可以根据时间或距离设置上传频率:

  • 根据时间间隔上传,最小间隔 1 秒, 最大间隔 300 秒。

例如,每 60 秒上传一次轨迹点:

var locationProvider = wildLocation.AMapLocationProvider("timeInterval", 60000);
wildLocation.startRecordingPath(key, locationProvider);
  • 根据距离间隔上传,最小间隔 0 米 (1 秒判断一次),最大间隔 500 米。

例如,每 20 米 上传一次轨迹点:

var locationProvider = wildLocation.AMapLocationProvider("distanceInterval", 20);
wildLocation.startRecordingPath(key, locationProvider);

停止记录轨迹

stopRecordingPath()用于停止记录指定 Key 的轨迹。

wildLocation.stopRecordingPath(key);

2. 轨迹查询

实时轨迹查询

PathQurey.on() 用于查询实时轨迹,轨迹一旦发生变化,将会实时更新。

var pathQuery = wildLocation.pathQuery(key);
pathQuery.on(function (pathSnapshot) {
console.log('轨迹的路程长度为: ', pathSnapshot.length());
var positions = pathSnapshot.points();
var latestPosition = pathSnapshot.latestPoint();
});

提示:



如果你想绘制一条实时的轨迹,可以利用 latest point 实时绘制新的轨迹点。

根据时间范围查询轨迹。

起始时间 QueryStartAtTime

var pathQuery = wildLocation.pathQuery(key, {startTime: QueryStartAtTime});
pathQuery.on(function (pathSnapshot) {
console.log('轨迹的路程长度为: ', pathSnapshot.length());
var positions = pathSnapshot.points();
var latestPosition = pathSnapshot.latestPoint();
});

结束时间 QueryEndAtTime

var pathQuery = wildLocation.pathQuery(key, {endTime: QueryEndAtTime});
pathQuery.on(function (pathSnapshot) {
console.log('轨迹的路程长度为: ', pathSnapshot.length());
var positions = pathSnapshot.points();
var latestPosition = pathSnapshot.latestPoint();
});

单次轨迹查询

PathQurey.once() 用于查询指定时间范围内的轨迹记录。

var pathQuery = wildLocation.pathQuery(key);
pathQuery.once(function (pathSnapshot) {
console.log('轨迹的路程长度为: ', pathSnapshot.length());
var positions = pathSnapshot.points();
var latestPosition = pathSnapshot.latestPoint();
});

提示:



如果查询时间范围超过轨迹时间范围,将只会返回轨迹时间范围内的轨迹点。

3. 轨迹长度

pathSnapshot 的属性 length 用于记录轨迹的长度,单位为米。

pathSnapshot.length();
野狗新手?
立即注册,为你提供安全可靠的实时通信云服务。
没找到需要的文档?
你可以提交工单反馈 或 阅读常见问题
期待收到你的反馈,帮助我们改进文档。
参与调研