mapgis-3d-analysis-buffer
# 属性
# srcType
- 类型:
String
- 可选
- 非侦听属性
- 默认值:
Layer
- 描述: 缓冲分析的类型,即图层级缓冲'Layer'和要素级缓冲'Feature'
# baseUrl
- 类型:
String
- 可选
- 非侦听属性
- 默认值:
http://localhost:6163
- 描述: 输入图层的baseUrl
# srcLayer
- 类型:
String
- 必选
- 非侦听属性
- 默认值: ``
- 描述: 输入图层的gdbp
# srcFeature
- 类型:
Object
- 可选
- 非侦听属性
- 默认值:
{}
- 描述: 输入要素的GeoJSON数据
# 事件
# @load
- Description: 在 Buffer组件 加载完毕后发送该事件
- Payload 缓冲分析对象
# @listenLayer
- Description: 在图层级缓冲分析完成后发送该事件
# @listenFeature
- Description: 在要素级缓冲分析完成后发送该事件
# @listenBufferAdd
- Description: 在缓冲分析结束后发送该事件
# 示例
<template>
<div style="width: 1200px;height: 800px;">
<mapgis-web-scene
style="height:90vh"
lib-path="statics/libs/cdn/cesium/Cesium.js"
plugin-path="statics/libs/cdn/zondyclient/webclient-cesium-plugin.min.js"
>
<mapgis-ui-card class="storybook-ui-card">
<mapgis-3d-analysis-buffer
:baseUrl='baseBufferUrl'
:srcType='srcType'
:srcLayer='srcLayer'
:srcFeature='srcFeature'
@listenLayer="showLayer"
@listenFeature="showFeature"
@listenBufferAdd="showAdd"
/>
</mapgis-ui-card>
<mapgis-3d-igs-dynamic-layer
v-if="finishedLayer && addResultToLayer"
baseUrl="http://localhost:6163/igs/rest/mrms/layers"
:gdbps="resultLayer"
></mapgis-3d-igs-dynamic-layer>
<mapgis-3d-geojson-layer
v-if="finishedFeature && addResultToLayer"
:layerStyle="layerStyle"
:baseUrl="resultFeature"
></mapgis-3d-geojson-layer >
</mapgis-web-scene>
</div>
</template>
<script>
export default {
data() {
return {
baseBufferUrl: "http://localhost:6163",
srcType: "Layer",
srcLayer: "gdbp://MapGISLocalPlus/sample/sfcls/武汉市轮廓",
srcFeature: {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {},
"id": "id0",
"geometry": {
"type": "Point",
"coordinates": [114, 45]
},
},
{
"type": "Feature",
"properties": {},
"id": "id0",
"geometry": {
"type": "LineString",
"coordinates": [
[105, 30], [107, 31], [109, 30], [107, 29]
]
},
},
{
"type": "Feature",
"properties": {},
"id": "id1",
"geometry": {
"type": "Polygon",
"coordinates": [
[
[114,30], [114,40], [124,40], [124,30], [114,30]
],
[
[110,15] , [120,20] , [125,25] , [130,30] , [110,15]
]
]
},
}
]
},
finishedLayer: false,
finishedFeature: false,
addResultToLayer: false,
resultLayer: "",
resultFeature: undefined,
layerStyle: new FillStyle({
color: "#ff0000",
outlineColor: "#ff0000",
outlineWidth: 2.5,
opacity: 1,
})
};
},
methods: {
showLayer(data) {
this.finishedLayer = true
this.resultLayer = data
},
showFeature(data) {
this.finishedFeature = true
this.resultFeature = data
},
showAdd(data) {
this.addResultToLayer = data
}
}
};
</script>
<style scoped>
.storybook-ui-card {
position: absolute;
top: 10px;
left: 10px;
z-index: 1000;
}
</style>
← 投放配置