百度地图绘制围栏,圆形,多边形,行政区域

this.map.clearOverlays();//先清除覆盖物if (row.circle) {let item = row.circle;var point = new BMapGL.Point(item.lon / 1000000, item.lat / 1000000);this.map.centerAndZoom(point, 15);// 创建圆 位置 范围 样式属性var circle = new BMapGL.Circle(point, 500, {strokeColor: "blue",strokeWeight: 2,strokeOpacity: 0.5});this.map.addOverlay(circle);} else if (row.polygon) {let list = [];row.polygon.forEach(element => {list.push(new BMapGL.Point(element.lon / 1000000, element.lat / 1000000));});// 创建多边形   点集合 样式属性var polygon = new BMapGL.Polygon(list, {strokeColor: "blue",strokeWeight: 2,strokeOpacity: 0.5});this.map.addOverlay(polygon);} else if (row.city) {let dist = new BMapGL.DistrictLayer({name: "(" + row.city.name + ")",//城市名字  浙江省杭州市kind: 1,fillColor: "#618bf8",strokeColor: "#daeafa",viewport: true});this.map.addDistrictLayer(dist);}

DistrictLayer类参考

构造函数:

构造函数说明
BMapGL.DistrictLayer(options, callback)行政区划聚合图层构造函数

参数说明:

构造函数类型说明
optionsObject行政区划图层样式配置对象
callbackFunction回调函数

options属性变量:

options属性类型说明
nameArray欲获取的行政区划名称,格式为字符串或数组。如果是大区情况,只能采用字符串格式,如"(北京,天津,河北),山东"
kindnumber行政区划显示级别,0为省级行政区划,1为市级行政区划,2为区级行政区划
strokeColorstring描边颜色,默认为'#ff0'
strokeOpacitynumber描边线透明度
strokeWeightnumber描边线粗细,默认为1
fillColorstring填充颜色,默认为'#00f'。格式为字符串或数组。注意,目前行政区划没有名称标识,数组颜色与返回子层级区域顺序一一对应,暂不支持对子层级的特定市区县设置指定颜色。
viewportboolean是否自动根据行政区划来调节到最佳显示视野,默认为false

方法:

方法名说明
map.addDistrictLayer(district: DistrictLayer)地图上添加行政区划图层,参数district为指定的行政区划实例
map.removeDistrictLayer(district: DistrictLayer)地图上移除指定的行政区划图层,参数district为指定的行政区划实例
searchBoundary(options, callback(res))搜索某个行政区划,通过回调函数实现自定义行政区划绘制。其中参数options同上面的构造函数的参数配置,callback(res)为回调函数。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部