浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。
坐标知识介绍

.国内主流坐标系类型

主要有以下三种

1. WGS84:一种大地坐标系,也是目前广泛使用的GPS全球卫星定位系统使用的坐标系。

2. GCJ02:由中国国家测绘局制订的地理信息系统的坐标系统,是由WGS84坐标系经过加密后的坐标系。

3. BD09:百度坐标系,在GCJ02坐标系基础上再次加密。其中BD09LL表示百度经纬度坐标,BD09MC表示百度墨卡托米制坐标。

注意:百度地图SDK在国内(包括港澳台)使用的是BD09LL坐标(定位SDK默认使用GCJ02坐标);在海外地区,统一使用WGS84坐标。开发者在使用百度地图相关服务时,请注意选择。

.百度地图SDK是用什么坐标类型?

1. 国内(包括港澳台),输入、输出默认使用BD09LL坐标。支持全局声明为GCJ02坐标类型,全应用支持输入GCJ02坐标,返回GCJ02坐标。

2. 海外地区,输出为WGS84坐标。

.为什么需要坐标转换?

国内(包括港澳台):默认使用BD09LL坐标,国外使用WGS84坐标。若使用非BD09LL坐标直接叠加在百度地图上,因坐标值不同,展示位置会有偏移。

因此:

1)在国内(包括港澳台)通过其他坐标系(WGS84、GCJ02)调用百度地图服务时需要首先将其他坐标转换为BD09LL,再访问百度地图数据。

2)在国外,POI使用WGS84坐标数值,则无需转换、百度地图国外即使用WGS84坐标。

.非百度坐标系,如何转换成百度坐标系?

1. 通用坐标转换方法: 手动调用百度地图SDK坐标转换接口,将输入的WGS84或GCJ02坐标转换为BD09LL坐标。适用于所有百度地图开发者,是转换为百度BD09LL坐标的官方基础算法。

2. 自动坐标转换算法:支持全局声明为GCJ02坐标类型,全应用内自动执行从GCJ02到BD09LL的坐标转换,即直接输入GCJ02坐标,返回GCJ02坐标。

通用坐标转换方法(坐标之间互相转换)

开发者可以手动调用百度地图SDK坐标转换接口,将输入的WGS84或GCJ02坐标转换为BD09LL坐标。如未对坐标参数进行设置,默认使用BD09LL坐标系。

注意:请勿使用其他非百度地图SDK提供的坐标转换方法!!!

.其他坐标转换百度经纬度坐标BD09LL

将google地图、高德地图、腾讯地图、搜狗地图所用坐标转换成百度地图坐标

//初始化左边转换工具类,指定源坐标类型和坐标数据
//sourceLatLng 待转换坐标
CoordinateConverter converter  = new CoordinateConverter()
        .from(COMMON)
        .coord(sourceLatLng);

//转换坐标
LatLng desLatLng = converter.convert();


将GPS设备采集的原始GPS坐标转换成百度坐标

//初始化坐标转换工具类,指定源坐标类型和坐标数据
// sourceLatLng待转换坐标
CoordinateConverter converter  = new CoordinateConverter()
        .from(CoordinateConverter.CoordType.GPS)
        .coord(sourceLatLng);

//desLatLng 转换后的坐标
LatLng desLatLng = converter.convert();

..百度墨卡托坐标转百度经纬度坐标(BD09MC转BD09LL)

//初始化坐标转换工具类,设置源坐标类型和原坐标数据
CoordinateConverter converter  = new CoordinateConverter()
        .from(BD09MC)
        .coord(sourceLatLng);

//转换坐标
LatLng desLatLng = converter.convert();

自动坐标转换(GCJ02坐标输入输出)

支持全局声明为GCJ02坐标类型,全应用内自动执行从GCJ02到BD09LL的坐标转换,即直接输入GCJ02坐标,返回GCJ02坐标。

.声明全局声明坐标类型

//自4.3.0起,百度地图SDK所有接口均支持百度坐标和国测局坐标,用此方法设置您使用的坐标类型.
//包括BD09LL和GCJ02两种坐标,默认是BD09LL坐标。
SDKInitializer.setCoordType(CoordType.GCJ02);

.获取当前使用的坐标类型

SDKInitializer.getCoordType();//BD09LL或者GCJ02坐标
注意事项

.自动坐标转换方法仅适用于国内(包括港澳台)输入坐标为GCJ02坐标的情况。

.百度地图国外即使用WGS84坐标,如需要支持海外地图,直接使用WGS84坐标访问即可,无需转换。如需要同时访问国内和国外数据,自动坐标转换方法不适用。

.百度地图SDK在国内(包括港澳台)使用的是BD09LL坐标(定位SDK默认使用GCJ02坐标);在海外地区,统一使用WGS84坐标,开发者在使用百度地图相关服务时,请注意选择。

  • 文档根本没法用

  • 文档水平很差

  • 文档水平一般

  • 文档不错

  • 文档写的很好

如发现文档错误,或对此文档有更好的建议,请在下方反馈。问题咨询请前往反馈平台提交工单咨询。

提交反馈

拖动标注工具

添加矩形标注

添加箭头标注

完成

取消