使用百度地图API进行坐标系转换
2015-07-22 21:04
555 查看
最近在做移动APP的定位功能的时候发现系统GPS获取的位置信息再从百度地图API获取的实际地址总是有误差,偏离了好几个街道,但百度地图本身没这个问题。在网上查找一番发现了地图的坐标系一说,下面简单介绍一下主流的坐标系:
1.GCJ-02 俗称火星坐标系,由中国国家测绘局制订的地理信息系统的坐标系统。一般中国官方发布的地图上标注的经纬度都是这种坐标系的,与实际经纬度有偏差。
2.WGS84:World Geodetic System 1984,俗称地球坐标系,是为GPS全球定位系统使用而建立的坐标系统。一般手持设备(比如手机)从GPS卫星获取的坐标系就是这个坐标系。google地图、soso地图、aliyun地图、mapabc地图和amap地图所用此坐标
3.墨卡托(Mercator)坐标系,是由荷兰地图学家墨卡托(Mercator)在1569年拟定,假设地球被围在一个中空的圆柱里,其赤道与圆柱相接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,这就是一幅标准纬线为零度(即赤道)的“墨卡托投影”绘制出的世界地图。
4.BD-09 百度坐标系,百度在GCJ-02要求加密的基础上,又自己对坐标加密了一次。
我们正常使用的时候调用需要根据不同的地图类型进行坐标转换 百度地图提供了这个转换API:
http://developer.baidu.com/map/changeposition.htm
例如:http://api.map.baidu.com/geoconv/v1/?coords=114.21892734521,29.575429778924;114.21892734521,29.575429778924&from=1&to=5&ak=你的密钥
返回:
在根据返回的坐标调用百度地图的API 就能返回准确的地址了。
百度的API上有段话:
注:本接口支持回调。另外,同一个GPS坐标多次转为百度坐标时,每次转换结果都不完全一样,误差在2米范围内,属于正常误差,不影响正常使用。
呵呵~
1.GCJ-02 俗称火星坐标系,由中国国家测绘局制订的地理信息系统的坐标系统。一般中国官方发布的地图上标注的经纬度都是这种坐标系的,与实际经纬度有偏差。
2.WGS84:World Geodetic System 1984,俗称地球坐标系,是为GPS全球定位系统使用而建立的坐标系统。一般手持设备(比如手机)从GPS卫星获取的坐标系就是这个坐标系。google地图、soso地图、aliyun地图、mapabc地图和amap地图所用此坐标
3.墨卡托(Mercator)坐标系,是由荷兰地图学家墨卡托(Mercator)在1569年拟定,假设地球被围在一个中空的圆柱里,其赤道与圆柱相接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,这就是一幅标准纬线为零度(即赤道)的“墨卡托投影”绘制出的世界地图。
4.BD-09 百度坐标系,百度在GCJ-02要求加密的基础上,又自己对坐标加密了一次。
我们正常使用的时候调用需要根据不同的地图类型进行坐标转换 百度地图提供了这个转换API:
http://developer.baidu.com/map/changeposition.htm
例如:http://api.map.baidu.com/geoconv/v1/?coords=114.21892734521,29.575429778924;114.21892734521,29.575429778924&from=1&to=5&ak=你的密钥
返回:
{ status : 0, result : [ { x : 114.23074871003, y : 29.579084787993 }, { x : 114.23075628327, y : 29.579081090996 } ] }
在根据返回的坐标调用百度地图的API 就能返回准确的地址了。
百度的API上有段话:
注:本接口支持回调。另外,同一个GPS坐标多次转为百度坐标时,每次转换结果都不完全一样,误差在2米范围内,属于正常误差,不影响正常使用。
呵呵~
相关文章推荐
- 平衡的括号
- eclipse php 开发环境搭建记录
- Android入门:短信和拨打电话
- 学习的过程
- hdu 1233 还是畅通工程(kruskal求最小生成树)
- php filesize函数是个坑。。。
- 直接插入排序、折半插入排序、Shell排序、冒泡排序,选择排序
- 你的背景,是这个时代 张璁
- PAT (Basic Level) Practise (中文)1028. 人口普查(20)C语言
- MATLAB 图像处理函数(第六章)(获取图像矩形像素的运用)
- 杭电 1234 开门人与关门人
- Longest Substring Without Repeating Characters
- ***********ListView中Item处理点击Item进入另一页面***********
- RHEL一(管理文件、通配符、特殊符号)
- snmp
- js中onload和$(function(){})的区别
- Linux目录结构及文件基本操作
- PHP编辑器之Komodo Edit的快捷键
- linux patch 命令小结
- Windows下C语言查找文件例子