我正在构建一个增强现实游戏,使用CLLocation非常麻烦。
有没有办法将CLLocation局部近似为XYZ坐标,以米为单位,原点从某个任意点开始(例如游戏开始时的初始位置)?
让我们说我在半径1英里的地方工作,并不关心地球的曲率。 是否可以近似或以某种方式简化基于位置的本地位置跟踪计算?
或者,是否存在可与CLLocation一起使用的坐标系,该坐标系还包含CMAttitude的滚动,俯仰,偏航以及指南针方向?
澄清:据我所知,纬度和经度问题在于它们的单位大小不一,具体取决于地球上的位置。我应该指明X,Y,Z应该是标准单位,如米或英尺。
谢谢!
答案 0 :(得分:1)
Haversine公式可能很有用。
我在http://www.jaimerios.com/?p=39找到了一篇关于代码示例的好文章。
答案 1 :(得分:-1)
您可以在应用程序启动时获得初始点,并根据用户坐标移动时计算相对点数。不可否认,这不是超级优雅,但如果您只是想根据用户相对于任意来源的位置进行一些简单的比较,这应该可行。对于Z,Alex Stone建议根据海拔高度计算它应该没问题。