本文最后更新于 217 天前,其中的信息可能已经有所发展或是发生改变。
比如从GPS库里拿到坐标 103.722133,36.111375
很简单,整数部分取整在乘个100,然后小数部分拿出来乘60加起来就完事了
0.722133*60=43.32798 0.111375*60=6.6825
103*100 + 43.32798 = 10343.3280
36*100 + 6.6825 = 3606.6825
转换完成,转换的结果是:10343.3280,3606.6825
附一个Arduino的示例:
lat = String((gps.location.rawLat().deg * 100) + (gps.location.lat()-gps.location.rawLat().deg)*60);
lon = String((gps.location.rawLng().deg * 100) + (gps.location.lng()-gps.location.rawLng().deg)*60);
python的:
def transToddmm(dd):
dd = float(dd)
decimal = dd % 1
print(decimal)
return int(dd)*100 + decimal*60