zoukankan      html  css  js  c++  java
  • 百度地图(13)-定位

    1. 百度地图定位有三种情况

      第一种:浏览器定位,BMap.Geolocation 官方文档说是浏览器自带的定位接口,如果失败或不支持则调用高精IP定位。

          但是,浏览器自带的定位接口是什么接口? H5? 不知道,不过可以大概定位到位置。

      第二种:IP定位,BMap.LocalCity,根据网络的IP定位。

      第三种:SDK辅助定位,使用 Geolocation,但是开启了  enableSDKLocation。 这个应该和第一种差不太多。

    2. 浏览器定位

     1 function geoLocation() {
     2     var geoLocation = new BMap.Geolocation();
     3     geoLocation.getCurrentPosition(function (r) {
     4       if(this.getStatus() == BMAP_STATUS_SUCCESS){
     5         var mk = new BMap.Marker(r.point);
     6         map.addOverlay(mk);
     7         map.panTo(r.point);
     8         alert('您的位置:' + r.point.lng + "," + r.point.lat);
     9       }
    10       else {
    11         alert('failed' + this.getStats());
    12       }
    13     });
    14   }

    3. IP定位

    1 function cityLocation() {
    2     function myFun(result) {
    3       var cityName = result.name;
    4       map.setCenter(cityName);
    5       alert("当前城市"+cityName);
    6     }
    7     var myCity = new BMap.LocalCity();
    8     myCity.get(myFun);
    9   }

    4. SDK辅助定位

     1 function sdkLocation() {
     2     var geoLocation = new BMap.Geolocation();
     3     geoLocation.enableSDKLocation();
     4     geoLocation.getCurrentPosition(function (r) {
     5       if(this.getStatus() == BMAP_STATUS_SUCCESS){
     6         var mk = new BMap.Marker(r.point);
     7         map.addOverlay(mk);
     8         //map.panTo(r.point);
     9         console.log('您的新位置:' + r.point.lng + "," + r.point.lat);
    10       }
    11       else {
    12         alert('failed' + this.getStats());
    13       }
    14     });
    15   }

    5. 页面显示

     

    6. 代码参考

    https://github.com/WhatGIS/bdMap

  • 相关阅读:
    C语言学习之指针
    IT人和普洱茶
    茶如人生 你是什么茶?
    普洱茶的冲泡技巧
    普洱茶保健功效
    廖雪峰Python总结3
    廖雪峰Python总结2
    Linux之软件包安装管理
    Linux常用命令6 关机重启命令
    Linux之Vim编辑器
  • 原文地址:https://www.cnblogs.com/googlegis/p/14685353.html
Copyright © 2011-2022 走看看