我需要使用现有的纬度/经度,距离和方向来计算纬度/经度

时间:2015-02-23 05:32:11

标签: java geolocation geometry google-places-api

在Java中集成google API时,我需要使用现有的纬度/经度,距离和方向计算另一个地方的纬度/经度。如何计算这一点?

1 个答案:

答案 0 :(得分:0)

以下PHP代码提供$lat1,$lng1距离$dist(kms)沿轴承$brng的点。

function destination($lat1,$lng1,$dist,$brng){
$alpha = $dist/6371; // km
$lat2 = asin((sin($lat1)*cos($alpha)) +(cos($lat1)*sin($alpha)*cos($brng)) );
$lng2 = $lng1 + atan2(sin($brng)*sin($alpha)*cos($lat1),cos($alpha)-sin($lat1)*sin($lat2));
return array(toDeg($lat2),toDeg($lng2));
}
弧度

$lat1,$lng1 & $brng

function toRad($deg) {
// Converts numeric degrees to radians 
    return $deg * pi() / 180;
}
function toDeg($rad){
   return $rad * 180 / pi();
}