Der*_*會功夫 5 javascript html5 acceleration
通过event.accelerationIncludingGravity在Android上使用,它返回值
x: -0.2
y: +0.1
z: +9.1
Run Code Online (Sandbox Code Playgroud)
在平坦的表面上休息时.但是,我希望在没有重力的情况下获得加速但event.acceleration不受支持.有没有办法通过数学转换它?在HTML5Rocks中有一个删除重力因子的例子,但它似乎不起作用.
// Convert the value from acceleration to degrees acceleration.x|y is the
// acceleration according to gravity, we'll assume we're on Earth and divide
// by 9.81 (earth gravity) to get a percentage value, and then multiply that
// by 90 to convert to degrees.
var tiltLR = Math.round(((acceleration.x) / 9.81) * -90);
var tiltFB = Math.round(((acceleration.y + 9.81) / 9.81) * 90 * facingUp);
Run Code Online (Sandbox Code Playgroud)
绘制加速度值的脚本示例(不是来自HTML5Rocks)
我懂了。您得到的 x 和 y 轴数字基本上为 0,继续测量放置在平坦表面上的设备,并分别对所有 x 和 y 值进行平均,您将得到每个方向的误差度。加速度以 m/s^2 为单位测量。(米每平方秒)。地球表面的重力加速度为9.86m/s^2。在理想的物理问题中,你所要做的就是减去这个数字,你就会得到答案。如果您试图计算速度,那么这将是一个更复杂的问题,但地球的重力加速度不会加速。z 轴上确实有较大的误差度,但如果将误差度计算为实际值的百分比,则不会。或者你的海拔大约是300公里。