繁体   English   中英

绕z轴旋转时iOS陀螺仪错误

[英]iOS gyro error when rotating about z-axis

我无法解决遇到的一个奇怪的错误,并且想知道其他任何人是否遇到过类似的问题或可以提供解决方案。

我正在使用JavaScript访问iOS设备的陀螺仪,并且对绕z轴旋转感兴趣; 当设备平放在桌子上时,我想要旋转角度。

但是,每旋转360度,陀螺仪就会偏离大约20度。 如果我将设备与桌子上的东西对齐,然后将设备旋转360度,将其返回到起点,则角度读数为〜340度,而不是360或0。这很复杂,因此在1080度旋转后,角度偏离了〜60度。 ,如果我再反方向旋转,则会逆转错误(在这种情况下,旋转-1080度后,它将返回0度)。

我已经在Ipad 2、3和iPhone 4上进行了测试,尽管它们在每360deg上都更像8deg,但它们在所有iPad上都遇到了类似的问题。 我也尝试过使用gyro.js之类的库,但是会发生相同的结果。

我整理了一个简短的Codepen示例进行演示。 http://codepen.io/CharlesSmart/pen/ZYNXEJ?editors=101

window.addEventListener('deviceorientation', orientationHandler, false);
function orientationHandler(e)
{
var alpha = e.alpha
var div = document.getElementById('text');
div.innerHTML = alpha;
}

我是否以某种方式滥用了方向api? 我使用的设备可能有问题吗?

任何意见,将不胜感激。

我敢打赌,您正在获取加速度计数据,而不是陀螺仪数据。

您可能希望“ devicemotion”而不是“ deviceorientation”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM