Skip to content

多边形图层(PolygonLayer)

示例

示例源码
vue
<template>
  <div style="height: 400px" class="vw-full vh-full">
    <mb-map>
      <div style="position: absolute; top: 5px; left: 5px">
        <button class="primary" @click="colorIndex++">Switch Color</button>
      </div>
      <mb-tianditu-layer />
      <mb-polygon-layer
        :data="polygonCoordinates"
        :color="color"
        outline-color="yellow"
      />
    </mb-map>
  </div>
</template>

<script setup lang="ts">
import { computed, ref } from 'vue'

const colors = ['rgba(255,125,0,0.5)', '#ec71a9', 'red']
const colorIndex = ref(0)
const polygonCoordinates = [
  {
    coordinates: [
      [110.56640625, 39.639537564366684],
      [107.22656249999999, 36.527294814546245],
      [107.57812499999999, 32.39851580247402],
      [112.5, 30.600093873550072],
      [117.42187500000001, 32.02670629333614],
      [117.24609374999999, 36.94989178681327],
      [114.697265625, 39.70718665682654],
      [110.56640625, 39.639537564366684],
    ],
  },
  {
    coordinates: [
      [82.08984375, 32.47269502206151],
      [90.966796875, 32.47269502206151],
      [90.966796875, 38.685509760012],
      [82.08984375, 38.685509760012],
      [82.08984375, 32.47269502206151],
    ],
  },
]

const color = computed(() => colors[colorIndex.value % colors.length])
</script>

API

PROPS

名称描述类型默认值
id图层idstring-
color颜色值 支持 "#000000" "rgb(0,0,0)" [255,0,0,1]等模式string / number[]#000000
data矢量图层的数据 数组中每个对象需包含必需的coordinates属性以及可选的properties属性 每一个对象代表一个点/一条线/一个多边形VectorLayerData-
geo-json-data-sourcegeojson数据源,可设为geojson数据链接或geojson数据对象;规范链接, 若设置了本属性,则data属性失效string / GeoJSONSource-
opacity透明度number1
outline-color边框颜色string / number[]#000
maxzoom最大缩放级别number22
minzoom最小缩放级别number0
pickable图层是否响应拾取事件,若为false,则组件不会emit鼠标相关事件booleantrue
show是否显示booleantrue
source-id图层Source的id,若设置了本ID,则geoJsonDataSource与data属性都会失效string-
source-layer-name源数据中图层名称 设置sourceId时,此属性生效string-
translate偏移量,正数表示 右/下array[0,0]
pattern图片纹理,通过ImageLoader加载的图片名称,设置此值后,color属性无效string-
auto-highlight是否自动高亮booleanfalse
highlight-color高亮颜色string / number[][255, 255, 128, 1]
generate-id是否自动生成GeoJSON Feature Id。如果数据没有Id,自动高亮时,需设置为truebooleanfalse
useExpression是否使用表达式,设置为true时,将不会解析颜色相关属性booleanfalse

EVENTS

名称描述参数
created地图初始化完成事件-
click图层单击事件object — 包含屏幕坐标pixel、经纬度coordinate与选中元素的属性properties、originalEvent
mousemove鼠标移动事件object — 包含屏幕坐标pixel、经纬度coordinate与选中元素的属性properties、originalEvent
mouseleave鼠标移出元素事件MapMouseEvent

SLOTS

名称描述

METHODS

名称描述定义
exportToGeoJson将本图层数据导出为geojson格式数据文本 若图层数据源来自source组件或为url,则输出null()=> object | null