国内主流坐标系类型
主要有以下三种
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 =newcoordinateconverter().from(common).coord(sourcelatlng);//转换坐标latlng deslatlng = converter.convert();
将gps设备采集的原始gps坐标转换成百度坐标
//初始化坐标转换工具类,指定源坐标类型和坐标数据// sourcelatlng待转换坐标coordinateconverter converter =newcoordinateconverter().from(coordinateconverter.coordtype.gps).coord(sourcelatlng);//deslatlng 转换后的坐标latlng deslatlng = converter.convert();
百度墨卡托坐标转百度经纬度坐标(bd09mc转bd09ll)
//初始化坐标转换工具类,设置源坐标类型和原坐标数据coordinateconverter converter =newcoordinateconverter().from(bd09mc).coord(sourcelatlng);//转换坐标latlng deslatlng = converter.convert();
支持全局声明为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坐标,开发者在使用百度地图相关服务时,请注意选择。
上一篇
下一篇
本篇文章对您是否有帮助?