官网这么说的
4.3 百度坐标为何有偏移?
国际经纬度坐标标准为WGS-84,国内必须至少使用国测局制定的GCJ-02,对地理位置进行首次加密。百度坐标在此基础上,进行了BD-09二次加密措施,更加保护了个人隐私。百度对外接口的坐标系并不是GPS采集的真实经纬度,需要通过坐标转换接口进行转换。
百度地图API中,有GPS坐标转百度坐标的功能
http://developer.baidu.com/map/wiki/index.php?title=androidsdk/guide/tool
这个转换算法百度是不会公开的,而且百度也没有提供百度坐标转成GPS坐标功能,这里我用了取巧的办法。
百度坐标和GPS坐标转换在很近的距离时偏差非常接近。
假设你有百度坐标:x1=116.397428,y1=39.90923
把这个坐标当成GPS坐标,通过接口获得他的百度坐标:x2=116.41004950566,y2=39.916979519873
通过计算就可以得到GPS的坐标:
x = 2*x1-x2,y = 2*y1-y2
x=116.38480649434001
y=39.901480480127
http://developer.baidu.com/map/wiki/index.php?title=androidsdk/guide/tool
这个转换算法百度是不会公开的,而且百度也没有提供百度坐标转成GPS坐标功能,这里我用了取巧的办法。
百度坐标和GPS坐标转换在很近的距离时偏差非常接近。
假设你有百度坐标:x1=116.397428,y1=39.90923
把这个坐标当成GPS坐标,通过接口获得他的百度坐标:x2=116.41004950566,y2=39.916979519873
通过计算就可以得到GPS的坐标:
x = 2*x1-x2,y = 2*y1-y2
x=116.38480649434001
y=39.901480480127
convertBaiduToGPS befour:(30.464729,114.577475)
convertBaiduToGPS after:(30.461196,114.565995)
转换方法如下:
public static LatLng convertGPSToBaidu(LatLng sourceLatLng) {
// 将GPS设备采集的原始GPS坐标转换成百度坐标
CoordinateConverter converter = new CoordinateConverter();
converter.from(CoordType.GPS);
// sourceLatLng待转换坐标
converter.coord(sourceLatLng);
LatLng desLatLng = converter.convert();
return desLatLng;
}
public static LatLng convertBaiduToGPS(LatLng sourceLatLng) {
// 将GPS设备采集的原始GPS坐标转换成百度坐标
CoordinateConverter converter = new CoordinateConverter();
converter.from(CoordType.GPS);
// sourceLatLng待转换坐标
converter.coord(sourceLatLng);
LatLng desLatLng = converter.convert();
double latitude = 2 * sourceLatLng.latitude - desLatLng.latitude;
double longitude = 2 * sourceLatLng.longitude - desLatLng.longitude;
BigDecimal bdLatitude = new BigDecimal(latitude);
bdLatitude = bdLatitude.setScale(6, BigDecimal.ROUND_HALF_UP);
BigDecimal bdLongitude = new BigDecimal(longitude);
bdLongitude = bdLongitude.setScale(6, BigDecimal.ROUND_HALF_UP);
return new LatLng(bdLatitude.doubleValue(), bdLongitude.doubleValue());
}
相关推荐
2. 调用接口:寻找提供百度坐标到GPS坐标转换服务的第三方API,如通过JavaScript的AJAX请求,向服务端发送转换请求。 3. 接口参数:通常需要传递的参数包括百度坐标点的经纬度,有时还需要API密钥等安全验证信息。 4...
百度坐标转换成GPS坐标,离线转换,不需要通过百度地图,精度可达到米级。同时也提供GPS坐标换成百度坐标。代码简单,自己可转成其他编程语言。
本篇将详细介绍如何使用JavaScript进行GPS坐标到百度地图坐标的转换,并提供两种方式:在线调用百度API以及离线算法。 首先,我们来看在线调用百度API的方式。百度地图提供了JavaScript API,其中包含了坐标转换的...
Gps坐标转换百度坐标
例如,当用户的位置信息是从GPS获取的WGS84坐标,但我们需要将其显示在百度地图或Google地图上时,就需要进行坐标转换。此外,对于开发者来说,理解不同坐标系间的转换原理,有助于更好地理解和优化地图服务的性能。...
通过以上步骤,你就可以使用C#编写一个能够将GPS坐标转换为百度地图坐标的工具了。这个工具对于那些需要在百度地图上展示由GPS设备获取的位置信息的应用来说非常实用,例如车载导航系统、户外定位应用等。
本文将详细讨论“GPS坐标转换百度坐标js”的相关知识点,包括GPS坐标系统、百度地图API、JavaScript编程以及批量处理坐标转换的方法。 首先,我们要了解的是GPS坐标系统。全球定位系统(GPS)使用的是WGS84坐标系,...
GPS坐标系转换成百度坐标系 经过验证很准确 希望能给你有所帮助。
百度地图为了保护其数据安全,采用了自家的加密算法,使得在百度地图上展示或者进行地图相关操作时,需要将GPS坐标转换为百度坐标。这个过程通常涉及坐标转换算法,如二维平移、旋转和平移等。 PHP是Web开发中常用...
通过GPS坐标的经纬度,经计算返回一组百度坐标数据,简单方便
在标题"GPS坐标转换成百度坐标的方法"中,涉及到了几个关键的坐标系统:GPS、GCJ-02、BD-09以及WGS-84。这些坐标系统在不同的场景下有不同的应用,下面将详细讲解它们之间的关系和转换方法。 首先,GPS(全球定位...
gps坐标转换,实现坐标转换,提供不同椭球
本文将详细介绍如何将GPS坐标转换为百度地图坐标,并提供在线和离线两种方法。 首先,我们要理解WGS84和GCJ-02坐标系的区别。WGS84是国际通用的地球坐标系统,适用于全球范围,而GCJ-02是中国特有的,对WGS84进行了...
标题中的“GPS坐标转百度坐标”是指在GIS(地理信息系统)中将全球定位系统(GPS)使用的WGS84坐标转换为百度地图所采用的BD-09坐标系统的过程。这是因为不同的地图服务提供商可能使用不同的坐标系统,导致直接在...
4. 应用转换:在需要在百度地图上展示位置的地方,使用这个转换函数将GPS坐标转换为百度坐标。 总的来说,这个话题涉及到了Android开发、GPS坐标系统、地图API的使用以及坐标转换算法。在实际项目中,理解这些概念...
然而,由于国家安全考虑,中国境内公开的GPS坐标通常会经过偏移处理,这就导致了百度坐标与WGS-84(全球标准坐标系统)之间存在差异。 接着,火星坐标系统(GCJ-02)是中国国家测绘局制定的加密算法,对原始GPS坐标...
2. **输入与输出处理**:DEMO可能提供了输入GPS坐标(经度、纬度)的接口,并输出转换后的百度坐标。这可能包括用户友好的控制台输入/输出或者图形用户界面。 3. **错误处理**:为了确保程序的健壮性,DEMO应该包含...
在标题提到的"百度坐标、高得坐标、WGS84坐标转换 js java C#"中,涉及到了三种常用的坐标系统:百度坐标(BD-09)、高德坐标(GCJ-02)以及全球广泛使用的WGS84坐标系统。这些坐标系统之间的转换对于地图应用、定位...
gps坐标多接口转换成百度坐标,每次可以同时转换20条记录数据。快捷方面,利于大数据的转换。
百度坐标系到WGS84坐标的转换通常涉及两个步骤:首先,需要将百度坐标系的XY坐标转换到CGCS2000坐标,然后将CGCS2000坐标转换到WGS84坐标。转换公式如下: 1. 百度坐标到CGCS2000坐标: \( X_{CGCS2000} = X_{BD} ...