地球坐标转换(度分秒转度),火星坐标,百度坐标转换 c++,js ,c# 算法通用
地球坐标,火星坐标,百度坐标转换 标准地球坐标即GPS设备获得的坐标,该坐标需要经过国家测绘局进行加密后形成火星坐标(GCJ-02 ),我们用的google坐标和高德地图坐标也就是火星坐标 百度地图,在火星坐标的基础上再进行一次加密,形成了百度地图上的坐标,因此,直接将标准地球坐标显示在百度地图上是会有几百米的偏差的。按照此原理,标准GPS坐标经过两步的转换可得到百度坐标。因为在处理百度地图时,例如查询其POI都需要百度地图上的坐标,而不是标准坐标,那么这样的转换就是必要的了。下面是两步转换的C++ 程序,供开发的人做一个参考。 标准gps WGS-84 :gps硬件 ,google地球 火星坐标 GCJ-02:google地图 、 高德地图 百度坐标BD-09 :百度坐标转换 注意: 一般从GPS设备上取到的是标准GPS数据,也就是原始第一层数据, 同时其可能是度、度分、度分秒的格式数据,最后都要转化为度的数据进行运算,转化方式如下 度格式 = 度+分/60;(数据为度分) 例子 30°33.1786(度分格式) = (度格式) 30 +33.1786/60= 30.552976666666666666666666666667(度格式); 度格式 =度+分/60 +秒/3600;(数据为度分秒) 同上 //=====================================