Patdebisca
Messages postés33Date d'inscriptionmercredi 2 janvier 2008StatutMembreDernière intervention15 octobre 2009
-
11 oct. 2009 à 23:24
Patdebisca
Messages postés33Date d'inscriptionmercredi 2 janvier 2008StatutMembreDernière intervention15 octobre 2009
-
15 oct. 2009 à 06:40
Bonsoir,
Je ne suis pas sur de poster au bonne endroit ...
je cherche comment calculer ou directement dans une cellule excel ou en VBA, la distance en m entre 2 points wgs84 de format D.D°
Apres plusieur recherche je n'ai pas trouver de solution ...
La seule formule qui semble revenir souvent, est d=acos(sin(lat1)*sin(lat2)+cos(lat1)*cos(lat2)*cos(lon1-lon2)).
Mais le resultat ne correspond pas a la réalité! (je l'utilise bien?)
Ex: lat1 44,03299 lon1 0,06487 lat2 44,03245 lon2 0,06395
avec google earth j'ai 94.85m, avec un calculateur j'ai 90 m
avec la formule =ACOS(SIN(44,03299)*SIN(44,03245)+COS(44,03299)*COS(44,03245)*COS(0,06487-0,06395)) j'ai un resultat de 0.00106 ???
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 20138 11 oct. 2009 à 23:54
Boinsoir,
Je ne sais d'où vient ce texte, conservé sur mon disque dur en .txt :
Je te le livre tel quel :
La formule de calcul est la suivante. Soient :
LATv : la latitude d'une de tes villes de la base de données en degrés
LONv : la longitude d'une de tes villes de la base de données en degrés
latb : la latitude du barycentre en degrés
lonb : la longitude du barycentre en degrés
R : le rayon de la terre environ 6378 Km
0,0174532 permet de passer des degrés au radians
la distance se calcule de la façon suivante :
Da= R*(LATv - latb)* 0,0174532
Do= R*(LONv - lonb)* 0,0174532 * cos(latb*0,0174532)
D = racine(Da*Da + Do*Do)
la réponse est en Km
Patdebisca
Messages postés33Date d'inscriptionmercredi 2 janvier 2008StatutMembreDernière intervention15 octobre 2009 15 oct. 2009 à 06:40
Salut...
J'ai trouver la solution a ma migraine.....
La formule est
6366*acos(cos(radians(lat_a))*cos(radians(lat_b))*cos(radians(long_b)-radians(long_a))+sin(radians(lat_a))*sin(radians(lat_b)))
ce qui donne un resultat avec les coordonnés cité plus haut;
6366*ACOS(COS(RADIANS(44,03299))*COS(RADIANS(44,03245))*COS(RADIANS(0,06395)-RADIANS(0,06487))+SIN(RADIANS(44,03299))*SIN(RADIANS(44,03245)))*1000=94.87 metres
J'ai teste sur plusieur donnéses, tout est impec!