背景:
我正在使用mapquest地图为android开发导航应用程序。我有一个易碎装置,当用户必须左/右转动时它会振动。现在,当用户偏离mapquest计算的路径时,会发生重新路由。有时,新创建的路径与用户标题不同。所以,我想指出用户左/右/后退以返回新路径并继续常规导航过程。
问题:
如何计算固定用户标题和地理位置之间的方位,以便我可以将该地理位置放在参考用户位置的N / S / E / W象限中,并指示如果它是向西或向右则向左转它是东
以下是指向上述概念的图片的链接
https://www.dropbox.com/s/m8tugeavmjb46ck/Untitled.jpg?dl=0
请帮帮我
谢谢
答案 0 :(得分:1)
您需要计算用户面向/标题的方向与将用户的位置连接到目标地理点的向量之间的角度差。在您分享的图片中,此角度将逆时针旋转90度。
面向/方位方向的计算:如果用户正在移动,请使用location.getBearing()
。如果静止不动,请使用指南针获取朝向的方向。
计算从当前位置到目的地的向量方向:使用myLocation.bearingTo(destination)
最后,计算两个方向之间的差异