views:

229

answers:

3

Google Maps gives me the Lat and Long of a location in decimal notation like this:

38.203655,-76.113281

How do I convert those to Coords (Degrees, Minutes , Seconds)

+5  A: 

Co-ordinate systems and conversions are explained here, with pseudocode: Co-ordinate conversion (from Wikipedia)

Gareth Saul
+2  A: 

38.203655 is a decimal value of degrees. There are 60 minutes is a degree and 60 seconds in a minute (1degree == 60min == 3600s).

So take the fractional part of the value, i.e. 0.203655, and multiply it with 60 to get minutes, i.e. 12.2193, which is 12 minutes, and then repeat for the fractional part of minutes, i.e. 0.2193 = 13.158000 seconds.

Example in 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)
liwp