百度地图获取指定地区/省市区的区域范围坐标

第一步:打开百度地图网址:地图JS API示例 | 百度地图开放平台

第二步:复制以下代码到网站的编辑器

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <style type="text/css">
        body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑";}
    </style>
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script>
    <title>添加行政区划</title>
</head>
<body>
    <div id="allmap"></div>
  
</body>
</html>

<script type="text/javascript">
    // 百度地图API功能
    var map = new BMap.Map("allmap");
    map.centerAndZoom(new BMap.Point(116.403765, 39.914850), 5);
    map.enableScrollWheelZoom();

    function getBoundary(){       
        var bdary = new BMap.Boundary();
        bdary.get("石家庄市", function(rs){       //获取行政区域
            map.clearOverlays();        //清除地图覆盖物       
            var count = rs.boundaries.length; //行政区域的点有多少个
          console.log(rs.boundaries);
         
          
          var content = rs.boundaries
          var fileName = 'test.txt'
          var aLink = document.createElement('a');
          var blob = new Blob([content]);
          var evt = document.createEvent("HTMLEvents");
          evt.initEvent("click", false, false);
          aLink.download = fileName;
          aLink.href = URL.createObjectURL(blob);
          aLink.dispatchEvent(evt);
          aLink.click();
          
          
            if (count === 0) {
                alert('未能获取当前输入行政区域');
                return ;
            }
              var pointArray = [];
            for (var i = 0; i < count; i++) {
                var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2, strokeColor: "#ff0000"}); //建立多边形覆盖物
                map.addOverlay(ply);  //添加覆盖物
                pointArray = pointArray.concat(ply.getPath());
            }    
            map.setViewport(pointArray);    //调整视野  
            addlabel();               
        });   
    }

    setTimeout(function(){
        getBoundary();
    }, 2000);
</script>

第三步:得到text文件的经纬度坐标,直接下载到电脑指定为止

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用百度地图API来实现前端内网开发的地图选点获取坐标和具体地址。以下是实现步骤: 1. 注册百度地图开发者账号,创建应用,获取密钥。 2. 在前端页面中引入百度地图API的JavaScript库: ``` <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script> ``` 3. 创建地图容器: ``` <div id="map" style="width: 100%; height: 500px;"></div> ``` 4. 初始化地图: ``` var map = new BMap.Map("map"); // 创建地图实例 var point = new BMap.Point(116.404, 39.915); // 创建点坐标 map.centerAndZoom(point, 15); // 初始化地图,设置中心点坐标和缩放级别 map.enableScrollWheelZoom(true); // 启用滚轮缩放 ``` 5. 添加地图控件: ``` var geolocationControl = new BMap.GeolocationControl(); // 定位控件 var navigationControl = new BMap.NavigationControl(); // 缩放平移控件 var overviewMapControl = new BMap.OverviewMapControl(); // 缩略图控件 var scaleControl = new BMap.ScaleControl(); // 比例尺控件 map.addControl(geolocationControl); map.addControl(navigationControl); map.addControl(overviewMapControl); map.addControl(scaleControl); ``` 6. 添加地图事件监听: ``` map.addEventListener("click", function(e) { var point = e.point; // 获取点击的点坐标 var geoc = new BMap.Geocoder(); // 创建地理编码实例 geoc.getLocation(point, function(rs) { var addComp = rs.addressComponents; // 获取地址信息 var address = addComp.province + addComp.city + addComp.district + addComp.street + addComp.streetNumber; // 拼接地址信息 console.log(point.lng + ", " + point.lat); // 输出坐标 console.log(address); // 输出地址 }); }); ``` 以上就是实现前端内网开发的地图选点获取坐标和具体地址的步骤。百度地图API提供了丰富的功能和文档,您可以参考官方文档进行更详细的开发。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值