这可能很难解释几何,所以我会小心拼写出来。这在标准 compas 应用程序和 CLLocationManager 中的数据中可见。
1) 竖握手机时,考虑俯仰角为0°
2) 当将相机指向天空时(例如拍摄云的照片),俯仰角从 0° -> 90° 变为 90° 是直线向上。
3)当手机向上倾斜(> 0 度并在“X”磁力计轴上旋转)并且当手机处于大约(但不完全)45 度时,指南针航向旋转 180 度。因此,当相机仍然指向“N”时,指南针将报告“S”。
4) 对于下一个(大约)90 度,罗盘航向旋转 180 度。
航向的这种旋转对我来说是破坏性的,它与加速度计并没有完全对齐。是否有关于使用 CLHeading 数据中的 RAW 数据(X、Y、Z)来计算航向数据的好的教程(我没有找到一个)?
最终结果是我希望指南针的航向始终与相机的航向匹配。