如何在iOS中获取地图中某个点的方向?

时间:2012-12-10 05:12:02

标签: ios maps compass-geolocation

我需要在地图上标记一个点,并获得与手机当前所处角度相关的那个点的方向(如指南针)。任何提示都将受到高度赞赏。感谢。

1 个答案:

答案 0 :(得分:2)

手机角度的矢量将为:av = (cos(phone_angle), sin(phone_angle))

从手机到目的地的角度向量为dv = (x_phone_location - x_dest, y_phone_location - y_dest)

找出上述两个向量中每个向量的大小(长度)。将这些幅度称为mag_dvmag_av

然后,您可以执行目标矢量和手机角度矢量的点积。

angle = arccos( ((dv_x * av_x)+(dv_y * av_y)) / (mag_av * mag_dv) )