百度地图获取行政区边界坐标

输入行政区名称,获取相应的行政区边界坐标

<!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=xx"></script>
          <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.js"></script>
          <title>添加行政区划</title>
     </head>
     <body>
          <div id="getCity" style="margin: 1% 40%;">
              <input type="text" placeholder="请输入行政区名字" />
              <button id="city">获取行政区边界坐标</button>
          </div>
          <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();
     $('#city').click(function() {
          var city = $(':input').val();
          var bdary = new BMap.Boundary();
          bdary.get(city, function(rs) { //获取行政区域
              map.clearOverlays(); //清除地图覆盖物      
              var count = rs.boundaries.length; //行政区域的点有多少个
              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"
                   }); //建立多边形覆盖物
                   var str = JSON.stringify(ply.ia); //将BMap获取的行政区边界经纬度转为字符串
                   spiltStr(str);
                   map.addOverlay(ply); //添加覆盖物
                   pointArray = pointArray.concat(ply.getPath());
              }
              map.setViewport(pointArray); //调整视野 
          });
     });
     //字符串封装为json
     function spiltStr(city) {
          //console.log(city+'---')
          var str = "121.34277300108,31.300726938605;121.34023490295,31.30656768649;121.34101430412,31.321852305581;121.34532986852,31.32373744307;121.34507562469,31.326325179418;121.34279680099,31.327430729214;121.33368722478,31.352486594706;121.32863323993,31.355946076452;121.3306342856,31.389518049891;121.32683032531,31.41448550211;121.33644426228,31.420048486776;121.33796679321,31.419826266008;121.33974283911,31.427986737928;121.33898864558,31.440913595385;121.33444416932,31.453434852669;121.32712127167,31.459698918395;121.32359337774,31.475180614573;121.31526712011,31.489321129362;121.31449534014,31.502646507446;121.29513460234,31.511763775428;121.28658896966,31.509453948404;121.27854782016,31.503306859672;121.25459705023,31.498569551283;121.21061795124,31.479894989687;121.20080623465,31.473441396056;121.19227370437,31.461329066124;121.18074389625,31.455132109974;121.17248676891,31.457784975575;121.15417124487,31.449591888376;121.15190698691,31.44485092269;121.16995564339,31.438369269356;121.15641170403,31.42808158186;121.16368200305,31.418036455773;121.15615209913,31.408916433233;121.15389894579,31.396855643986;121.14636752368,31.389519869487;121.1216241984,31.381207905131;121.126436312,31.375522857236;121.11327467502,31.372544843095;121.11504878311,31.358515688821;121.12543166,31.355738088985;121.12517943556,31.350576427542;121.13706169265,31.348468587078;121.13626008815,31.30993641992;121.14684967884,31.308793560918;121.15113791549,31.315474234933;121.16066357022,31.29917558545;121.16692386311,31.291073907869;121.16166696203,31.285625519425;121.16718195826,31.276446521814;121.17544355574,31.279163976083;121.18898716896,31.263877724792;121.20505391684,31.260119976477;121.21562156159,31.267376880475;121.27097267115,31.262577404004;121.27425078362,31.26044885246;121.29337239048,31.249760859417;121.29940623897,31.238478630296;121.32079145614,31.233202075819;121.34077824014,31.238325554883;121.34559319768,31.244083837124;121.3549768665,31.248019413486;121.36690797737,31.246319504389;121.37222869771,31.253136099939;121.3863911862,31.256071762754;121.3808205898,31.26662893588;121.36689179338,31.268484647818;121.36561439598,31.274102752167;121.35038733712,31.278662550346;121.34277300108,31.300726938605";
          var points = [];
          $.each(str.split(";"), function(index, value) {
              var point = {};
              point.lng = value.split(',')[0];
              point.lat = value.split(',')[1];
              points.push(point);
          });
          var data = JSON.stringify(points);
          if(city == data) {
              console.log('true');
          }
          //console.log(data);
     }
