1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
//calcul de la distance 3D conçue par partir-en-vtt.com
function distance($lat1, $lon1, $lat2, $lon2, $alt1, $alt2)
{
//rayon de la terre
$r = 6366;
$lat1 = deg2rad($lat1);
$lat2 = deg2rad($lat2);
$lon1 = deg2rad($lon1);
$lon2 = deg2rad($lon2);
//recuperation altitude en km
$alt1 = $alt1/1000;
$alt2 = $alt2/1000;
//calcul précis
$dp= 2 * asin(sqrt(pow (sin(($lat1-$lat2)/2) , 2) + cos($lat1)*cos($lat2)* pow( sin(($lon1-$lon2)/2) , 2)));
//sortie en km
$d = $dp * $r;
//Pythagore a dit que :
$h = sqrt(pow($d,2)+pow($alt2-$alt1,2));
return $h;
} |
Partager