我用绘图管理器在谷歌地图上画了一个矩形如何用千米或英里来表示矩形所覆盖的距离?
请帮帮我
求KM
中两个Geopoints
之间的Distance
function distanceGeoPoints ($lat1, $lng1, $lat2, $lng2) {
$earthRadius = 3958.75;
$dLat = deg2rad($lat2-$lat1);
$dLng = deg2rad($lng2-$lng1);
$a = sin($dLat/2) * sin($dLat/2) +
cos(deg2rad($lat1)) * cos(deg2rad($lat2)) *
sin($dLng/2) * sin($dLng/2);
$c = 2 * atan2(sqrt($a), sqrt(1-$a));
$dist = $earthRadius * $c;
// from miles
$meterConversion = 1609;
$kilometerConversion = 1.609;
$geopointDistance = $dist * $kilometerConversion;
return $geopointDistance;
}
现在假设你有一个矩形,它有四个点(a, B, C, D)
A __________________________ D
| |
| |
| |
|__________________________|
B C
那么你的距离就是
Total distance = 2 * ((distance between A and B) + (distance between A and D))