From 12e68e6acc270263c0bea2baf72f3853eafe93e2 Mon Sep 17 00:00:00 2001
From: 张含笑 <zhx18749296735@163.com>
Date: Mon, 27 Oct 2025 17:02:10 +0800
Subject: [PATCH] feat:地图加载
---
src/views/layerManagement/index.vue | 40 +++++++++++++++++++++++++++++-----------
1 files changed, 29 insertions(+), 11 deletions(-)
diff --git a/src/views/layerManagement/index.vue b/src/views/layerManagement/index.vue
index e22caba..4a3c0a5 100644
--- a/src/views/layerManagement/index.vue
+++ b/src/views/layerManagement/index.vue
@@ -3,14 +3,18 @@
<div class="layerContainer">
<!-- 地图 -->
<div id="layMap" class="ztzf-cesium"></div>
- <div class="draw-control">
+ <!-- <div class="draw-control">
<div @click="startDraw">开始绘制多边形</div>
- </div>
+ </div> -->
+ <leftList></leftList>
+
</div>
</basic-container>
</template>
<script setup>
+import RightEdit from '@/views/layerManagement/components/rightEdit.vue'
+import leftList from '@/views/layerManagement/components/leftList.vue'
import { DrawPolygon } from '@/views/layerManagement/components/utils';
import * as Cesium from 'cesium';
import { PublicCesium } from '@/utils/cesium/publicCesium';
@@ -37,16 +41,15 @@
viewer = publicCesiumInstance.getViewer();
viewInstance.value = publicCesiumInstance;
-
drawPolygonExample.initHandler(viewer);
};
-// 开启绘制模式(按钮点击触发)
-const startDraw = () => {
- // 清除之前的绘制内容,重新开启绘制
- drawPolygonExample.removeEntities();
- drawPolygonExample.startDrawing();
-};
+// // 开启绘制模式(按钮点击触发)
+// const startDraw = () => {
+// // 清除之前的绘制内容,重新开启绘制
+// drawPolygonExample.removeEntities();
+// drawPolygonExample.startDrawing();
+// };
// 处理绘制完成后的多边形坐标(示例)
const loadPlanarRoute = async (positions = null, save = false) => {
@@ -77,13 +80,28 @@
}
publicCesiumInstance = null;
};
-
+// 阻止浏览器默认
+const preventDefault = event => {
+ event.preventDefault()
+ return
+}
+const cesiumContextMenu = (isAdd = true) => {
+ let cesium = document.getElementById('layMap')
+ if (!cesium) return
+ if (isAdd) {
+ cesium.addEventListener('contextmenu', preventDefault)
+ } else {
+ cesium.removeEventListener('contextmenu', preventDefault)
+ }
+}
onMounted(() => {
initMap();
+ cesiumContextMenu()
});
onBeforeUnmount(() => {
destroyMap();
+ cesiumContextMenu(false)
});
</script>
@@ -91,7 +109,7 @@
.layerContainer {
position: relative;
width: 100%;
- height: 100vh;
+ height: 90vh;
#layMap {
width: 100%;
height: 100%;
--
Gitblit v1.9.3