BufferEllipseLayer
Supports drag-and-drop to change position, drag-and-drop to resize, and real-time area display, among other features.
Example
Example Source Code
vue
<template>
<div style="height: 400px" class="vw-full vh-full">
<mb-map
:zoom="10"
:center="center"
:glyphs="__RESOURCE_URL__ + 'fonts/{fontstack}/{range}.pbf'"
>
<mb-tianditu-layer />
<mb-buffer-ellipse-layer
:center="center"
:x-semi-axis="10"
:y-semi-axis="5"
:angle="0"
border-color="red"
:border-opacity="0.5"
background-color="red"
center-color="red"
resizer-color="blue"
:background-opacity="0.1"
:closable="true"
:countable="true"
:draggable="true"
:resizable="true"
:rotatable="true"
/>
</mb-map>
</div>
</template>
<script setup lang="ts">
const center = [116.17381, 39.92155464]
</script>API
PROPS
| Name | Description | Type | Default |
|---|---|---|---|
| id | Layer ID | string | - |
| center | Buffer center point | number[] | - |
| x-semi-axis | x-axis semi-axis (or semi-major axis) | number | 5 |
| y-semi-axis | y-axis semi-axis (or semi-minor axis) | number | 10 |
| angle | Rotation angle, 0~360 degrees | number | 0 |
| border-color | Border color | string | blue |
| border-opacity | Border opacity | number | 0.5 |
| border-width | Border width | number | 5 |
| background-color | Background color | string | blue |
| background-opacity | Background opacity | number | 0.1 |
| resizer-color | Resizer icon color | string | black |
| center-color | Center point icon color | string | red |
| closable | Whether to display the close icon | boolean | false |
| countable | Whether to display the radius value as text. You need to load Mapbox font files | boolean | false |
| resizable | Whether to display the resizer icon | boolean | false |
| draggable | Whether the buffer is draggable | boolean | false |
| rotatable | Whether the buffer is rotatable | boolean | false |
| visible | Whether to display the buffer | boolean | true |
| resizer-radius | Resizer icon circle radius | number | 8 |
| center-radius | Center point icon circle radius | number | 8 |
| text-fonts | Font settings for countable text | string[] | ['Open Sans Regular'] |
| text-color | Color of the countable text. | string | #000000 |
| text-size | Size of the countable text | number | 16 |
| formatter | Formatter for the countable text | function | (radius) => string |
| close-size | Scaling factor for the close icon | number | 0.7 |
| close-offset | Offset of the close icon | number[] | [70, 0] |
| close-icon-url | URL of a custom close icon | string | - |
EVENTS
| 名称 | 描述 | 参数 |
|---|---|---|
| update | Triggered when the buffer is changed | Parameters:{center,angle,xSemiAxis,ySemiAxis} |
| close | Triggered when the close operation is clicked | MapMouseEvent |
| mouseenter | Triggered when the mouse enters the buffer | - |
| mouseleave | Triggered when the mouse leaves the buffer | - |
SLOTS
| Name | Description |
|---|
METHODS
| Name | Description | Definition |
|---|
