Converting Latitude/Longitude values(DMS+Compass Direction format) to corresponding Decimal Point values in Android
Solution 1
All you're doing when you convert DMS to decimal degrees is dividing by 60. Divide S by 60, add it to M, divide that result by 60, then add it to D.
The second part deals with the direction that the coordinates point. Picture a pair of axes with compass directions in their correct locations (i.e., up is N, right is E, down is S, left is W). This means that any decimal degree value corresponding to a DMS value that pointed either S or W is going to be negative.
38°2'56''N, 122°9'28''W -> 38.048889, -122.157778
Solution 2
D°M'S''
- Divide S by 60 and get X
- Find Y by adding X to M
- Divide Y by 60 to get F
- Answer = D + F
SUMMARY
TO CONVERT FROM DMS TO DEGREE
Degrees = D + ((S/60)+M)/60
Where D and M and S are the values that compose the DMS format : D°M'S''
Solution 3
And you can always check your work with Sherif's formula here: http://transition.fcc.gov/mb/audio/bickel/DDDMMSS-decimal.html
JibW
Updated on June 06, 2022Comments
-
JibW almost 2 years
I am working on an Java android project and have the following issue. I Searched so much but still I have the problem of converting the Latitude/Longitude values that are in DMS format (Eg: 38°2'56''N, 122°9'28''W) for their corresponding Decimal Degrees format.
Example values that need to be converted for their corresponding decimal degrees format.
38°49'59''N, 26°56'59''E
38°2'56''N, 122°9'28''W
34°52'58''S, 56°10'58''W
Thank you