Raj*_*dal 6 iphone cocoa-touch quaternions euler-angles rotational-matrices
我很震惊.我想将iPhone的CMAttitude信息转换为海拔高度(0到90度)和方位角(0到360度).我已经google了一下并且讨论了一些讨论它的线程,但没有一个线程得到肯定的答案,大多数讨论Quaternion和Euler角度的文章都是太多的数学物质进入我的大脑!
是否有一些开源材料可以轻松完成这项任务?或者有人编写代码来执行此转换?
编辑:首先,抱歉这么抽象!
方位角是指设备所指向的地球表面上的方向.像北= 0度,东北= 45度,东= 90度,南= 180度,依此类推.范围在0度到360度之间:

海拔高度是从地球平面到天空中物体的角度:

谢谢,
拉吉
使用 CMDeviceMotion,您可以获得具有“滚动、俯仰和偏航”的 CMAttitude 对象 - 例如,假设手机处于纵向模式,“偏航”是“方位角”,“俯仰”是手机相对于地面的倾斜度,或天顶,“滚动”是关于指向屏幕的矢量,而不是您感兴趣的内容。
事情变得有点棘手,因为“方位角”是 3D 磁矢量(指向磁北极)在平坦“地”平面上的投影,该投影根据设备方向而变化,但考虑到对这些术语的理解,线程像这样的应该更容易理解。如果您只需要应用程序在一个方向上工作,事情就会变得简单得多。
PS“高度”几乎专门用于指给定参考(海平面、大地高度等)的海拔或高度。“Zenith”或“pitch”是更好的选择,并且由于您使用的是 iOS,因此您应该坚持它们的坐标方案:(lat、lon、alt)、(pitch、yaw、roll)。
| 归档时间: |
|
| 查看次数: |
5848 次 |
| 最近记录: |