gpt4 book ai didi

javascript - HTML5/Javascript 使用 devicemotion/deviceorientation 计算设备速度

转载 作者:搜寻专家 更新时间:2023-10-31 08:26:38 27 4
gpt4 key购买 nike

是否可以使用 devicemotion/deviceorientation HTML5 API 以某种方式计算以 km/h 为单位的设备速度?

我想知道用户是在走路/运行还是不动,我不能使用地理定位 API,因为它也必须在建筑物内工作。

最佳答案

当然可以。您从 devicemotion 事件中获得的加速度以 m/s² 为单位。

var lastTimestamp;
var speedX = 0, speedY = 0, speedZ = 0;
window.addEventListener('devicemotion', function(event) {
var currentTime = new Date().getTime();
if (lastTimestamp === undefined) {
lastTimestamp = new Date().getTime();
return; //ignore first call, we need a reference time
}
// m/s² / 1000 * (miliseconds - miliseconds)/1000 /3600 => km/h (if I didn't made a mistake)
speedX += event.acceleration.x / 1000 * ((currentTime - lastTimestamp)/1000)/3600;
//... same for Y and Z
lastTimestamp = currentTime;
}, false);

应该这样做。但我会小心,因为手机中的加速度计不太准确;)

关于javascript - HTML5/Javascript 使用 devicemotion/deviceorientation 计算设备速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33673409/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com