calcolare la distanza tra due punti con le coordinate gps

questo fa parte di un mio altro progetto

la parte che manda gli sms e’ praticamente pronta (l’ho postato da qualche altra parte)

ho visto che tangogps si salva i POI (point of interest) in un database sqlite (e anche accedere li e’ facilissimo)

quindi l’unica parte che manca ora e’ calcolare la distanza tra due punti partendo dalle coordinate (quindi latitudine e longitudine)
ho copiato spudoratamente da qua http://darcas.net/index.php/2008/10/12/calcolo-della-distanza-tra-due-punti-geografici/ Sorriso

ecco il codice:

#!/usr/bin/python
#
# thanks to http://darcas.net/index.php/2008/10/12/calcolo-della-distanza-tra-due-punti-geografici/

import math        

decLatA = LATITUDINE_A
decLonA = LONGITUDINE_A
decLatB = LATITUDINE_B
decLonB = LONGITUDINE_B

r = 6372.795477598          

radLatA = math.pi * decLatA / 180
radLonA = math.pi * decLonA / 180
radLatB = math.pi * decLatA / 180
radLonB = math.pi * decLonB / 180

phi = abs(radLonA - radLonB)                                                                                      

p = math.acos( (math.sin(radLatA) * math.sin(radLatB)) + (math.cos(radLatA) * math.cos(radLatB) * math.cos(phi)) )

distanza = p * r

print distanza

Un Commento

  1. Pubblicato Novembre 1, 2008 alle 11:57 am | Permalink

    Bravo, è così che si fà!


Pubblica un Commento

La tua email non verrà mai pubblicata o diffusa. I campi obbligatori sono contrassegnati dal simbolo *
*
*