</script>
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
地图上画出各省市边界,北京市密云县json内容如下: {"type": "FeatureCollection", "features": [{"type": "Feature","properties":{"id":"110228","name":"密云县","cp":[117.0923,40.5121],"childNum":1},"geometry":{"type":"Polygon","coordinates":[[[116.7586,40.7064],[116.7847,40.7016],[116.7888,40.714],[116.7902,40.727],[116.7819,40.7524],[116.7833,40.7579],[116.7902,40.7517],[116.8025,40.7462],[116.819,40.7504],[116.8272,40.749],[116.8396,40.7607],[116.8341,40.7703],[116.8506,40.7751],[116.8506,40.7785],[116.8671,40.7847],[116.8629,40.7922],[116.8712,40.7943],[116.8739,40.7991],[116.8808,40.7977],[116.8863,40.8012],[116.8959,40.7936],[116.8945,40.7819],[116.8973,40.7778],[116.9234,40.7737],[116.9247,40.7627],[116.9289,40.7565],[116.9234,40.7524],[116.9261,40.7449],[116.9412,40.7401],[116.9453,40.7284],[116.9563,40.7229],[116.9659,40.714],[116.9646,40.7092],[117.0044,40.6968],[117.0195,40.6954],[117.0305,40.692],[117.0497,40.7002],[117.084,40.7023],[117.0964,40.7057],[117.1115,40.7071],[117.117,40.6995],[117.1225,40.7009],[117.1527,40.6968],[117.1664,40.6989],[117.1788,40.6934],[117.1829,40.6975],[117.2063,40.6947],[117.231,40.6844],[117.242,40.6769],[117.2612,40.681],[117.2777,40.6666],[117.2914,40.6597],[117.3257,40.6604],[117.3367,40.6631],[117.3367,40.6666],[117.3463,40.6741],[117.3615,40.6748],[117.3903,40.6837],[117.4068,40.6865],[117.4205,40.6865],[117.4507,40.6796],[117.4644,40.6734],[117.4796,40.6776],[117.4947,40.6748],[117.5056,40.6666],[117.507,40.6549],[117.5029,40.6528],[117.5015,40.6364],[117.4796,40.6357],[117.4713,40.6474],[117.448,40.6419],[117.4301,40.6405],[117.4219,40.6377],[117.4178,40.6185],[117.4136,40.6062],[117.4205,40.5945],[117.4232,40.5821],[117.4301,40.5787],[117.426,40.5732],[117.4205,40.5691],[117.404,40.5739],[117.4013,40.5698],[117.3944,40.567],[117.3889,40.5615],[117.3766,40.5663],[117.3656,40.5759],[117.3505,40.5801],[117.334,40.5766],[117.3106,40.5766],[117.2955,40.567],[117.2667,40.5581],[117.2502,40.5485],[117.253,40.5416],[117.2502,40.5375],[117.2598,40.5196],[117.2475,40.5121],[117.2392,40.5176],[117.2337,40.5135],[117.2131,40.5128],[117.2104,40.5073],[117.209,40.497],[117.2173,40.4949],[117.2282,40.4812],[117.2255,40.4778],[117.2365,40.4688],[117.2351,40.4578],[117.2639,40.4414],[117.2571,40.4297],[117.2502,40.429],[117.2337,40.4166],[117.2324,40.4036],[117.2392,40.3988],[117.2406,40.3947],[117.2365,40.394],[117.2351,40.3892],[117.2282,40.3857],[117.2241,40.3754],[117.2186,40.3775],[117.209,40.3734],[117.1925,40.3761],[117.1774,40.3748],[117.1637,40.3706],[117.1472,40.372],[117.1472,40.3672],[117.139,40.3624],[117.1184,40.3548],[117.1129,40.3542],[117.1005,40.3603],[117.0593,40.3377],[117.0538,40.337],[117.0525,40.3439],[117.0374,40.3473],[117.0236,40.337],[117.0126,40.326],[117.0113,40.3082],[117.0058,40.3027],[117.0003,40.302],[117.0044,40.2958],[116.9728,40.2848],[116.9522,40.2621],[116.9495,40.2567],[116.9659,40.2374],[116.9536,40.2292],[116.9412,40.2237],[116.9316,40.2306],[116.9206,40.223],[116.9028,40.2244],[116.8973,40.2319],[116.8918,40.2347],[116.8932,40.2415],[116.8739,40.2683],[116.8753,40.2759],[116.8712,40.2889],[116.8588,40.2917],[116.8492,40.3102],[116.8341,40.3082],[116.8272,40.2985],[116.8231,40.2862],[116.819,40.2834],[116.808,40.2869],[116.7888,40.2889],[116.7833,40.2793],[116.7696,40.2731],[116.7517,40.2752],[116.7448,40.2793],[116.7352,40.2793],[116.7435,40.2889],[116.7435,40.2944],[116.7668,40.3143],[116.7696,40.3219],[116.7682,40.3253],[116.7517,40.3267],[116.7503,40.3315],[116.7448,40.3349],[116.7448,40.3391],[116.7297,40.3349],[116.7311,40.3391],[116.7229,40.3397],[116.727,40.361],[116.7188,40.361],[116.7188,40.3693],[116.7133,40.3686],[116.7064,40.3761],[116.7119,40.3802],[116.7091,40.3871],[116.7119,40.3919],[116.7215,40.396],[116.7242,40.4036],[116.7242,40.4166],[116.7201,40.4235],[116.7188,40.4297],[116.7201,40.4386],[116.7229,40.4427],[116.7229,40.4475],[116.7078,40.4661],[116.7009,40.4812],[116.6927,40.4881],[116.6982,40.4942],[116.7009,40.508],[116.7119,40.5183],[116.7133,40.5231],[116.7174,40.5251],[116.7091,40.532],[116.7091,40.543],[116.6776,40.5519],[116.6844,40.554],[116.6982,40.5656],[116.7064,40.5643],[116.7146,40.5746],[116.7119,40.5849],[116.7091,40.5904],[116.7105,40.6007],[116.705,40.6027],[116.7078,40.6075],[116.7023,40.6151],[116.7064,40.624],[116.7023,40.6316],[116.7119,40.6425],[116.7119,40.6556],[116.7091,40.6618],[116.7146,40.668],[116.7146,40.6796],[116.7311,40.6913],[116.7476,40.6968],[116.7586,40.7064]]]}} ]}

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值