gpt4 book ai didi

javascript - 标准化加速度计输出

转载 作者:行者123 更新时间:2023-11-28 09:28:25 25 4
gpt4 key购买 nike

我目前正在编写一个 HTML5 Web 应用程序,该应用程序严重依赖于加速度计数据。我们的想法是让应用程序尽可能跨平台(iPhone、iPad、Android、Windows Phone 等)

我遇到麻烦是因为,首先,有几种方法可以通过 HTML5 获得设备的加速:

  • DeviceMotionEvent
  • 设备方向事件
  • navigator.accelerometer

其次,不同的设备给出不同的值。例如,一台设备可能给出 0-10 之间的值,另一台设备可能给出 0-100 之间的值。更令人沮丧的是,同一设备上的不同浏览器对此也不一致。

有没有一种方法可以以某种方式获取这些信息并以一种无需为设备和浏览器的每种组合编写单独案例的方式使用它?例如,将加速度计数据从原始的、无意义的数字转换为设备的方向(以度为单位)?

最佳答案

您始终可以为每个流行的设备设置一个除数,或者以某种方式获取最大值和最小值。如果最小值为负数,则从当前值中减去该最小值,使其必须为正数,然后除以最大值。然后您应该得到 0 到 1 之间的小数。没有保证。我用随机数测试了这个,但不是实际的加速器输入,它似乎将数字转换为小数。

if (device=="iphone")
{
minval=-10 ; maxval=10
}
if (device=="somethingelse")
{
minval=0 ; maxval=100
}
if (minval<0)
{
rawdataa = rawdata - minval
}
rawdataaa = rawdataa / maxval
alert(rawdataaa);

关于javascript - 标准化加速度计输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13999385/

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