百度地图坐标在地图上发生偏移

前言:我在用GPS获取点在百度上描的时候,发现坐标有偏移,还很厉害,没有十万八千里,也有二百五了。PS:用百度的坐标,是木有偏移的。(哇咔咔,我也是才发现,坐标有好多啊,不是我因为的地理学上的坐标,就那一个概念。后面还会提到,goole的坐标,高德的坐标。)你若想问我,为啥要用GPS,而不直接采用百度的。哈哈,本宝宝心里也苦,也想简单的搞。结果。。唉,各种梗,非得强迫我使用原生的GPS定位。若是,此次demo成功,本宝宝补上一篇解释一下,遇到的这个大坑。


遇到的场景:原生的GPS坐标,直接在百度上绘制,发生很大偏移。

解决办法:在百度官方找到了,坐标转换的代码(你问我为啥要转换,好吧,上面忘了说了,不过是咋天朝觉得,这样做安全些。具体内幕,自行百度)

api地址:http://lbsyun.baidu.com/index.php?title=androidsdk/guide/tool#.E5.9D.90.E6.A0.87.E8.BD.AC.E6.8D.A2


我的部分代码:

        // 初始化地图
        mMapView = (MapView) findViewById(R.id.bmapView);
        mBaiduMap = mMapView.getMap();
        
        //设定中心点坐标 
        LatLng centerpos = new LatLng(30.459172,114.427361);
        
        // 将GPS设备采集的原始GPS坐标转换成百度坐标  
        CoordinateConverter converter  = new CoordinateConverter();  
        converter.from(CoordType.GPS);  
        // sourceLatLng待转换坐标  
        converter.coord(centerpos);  
        LatLng desLatLng = converter.convert();
        
        //地图状态创建者
        MapStatus.Builder builder = new MapStatus.Builder();
        //设定中心
        builder.target(desLatLng).zoom(17.0f);
        //改变地图状态
        mBaiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
        mBaiduMap.setIndoorEnable(true);


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值