2010-11-03 87 views
0

我自己的GPS跟踪器发送的纬度和经度到我的服务器,因为它是在GPS追踪器手册中所描述(例如,对于纬度,经度相同):GPS跟踪器坐标转换成谷歌地图格式,严谨

xxmm.dddd, where 
xx = degrees; 
mm = minutes; 
dddd = decimal part of minutes; for example 11 deg. 26.6639 min. 

我想要一份到接收到的坐标转换为谷歌地图格式,对于这个purpuse我使用公式:

result = xx + (mm.dddd)/60 

因为,有一个除法结果可以被呈现为周期性分数,例如 - 1.6666(6 ),但这是非常糟糕的,因为我失去了很多的GPS prec即将倒闭。

问题

  1. 什么是我收到的坐标格式的名称?
  2. 谷歌地图使用的格式名称是什么?
  3. 将收到的GPS位置转换为Google地图格式的最佳公式是什么?

回答

2
  1. 度,分,秒
  2. 十进制度
  3. 十进制度=度+(分钟/ 60)+(秒/ 3600)
+0

但是,不管怎样,因为仍有除法运算 - 大约失去严谨什么? – Sergey 2010-11-04 06:17:53

0

如果想DDD转换MM.MMM到Decimal Degress,我假设你知道那个位置的南北东或西。

  1. 格式名称是DMS(Degress Minutes &秒),它是地理坐标系。
  2. 谷歌地图的格式是小数位数。
  3. 用于将DMS转换为十进制数字:D +(M/60)+(S/3600)如Galen表示。

例纬度:

int xD = 020; 
int xM = 10; 
int xS = 7587; 

例经度:

int yD = 130; 
int yM = 50; 
int yS = 5475; 

转换:

Lat = 020+(10/60)+(7587/3600); 
Lon = 130+(50/60)+(5475/3600);