el-amap 遮罩(带洞多边形)
el-amap 遮罩(带洞多边形)
遮罩(带洞多边形)
效果图

代码
<template>
<div>
<el-amap
vid="amapDemo"
:center="center"
:zoom="zoom"
pitch-enable="false"
:events="events"
:style="{height: '48.4rem'}"
ref="map"
>
<!-- 遮罩层 -->
<el-amap-polygon
strokeColor="#00eeff"
strokeOpacity="1"
fillColor="#71B3ff"
fillOpacity="0.5"
v-for="(polygon, index) in polygons"
:key="index+'polygons'"
strokeWeight="2"
:path="polygon.Ce.path"
></el-amap-polygon>
</el-amap>
</div>
</template>
<script>
export default {
data () {
return {
// 缩放程度,值越大越详细
zoom: 10,
// 中心点
center: [106.519006, 29],
events: this.eventsFun(),
polygons: [], // 绘画的点
district: null, // 行政区划插件的对象
}
},
methods: {
// 画地图的遮罩层
drawBounds () {
var that = this;
//加载行政区划插件
if (!that.district) {
// 实例化DistrictSearch
var opts = {
subdistrict: 0, // 获取边界不需要返回下级行政区
extensions: "all", //返回行政区边界坐标组等具体信息
level: "city", // 查询行政级别为 市
};
that.district = new AMap.DistrictSearch(opts);
}
// 行政区查询
let code = '江津';
that.district.search(code, function (status, result) {
that.polygons = [];
// 外圈
var outer = [
new AMap.LngLat(-360, 90, true),
new AMap.LngLat(-360, -90, true),
new AMap.LngLat(360, -90, true),
new AMap.LngLat(360, 90, true),
]
var bounds = result.districtList[0].boundaries; // 这里的bounds是一个数组,但是里面只有一个元素就是bounds[0]
if (bounds) {
for (var i = 0, l = bounds.length; i < l; i++) { // 所以这个循环只会执行一次
// 生成行政区划polygon
var polygon = new AMap.Polygon({
path: [outer, bounds[i]],
});
that.polygons.push(polygon);
}
}
AMap.Polygon.bind(that.polygons); // 交给amap进行值处理
});
},
// 地图事件
eventsFun () {
let that = this
return {
// 地图加载完成时执行的方法
complete () {
that.drawBounds() // 画地图的遮罩层
}
}
},
}
}
</script>
参考资料
el-amap 遮罩(带洞多边形)的更多相关文章
- [CGAL]带岛多边形三角化
CGAL带岛多边形三角化,并输出(*.ply)格式的模型 模型输出的关键是节点和索引 #include <CGAL/Triangulation_vertex_base_with_id_2.h&g ...
- AMap编辑折线、多边形、圆
<!doctype html> <html> <head> <meta charset="utf-8"> <meta http ...
- clipper库使用的一些心得
clipper sourceforge官网:http://sourceforge.net/projects/polyclipping/ 1. 版本号差异 之前project里面使用4.8.6,近期升级 ...
- CSS遮罩——如何在CSS中使用遮罩
Css遮罩是2008年4月由苹果公司添加到webkit引擎中的.遮罩提供一种基于像素级别的,可以控制元素透明度的能力,类似于png24位或png32位中的alpha透明通道的效果. 图像是由rgb三个 ...
- 多边形节点编码python脚本
# -*- coding: cp936 -*-#本脚以最左边.Y值最大的点为起始点按顺时针为多边形节点编码,生成一个包含记录编码值和多边形FID字段的点要素类 #注意:#1.本脚本作为arcgis脚本 ...
- [转]CSS遮罩——如何在CSS中使用遮罩
特别声明:此篇文章由D姐根据Christian Schaefer的英文文章原名<CSS Masks – How To Use Masking In CSS Now>进行翻译,整个译文带有我 ...
- JavaWeb 之 EL表达式
EL 表达式 一.概述 1.概念 EL 表达式:Expression Language 表达式语言. 2.作用 替换和简化 jsp 页面中 java 代码的编写. 3.语法格式 ${表达式} 4.注意 ...
- 用BlendFunc实现舞台灯光和刮刮卡效果
[转]http://code.lovemiao.com/?p=136#more-136 之前写过一篇<不规则形状按钮的点击判定>,利用了CCRenderTexture创建一块画布,可以在上 ...
- oracle 空间数据库说明
转:http://blog.csdn.net/jing_xin/article/details/4355642 由于最近弄一些空间数据,所以找了些oracle空间数据库的一些知识.下面是汇总: Ora ...
随机推荐
- Android sensor架构分析
一.其主要框架如下图所示: 二.sensor的JNI层:android_hardware_SensorManager.cpp (frameworks\base\core\jni) 注册JN ...
- 苹果电脑下载电影教程:如何用folx下载《小妇人》
由西尔莎罗南.艾玛沃特森等知名影星重新演绎的<小妇人>又带动了新一轮的<小妇人>热潮.这部由露易莎创作的长篇小说,曾被多次拍摄,无论是小说本身,还是其影视资源,都能让观众回味无 ...
- Mac电脑数据被误删了怎么办,还能恢复吗
随着苹果产品的使用率越来越高,苹果电脑视频丢失的风险也是居高不下,大部分情况下都是由于误操作或者是中病毒导致视频丢失,苹果电脑视频恢复可以实现吗?涉及到文件恢复的问题,找EasyRecovery文件恢 ...
- Boom 3D的广播有哪些,有啥特色
Boom 3D(Windows系统)不仅为用户提供了包括3D立体音效.古典音乐音效在内的多种音效增强功能,而且还为用户提供了广播功能.该广播功能不仅涵盖了国内广播节目,而且还涵盖了国际广播节目. 接下 ...
- Spring中各个模块
Spring中个模块介绍 核心模块 提供了对Bean的配置.管理.创建等以及IOC/DI.如果只需要提供IOC/DI功能,只需要引入Beans和Core两个jar包 Core 包含Spring框架 ...
- 华为模拟器ensp老是弹出一堆英文up down,关闭
英文内容: Mar 25 2015 20:38:21-08:00 Huawei DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5.25.191.3.1 co ...
- CentOS下的IPMI尝试
1.载入支持 ipmi 功能的系统模块 modprobe ipmi_msghandler modprobe ipmi_devintf modprobe ipmi_poweroff modprobe i ...
- C++-codeblocks安装
2020-02-15 "Test_leetcode - Debug": The compiler's setup (GNU GCC Compiler) is invalid, so ...
- oracle ddl 与 dml
DDL create table 创建表 alter table 修改表 drop table 删除表 truncate table 删除表中所有行 create index 创建索引 drop in ...
- go语言之---数组(array)和切片(slice)
一.数组 1.什么是数组? 1.数组是一系列同一类型数据的集合 2.数组中包含的每个数据被称为数组元素 3.一个数组中包含的元素个数成为数组长度 4.数组的长度是固定的 5.一个数组可以由零个或者多个 ...