Courte procédure de calul de la distance entre 2 points GPS

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
PhM
Messages : 118
Inscription : dim. 08/déc./2019 10:50

Courte procédure de calul de la distance entre 2 points GPS

Message par PhM »

Bonjour,
Juste une petite procédure ayant la particularité d'être la plus courte possible pour obtenir la bonne réponse.
Fonctionne avec des données décimales de 2 coordonnées GPS.
Pour info., j'ai adapté la formule d'Excel pour obtenir ce calcul.
Espérant qu’elle pourra vous être utile :?:

Code : Tout sélectionner

;
; Distance entre 2 points géographiques d'une sphère avec les valeurs d'entrée en degrés décimaux
; Philippe Mjon - décembre 2019


Procedure distance(lat1.f, long1.f, lat2.f, long2.f)
  ;Rayon_moyen = (2xrayon equatorial) + rayon polaire / 3
  ;Rayon_moyen = ((2x6378.137)+6356.7523) /3 = 6371.0087890625
  terre.f = 6371008.7890625;   Rayon_moyen
  km = ACos(Sin(Radian(lat1)) * Sin(Radian(lat2)) + Cos(Radian(lat1)) * Cos(Radian(lat2)) * Cos(Radian(long1-long2))) * terre
  ProcedureReturn (km)
EndProcedure

; --------------------------- Calcul de la distance en km entre Paris et Lyon ---------------------------

;                               Paris (lat1 = 48.856667, long1 = 2.350987)
;                               Lyon (lat2 = 45.767299, long2 = 4.834329)

resultat$ = StrF(distance(48.856667, 2.350987, 45.767299, 4.834329)/1000,6)

Debug "La distance est de : " + resultat$ + " km"

End
Dernière modification par PhM le dim. 08/déc./2019 21:38, modifié 1 fois.
Avatar de l’utilisateur
Micoute
Messages : 2584
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Courte procédure de calul de la distance entre 2 points

Message par Micoute »

Merci pour le partage, je n'utiliserai cette procédure tous les jours, mais elle est malgré tout fort utile.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Avatar de l’utilisateur
venom
Messages : 3137
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Re: Courte procédure de calul de la distance entre 2 points

Message par venom »

Bonjour,

Merci pour le partage.






@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Répondre