【发布时间】:2014-07-16 18:52:32
【问题描述】:
我需要制作一个应用程序来查找手机的方向。 我想测试的一些用例是
- 手机在阅读位置(平放)使用了多少时间
- 有多少时间用于拨打电话(垂直)。
- 它有多少时间放在口袋里。
我认为我应该能够从方向传感器获得所有这些信息。 我需要在这里提一下,我最近开始了 Andriod 开发,所以我希望该解决方案假设来自传感器的原始数据,以便以后可以在 Matlab 中进行处理。事实上,一位同事正在帮助我进行安卓开发。
我使用了标准的方法。方法:1
if (SensorManager.getRotationMatrix(rotationMatrix, null, accelerationValues, geoMagnetValues)) {
SensorManager.getOrientation(rotationMatrix, orientation);
滚动和方位角在 -pi 到 pi 的范围内都可以,但正如 Android Compass that can Compensate for Tilt and Pitch 中指出的那样,间距在 -pi/2 到 pi/2 的范围内,我在处理这个问题时遇到了问题。所以我在Android Compass that can Compensate for Tilt and Pitch 碰到了代码。 我刚刚使用它没有屏幕旋转调整。 我有几个疑问。 Android Compass that can Compensate for Tilt and Pitch 中定义的音高与我通过方法得到的不同:1 因为当我向右倾斜手机时,音高值会发生变化,而它不应该改变。实际上,它对应于方法 1 的滚动值。但是,当我通过Android Compass that can Compensate for Tilt and Pitch 中的方法将手机向左转时,会给出滚动值,但符号不同。 方位角没问题。 最后 m_pitch_axis_radians 我完全无法理解。我知道我在解释这个不同的坐标系时遇到了一些问题,但如果我能得到关于 Method :1 中的俯仰、滚动和方位角如何与Android Compass that can Compensate for Tilt and Pitch 中的方法相关的提示,我将不胜感激
【问题讨论】:
标签: android android-orientation