有一个GPS位置和我的GPS位置,¿如何计算方向(从北到0-360º)到我所在位置的位置?

时间:2011-09-27 11:41:26

标签: android gps compass-geolocation

我尝试使用BearingTo(),但我不知道如何使用它。 myLocation.bearingTo(BuildingLocation)给我0º,如果我面向建筑物和北方向,如果我面向建筑物和东方向,给我90º,如果我面向建筑物和南方向,给我-180º。然后承担不适合我的需要。

我需要这样做,因为我需要计算手机相机何时面对物体......

1 个答案:

答案 0 :(得分:3)

试试这个链接: http://www.movable-type.co.uk/scripts/latlong.html

编辑 - 这将是示例,使用位置或以其他方式获取长/纬度

    Location destination;
    Location from;

    double dLon = Math.abs(destination.getLongitude()-from.getLongitude()); //Delta Longitude

    double y = Math.sin(dLon) * Math.cos(destination.getLatitude());
    double x = Math.cos(from.getLatitude())*Math.sin(destination.getLatitude()) -
            Math.sin(from.getLatitude())*Math.cos(destination.getLatitude())*Math.cos(dLon);
    double brng = Math.atan2(y, x);
    double brngdegrees = Math.toDegrees(brng);