Google Maps me donne la Lat et Long d'un emplacement en notation décimale comme ceci:Lat Long à minutes et secondes?
38,203655, -76,113281
Comment convertir ceux Coords (degrés, minutes, secondes)
Google Maps me donne la Lat et Long d'un emplacement en notation décimale comme ceci:Lat Long à minutes et secondes?
38,203655, -76,113281
Comment convertir ceux Coords (degrés, minutes, secondes)
38,203655 est une valeur décimale de degrés. Il y a 60 minutes est un degré et 60 secondes dans une minute (1degree == 60min == 3600s). Prenez donc la partie fractionnaire de la valeur, c'est-à-dire 0,203655, et multipliez-la par 60 pour obtenir les minutes, soit 12,2193, soit 12 minutes, puis répétez pour la partie fractionnaire des minutes, c'est-à-dire 0,2193 = 13,158000 secondes.
Exemple en python:
def deg_to_dms(deg):
d = int(deg)
md = abs(deg - d) * 60
m = int(md)
sd = (md - m) * 60
return [d, m, sd]
print deg_to_dms(38.203655)
print deg_to_dms(-76.113281)
Bonne solution. Note mineure: typiquement pour le format DMS, elle n'est pas signée mais utilise plutôt la direction cardinale (c.-à-d. Pas -76 12 34.567 mais W76 12 34.567). – TreyA
Si vous avez besoin d'autres fonctionnalités liées à la géo-JavaScript, vous pouvez utiliser la bibliothèque suivante
http://www.movable-type.co.uk/scripts/latlong.html
il offre les fonctionnalités suivantes:
bibliothèque Python qui fait l'affaire:
[degrés décimaux Degrés Minutes Secondes] (http: // www.fcc.gov/mb/audio/bickel/DDDMMSS-decimal.html) –
Les systèmes de coordonnées et les conversions sont expliquées ici, avec pseudocode: Co-ordinate conversion (from Wikipedia) –