这可能很难解释几何关系,所以我会仔细说明。在标准的compas应用程序中以及来自CLLocationManager的数据中可以看到。
1) 当手机处于纵向时,将俯仰角视为0°
2) 当将摄像头指向天空(例如拍摄云)时,俯仰角从0°变为90°,其中90度是垂直向上。
3) 当手机向上倾斜(> 0度并在“X”磁力计轴上旋转)并且当手机大约倾斜45度(但不完全时),指南针方向会旋转180度。 因此,尽管相机仍然指向“N”,但指南针将报告“S”。
4) 对于接下来的(大约)90度,指南针方向旋转了180度。
对我来说,这种方向的旋转是有害的,并且它与加速度计不完全对齐。 是否有一个好的教程(我一开始没有找到)可以使用CLHeading数据的原始数据(X、Y、Z)来计算heading数据?
最终结果是我希望指南针的 heading 始终与相机的 heading 匹配。