我正在开发一个应用程序,利用Android传感器帮助车辆在室内位置导航。作为对不同传感器评估过程的一部分,我想尝试“旋转矢量”传感器。由于各种原因,磁场读数对我的位置没有太大用处,因此我想尝试“游戏旋转矢量”传感器(传感器融合,从API 18及更高版本可用)。该说明指出,它与常规旋转矢量传感器相同,只是没有使用磁场信息来校正垂直轴周围的陀螺仪漂移。
当寻找有关旋转矢量传感器的信息时,我发现Google的一个示例,他们展示了使用3D立方体的旋转矢量传感器。它工作得非常好,除了对当地磁场非常敏感(并且我距北极很远,水平分量非常小)以外。
由于长期漂移可以通过其他参考数据(地图信息)进行补偿,因此我想在我的应用程序中使用游戏旋转矢量传感器。但是,当将所有引用从“TYPE_ROTATION_VECTOR”更改为“TYPE_GAME_ROTATION_VECTOR”时,示例代码中的立方体不再对垂直轴周围的旋转(例如我在椅子上旋转并将设备保持在我面前)做出反应。将设备向另外两个方向倾斜会移动立方体。我还注意到这次立方体反应非常缓慢,对任何移动反应非常慢。
这是游戏旋转矢量传感器应该工作的方式吗(例如忽略任何Z轴旋转)?这有点有道理,因为在后座玩游戏的玩家不应受车辆转弯的影响,但与Google提供的描述不同(我的第一个链接)。从描述中,我认为它会缓慢漂移,而不是完全忽略旋转。
对于这个问题的任何意见,我将不胜感激。
最好的问候,
约翰
当寻找有关旋转矢量传感器的信息时,我发现Google的一个示例,他们展示了使用3D立方体的旋转矢量传感器。它工作得非常好,除了对当地磁场非常敏感(并且我距北极很远,水平分量非常小)以外。
由于长期漂移可以通过其他参考数据(地图信息)进行补偿,因此我想在我的应用程序中使用游戏旋转矢量传感器。但是,当将所有引用从“TYPE_ROTATION_VECTOR”更改为“TYPE_GAME_ROTATION_VECTOR”时,示例代码中的立方体不再对垂直轴周围的旋转(例如我在椅子上旋转并将设备保持在我面前)做出反应。将设备向另外两个方向倾斜会移动立方体。我还注意到这次立方体反应非常缓慢,对任何移动反应非常慢。
这是游戏旋转矢量传感器应该工作的方式吗(例如忽略任何Z轴旋转)?这有点有道理,因为在后座玩游戏的玩家不应受车辆转弯的影响,但与Google提供的描述不同(我的第一个链接)。从描述中,我认为它会缓慢漂移,而不是完全忽略旋转。
对于这个问题的任何意见,我将不胜感激。
最好的问候,
约翰