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 |
---|