我已经研究了一段时间,现在我必须决定走哪条路。
地雷要求:需要知道设备相对于真实航向的方向(地理北极,而不是磁极)。为此,我必须使用指南针,现在我必须决定哪个其他东西,加速度计或陀螺仪。
由于这对我来说是新事物,所以我花了几个小时阅读堆栈和维基百科文章,但我仍然感到困惑。
我的目标是两个平台(iOS 和 Android),我正在使用 Appcelerator Titanium 开发它们。使用 Titanium,我可以轻松获得加速度计的值 (x,y,z) 和 trueHeading。
由于 iPhone 3GS 没有陀螺仪,显然我不能在该设备上使用它。较新的 iPhone 和 Android 设备都有它。
所以问题是:
加速度计的 XYZ 和 Compas 的 TrueHeading 数据是否足以让我计算设备俯仰、滚动和偏航?但它必须是准确的。
使用 Compas 的 TrueHeading 并使用陀螺仪的值而不是加速度计的值是否更准确?
将加速度计和陀螺仪与 TrueHeading 结合起来是否聪明?
如果我走第一条路,我不必编写 Titanium 模块来获取陀螺仪数据,因为它只给我加速度计数据,我也可以在 3GS iPhone 上使用它。
如果我走第二条路,我必须编写两个模块(iOS 和 Android)来获取陀螺仪数据,并且我失去了对 3GS 的支持。
如果我走第三条路,我又不得不编写 Titanium 模块,我失去了对 3GS 的支持。