cesium中文api:Index - Cesium Documentationhttp://cesium.xin/cesium/cn/Documentation1.72/index.html
效果图:
实现代码:
<template>
<div style="height: 100vh;width: 100vw;">
<div style="position: absolute;z-index:10">
<el-button @click="changeShow">{{state.point.point.show?'隐藏':'显示'}}</el-button>
</div>
<div id="cesiumContainer"></div>
</div>
</template>
<script setup>
import * as Cesium from 'cesium';
import { onMounted, reactive } from 'vue';
const state = reactive({
point: {
id: "mypoint",
position: Cesium.Cartesian3.fromDegrees(-75.0, 30.0), //经纬度转世界坐标
point: {
show: true,
color: Cesium.Color.GREEN,
pixelSize: 20,
outlineColor: Cesium.Color.YELLOW,
outlineWidth: 3,
}
}
})
const changeShow = () => {
viewer.entities.getById('mypoint').show = !viewer.entities.getById('mypoint').show
state.point.point.show = !state.point.point.show
}
onMounted(() => {
const viewer = new Cesium.Viewer("cesiumContainer", { infoBox: false });
window.viewer = viewer;//挂载到window上
viewer.entities.add(state.point)
})
</script>