Android 倾斜移动加速度计

Android 倾斜移动加速度计,android,math,accelerometer,Android,Math,Accelerometer,我想做一个小游戏,你必须移动一些物体倾斜手机。我在本教程中实现了这一点: 这种情况下,这是基于手机是在一个0度作为原点,但我想改变一个更舒适的原点角度:一个角度瞄准我的脸作为原点 如何将加速度计给出的加速度变量x,y标准化为我的自然角度(对准我的脸)?我一直在考虑做类似的事情,但我还没有尝试过。我的第一步是尝试在加速度计初始化后的某个地方获取初始方向,如onStart(),并将其用作“零”的第一个估计值。好吧,你最好小心。你不知道手机是否在那一刻着陆了。我认为我们应该找到一个合适的角度来处理这个

我想做一个小游戏,你必须移动一些物体倾斜手机。我在本教程中实现了这一点:

这种情况下,这是基于手机是在一个0度作为原点,但我想改变一个更舒适的原点角度:一个角度瞄准我的脸作为原点


如何将加速度计给出的加速度变量x,y标准化为我的自然角度(对准我的脸)?

我一直在考虑做类似的事情,但我还没有尝试过。我的第一步是尝试在加速度计初始化后的某个地方获取初始方向,如
onStart()
,并将其用作“零”的第一个估计值。好吧,你最好小心。你不知道手机是否在那一刻着陆了。我认为我们应该找到一个合适的角度来处理这个问题。玩家会习惯的。。。但是我们怎么能做到呢?这就是困难所在,不是吗。你不知道用户启动应用程序时是否将设备放在桌面上,然后拿起它。为了便于使用,我计划将“零”方向慢慢更改为当前方向。如果方向保持稳定足够长的时间,电流和零将相等。但我的应用程序对错误的容忍度很高。对于游戏,当用户按下
Start
按钮时,我只会使用方向。我们可能需要更多地了解您的应用程序,以获得更具说服力的建议。但我要寻找的是如何找到设备在特定时刻的角度,以及如何与加速度变量进行转换。您是否在问如何从当前向量中减去初始向量?