批量获取百度地图中的县级以上行政区域的边界数据

阅读: 评论:0

批量获取百度地图中的县级以上行政区域的边界数据

批量获取百度地图中的县级以上行政区域的边界数据

最近在做一个演示DEMO的时候,需要省界和市一级界线的数据。以前自己是有这样的SHP数据的,然而现在由于行政区划更新很快,而自己之前下的数据还是2010年版本的国家基础数据。


网上没有相关的最新的界线数据,只好自己去搜索一下。还是不少人在做这样的东西的,如.html,.html等。而且都是利用百度地图的接口来实现的。


刚好按照网上的方法,自己也能搞定某一个边界的下载,按照网上的一个HTML页面就可以搞定的。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ".dtd">
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>获取地区轮廓线</title>
<script type="text/javascript" src="=1.3">
</script>
<style type="text/css">
body{font-size:13px;margin:10px}
#container{width:800px;height:500px;border:1px solid gray}
</style>
</head>
<body>
<div id="container"></div>
<br />
输入省、直辖市或县名称:<input type="text" id="districtName" style="width:80px" value="重庆市">
<input type="button" οnclick="getBoundary()" value="获取轮廓线">
<textarea id="Div1" style="width:100%;height:200px"></textarea>


<script type="text/javascript">
var map = new BMap.Map("container");
AndZoom(new BMap.Point(116.403765, 39.914850), 5);
map.addControl(new BMap.NavigationControl({type: BMAP_NAVIGATION_CONTROL_SMALL}));
ableScrollWheelZoom();


function getBoundary(){       
    var bdary = new BMap.Boundary();
    var name = ElementById("districtName").value;
    (name, function(rs){       //获取行政区域
        map.clearOverlays();        //清除地图覆盖物  
        
    ElementById('Div1').innerText = rs.boundaries; 
        var count = rs.boundaries.length; //行政区域的点有多少个
        for(var i = 0; i < count; i++){
            var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2, strokeColor: "#ff0000"}); //建立多边形覆盖物
            map.addOverlay(ply);  //添加覆盖物
            map.Path());    //调整视野         
        }            
    });  
}
</script>
</body>
</html>



但是中国的县级以上区域总共有3500多个,这样的话,逐个弄肯定是不行的。

于是呢,采用的webbrowser来实现对边界数据的批量下载。


其原理非常简单,就是通过webbrowser的document获取页面中指定的input和按钮,进行消息触发。



由于百度提供的边界线接口中,县级区域数据并未完全更新完整,如三沙市,广丰县实质上已经变为区等,所以这样界线数据相对来说还是有些滞后。


本文发布于:2024-02-02 16:49:44,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170686378245132.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23