百度地图api中添加行政区划,怎么实现多个

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度地图api中添加行政区划,怎么实现多个相关的知识,希望对你有一定的参考价值。

参考技术A <!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/getscript?v=1.4"></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(112.533643,32.998098), 9);

map.enableScrollWheelZoom();
madeBoundary();

//区域图
function madeBoundary()

var datas = new Array("南召县-#665599","方城县-#559955","邓州市-#666ddd","社旗县-#1199cc");
var bdary = new BMap.Boundary();
for(var i=0;i<datas.length;i++)
getBoundary(datas[i],bdary);




//设置区域图

function getBoundary(data,bdary)
data = data.split("-");
bdary.get(data[0], function(rs) //获取行政区域
var count = rs.boundaries.length; //行政区域的点有多少个

var pointArray = [];
for (var i = 0; i < count; i++)
var ply = new BMap.Polygon(rs.boundaries[i], strokeWeight: 2, strokeColor: "#ff0000",fillOpacity:0.5,fillColor:data[1]); //建立多边形覆盖物

map.addOverlay(ply); //添加覆盖物



);



</script>

百度地图行政区绘制

参考技术A 前段时间有一个很好玩的需求;绘制上海行政区的边界线而且还要在地图上打上热力点,看了下百度地图可以实现就顺便研究了一下,简单的写了demo记录一下。
1.首先获取每个行政区域的边界坐标值,可能会有很多。使用以下方法:

最后的json数据文件传不了,贴上又太多。需要的话也可以私发,或者通过上面方法一个区一个区自己获取;
2.获取到的坐标值存入boundaryPoints对象,开始绘制线;

也就是以上简单的两个步骤,行政区域就画好了。美中不足就是部分区域有误差,但是这些坐标值都是百度的API返回的。先看看效果图。

3.打热力点;其实吧这个需要使用的地图类型是type=webgl;引入的文件也不一样;

以上几个文件是需要额外引入的,其中mapv.min.js 和 common.js 在百度地图官方demo里扒下来放在本地才可以使用;

result数组里的热力点可能会有很多,我删了不少,大致就是这样;
4.最终效果

以上是关于百度地图api中添加行政区划,怎么实现多个的主要内容,如果未能解决你的问题,请参考以下文章

百度地图添加多个行政区划

百度地图api 如何判断一个坐标属于哪一个行政区

百度地图api 如何判断一个座标属于哪一个行政区

百度地图api 如何判断一个坐标属于哪一个行政区

在百度地图中如何显示省、市、县边界?

百度地图怎么显示行政区划