Posté par
Louprouge LouprougeHello,
Pour la petite histoire, je me suis mis en tête de faire voler virtuellement des avoins d'un aéroport à un autre et de détecter les aéroports "visibles" situés sur ma trajectoire.
Comme je suis nul en mathématique, j'ai glané des renseignements à gauche et à droite, mais il semblerait que j'ai raté quelque chose.
Pour être concret, je fais un vol depuis Anchorage (Alaska) vers Masvingo (Zimbabwe) et le problème, c'est que je passe à 44 kms d'Antalaya en Turquie, ce qui me semble impossible.
J'ai procédé comme suit :
conversion des latitudes et longitudes en radian, soit :
Anchorage :61°10'27"N 149°59'46"W = 1.06769061 par -2.61792588
Masvingo : 20°3'19"S 30°51'32"E = -0.35003066 par 0.53858924
Antalaya :36°54'5"N 30°47'30"E = 0.64405078 par 0.53741598
Je me suis ensuite servi de la formule suivante pour calculer les distances entre chaque point :
$e= latitude d'origine
$f= longitude d'origine
$g= latitude de destination
$h= longitude de destination
avec un rayon terrestre égal à 6371 kms
$i=(cos($e)*cos($g)*cos($f)*cos($h)+cos($e)*sin($f)*cos($g)*sin($h)+sin($e)*sin($g))
$j=(acos($i))
$k=6371*$j
ce qui me donne les résultats suivants :
Anchorage-Masvingo=15442.3867502 kms
Anchorage-Antalaya= 9109.34789801 kms
Masvingo-Antalaya= 6333.29678369 kms
Ces trois distances forment un triangle dont je peux calculer l'aire en me servant de la formule d'Héron d'alexandrie, (http://fr.wikipedia.org/wiki/Formule_de_H%C3%A9ron) en triant mes valeurs de la plus petite à la plus grande :
soit :
$q = ($a+($b+$c))*($c-($a-$b))*($c+($a-$b))*($a+($b-$c));
$q = abs($q);
$aire = 0.25*sqrt($q);
Dans ce cas concret, j'obtient une aire de 338959.069904 km².
Pour déterminer la distance la plus courte entre Antalaya et ma trajectoire, je me suis dit que ma trajectoire serait la base d'un triangle et qu'Antalaya serait située sur le sommet opposé.
partant de la, j'ai utilisé la formule aire = base x hauteur / 2 convertie en :
hauteur = 2 x aire / base
soit : 2 x 338959.069904 / 15442.3867502 = 43,899932759 kms.
Quelles sont mes erreurs ?