将纬度/经度值(DMS +指南针方向格式)转换为Android中对应的小数点值

时间:2011-08-04 16:23:47

标签: android google-maps map latitude-longitude dms

我正在开发一个Java android项目并遇到以下问题。我搜索了这么多但仍然存在转换DMS格式的纬度/经度值(例如:38°2'56''N,122°9'28''W)的相应十进制度格式的问题。

需要转换为相应十进制度格式的示例值。

38°49'59''N,26°56'59''E

38°2'56''N,122°9'28''W

34°52'58''S,56°10'58''W

谢谢

3 个答案:

答案 0 :(得分:8)

将DMS转换为十进制度时所做的全部除以60.将S除以60,将其加到M,将结果除以60,然后将其加到D中。

第二部分涉及坐标指向的方向。在一个正确的位置画出一对罗盘方向的轴(即,向上是N,右边是E,向下是S,左边是W)。这意味着对应于指向S或W的DMS值的任何十进制度值都将为负值。

38°2'56''N,122°9'28'' W - > 38.048889, -122.157778

答案 1 :(得分:3)

d°M'S在 ''

  1. 将S除以60并得到X
  2. 通过将X添加到M
  3. 来查找Y.
  4. 将Y除以60得到F
  5. 答案= D + F

  6. <强>概要

    从DMS转换到学位

    度= D +((S / 60)+ M)/ 60

    其中D和M和S是组成DMS格式的值:D°M'S''

答案 2 :(得分:1)

你可以随时在Sherif的公式中检查你的工作: http://transition.fcc.gov/mb/audio/bickel/DDDMMSS-decimal.html