Android的代码,使用指南针指向特定的Longatude和Latatude?

时间:2016-04-29 14:12:57

标签: android compass-geolocation

我是编码应用程序的新手。我有个主意。有没有人有一个代码片段用于将用户指向预编程的地理点?

1 个答案:

答案 0 :(得分:1)

您可以通过以下代码计算两个地点之间的方位:

double x = Math.cos(lat2) * Math.sin(lng1-lng2);
double y = Math.cos(lat1) * Math.sin(lat2) - Math.sin(lat1) * Math.cos(lat2) * Math.cos(lng1-lng2);
double bearing = Math.atan2(x, y);

问题是,您还需要知道手机的当前标题。 codenipped只计算相对于地理北方的方位。

您可以使用我的CompassAssistant课程。它具有您需要的轴承功能。 howto在自述文件中。如果您需要帮助,请随时问我。

如果你不想自己做:我已经在this post中描述了指南针的解决方案。通过上面的代码计算轴承,简单地添加罗盘给你的负值。

希望这会对你有所帮助。