`
xwangly
  • 浏览: 132264 次
  • 性别: Icon_minigender_1
  • 来自: 鄂州
社区版块
存档分类
最新评论

百度坐标与GPS坐标转换

 
阅读更多

 官网这么说的

 

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 

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());
    }
 
 

 

分享到:
评论

相关推荐

    百度坐标批量转换为GPS坐标

    2. 调用接口:寻找提供百度坐标到GPS坐标转换服务的第三方API,如通过JavaScript的AJAX请求,向服务端发送转换请求。 3. 接口参数:通常需要传递的参数包括百度坐标点的经纬度,有时还需要API密钥等安全验证信息。 4...

    百度坐标转GPS坐标(离线)

    百度坐标转换成GPS坐标,离线转换,不需要通过百度地图,精度可达到米级。同时也提供GPS坐标换成百度坐标。代码简单,自己可转成其他编程语言。

    GPS坐标转换为百度地图坐标(JS)

    本篇将详细介绍如何使用JavaScript进行GPS坐标到百度地图坐标的转换,并提供两种方式:在线调用百度API以及离线算法。 首先,我们来看在线调用百度API的方式。百度地图提供了JavaScript API,其中包含了坐标转换的...

    Gps坐标转换百度坐标

    Gps坐标转换百度坐标

    Gps坐标系转换Java工具类WGS坐标与Google和百度坐标互转

    例如,当用户的位置信息是从GPS获取的WGS84坐标,但我们需要将其显示在百度地图或Google地图上时,就需要进行坐标转换。此外,对于开发者来说,理解不同坐标系间的转换原理,有助于更好地理解和优化地图服务的性能。...

    C#GPS坐标转百度地图坐标

    通过以上步骤,你就可以使用C#编写一个能够将GPS坐标转换为百度地图坐标的工具了。这个工具对于那些需要在百度地图上展示由GPS设备获取的位置信息的应用来说非常实用,例如车载导航系统、户外定位应用等。

    GPS坐标转换百度坐标js

    本文将详细讨论“GPS坐标转换百度坐标js”的相关知识点,包括GPS坐标系统、百度地图API、JavaScript编程以及批量处理坐标转换的方法。 首先,我们要了解的是GPS坐标系统。全球定位系统(GPS)使用的是WGS84坐标系,...

    java GPS坐标系转百度坐标系

    GPS坐标系转换成百度坐标系 经过验证很准确 希望能给你有所帮助。

    GPS批量转换百度坐标

    百度地图为了保护其数据安全,采用了自家的加密算法,使得在百度地图上展示或者进行地图相关操作时,需要将GPS坐标转换为百度坐标。这个过程通常涉及坐标转换算法,如二维平移、旋转和平移等。 PHP是Web开发中常用...

    GPS坐标转百度坐标java算法

    通过GPS坐标的经纬度,经计算返回一组百度坐标数据,简单方便

    GPS坐标转换成百度坐标的方法_GCJ-02_BD-09_WGS_GPS_

    在标题"GPS坐标转换成百度坐标的方法"中,涉及到了几个关键的坐标系统:GPS、GCJ-02、BD-09以及WGS-84。这些坐标系统在不同的场景下有不同的应用,下面将详细讲解它们之间的关系和转换方法。 首先,GPS(全球定位...

    gps坐标转换,实现坐标转换

    gps坐标转换,实现坐标转换,提供不同椭球

    坐标转换——GPS转百度

    本文将详细介绍如何将GPS坐标转换为百度地图坐标,并提供在线和离线两种方法。 首先,我们要理解WGS84和GCJ-02坐标系的区别。WGS84是国际通用的地球坐标系统,适用于全球范围,而GCJ-02是中国特有的,对WGS84进行了...

    gps坐标转百度坐标

    标题中的“GPS坐标转百度坐标”是指在GIS(地理信息系统)中将全球定位系统(GPS)使用的WGS84坐标转换为百度地图所采用的BD-09坐标系统的过程。这是因为不同的地图服务提供商可能使用不同的坐标系统,导致直接在...

    GPS转百度坐标demo、

    4. 应用转换:在需要在百度地图上展示位置的地方,使用这个转换函数将GPS坐标转换为百度坐标。 总的来说,这个话题涉及到了Android开发、GPS坐标系统、地图API的使用以及坐标转换算法。在实际项目中,理解这些概念...

    百度坐标转火星坐标软件,附源码及生成软件

    然而,由于国家安全考虑,中国境内公开的GPS坐标通常会经过偏移处理,这就导致了百度坐标与WGS-84(全球标准坐标系统)之间存在差异。 接着,火星坐标系统(GCJ-02)是中国国家测绘局制定的加密算法,对原始GPS坐标...

    GPSConvertBaiDu_java_GPS转百度_DEMO_百度坐标_

    2. **输入与输出处理**:DEMO可能提供了输入GPS坐标(经度、纬度)的接口,并输出转换后的百度坐标。这可能包括用户友好的控制台输入/输出或者图形用户界面。 3. **错误处理**:为了确保程序的健壮性,DEMO应该包含...

    百度坐标、高得坐标、WGS84坐标转换 js java C#

    在标题提到的"百度坐标、高得坐标、WGS84坐标转换 js java C#"中,涉及到了三种常用的坐标系统:百度坐标(BD-09)、高德坐标(GCJ-02)以及全球广泛使用的WGS84坐标系统。这些坐标系统之间的转换对于地图应用、定位...

    gps坐标多接口转换成百度坐标

    gps坐标多接口转换成百度坐标,每次可以同时转换20条记录数据。快捷方面,利于大数据的转换。

    百度坐标系的XY坐标 TO WGS84坐标系的XY转换工具

    百度坐标系到WGS84坐标的转换通常涉及两个步骤:首先,需要将百度坐标系的XY坐标转换到CGCS2000坐标,然后将CGCS2000坐标转换到WGS84坐标。转换公式如下: 1. 百度坐标到CGCS2000坐标: \( X_{CGCS2000} = X_{BD} ...

Global site tag (gtag.js) - Google Analytics