From 37539b33023be5231f51c3f4d13ab477877ee9c4 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Mon, 24 Nov 2025 09:19:18 +0800
Subject: [PATCH] feat:编辑模式等相关处理
---
js/modules/edit-manager.js | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/js/modules/edit-manager.js b/js/modules/edit-manager.js
index 686a72e..44bd3df 100644
--- a/js/modules/edit-manager.js
+++ b/js/modules/edit-manager.js
@@ -4,6 +4,10 @@
this.entityFactory = entityFactory
this.eventHub = eventHub
this.labelManager = labelManager
+ this.enableCornerDrag = false
+ // 后续开启方式:如需恢复顶点拖拽控制点,在外层调用
+ // editManager.setCornerDragEnabled(true)
+ // 保持现有逻辑不变,避免再次修改核心代码
}
computeCenter (positions) {
@@ -74,11 +78,12 @@
}, Cesium.ScreenSpaceEventType.LEFT_CLICK)
editTriggerHandler.setInputAction((click) => {
+ this.entityFactory.removeEntityLikeName('polygonEditPoint')
+ if (!this.enableCornerDrag) return
if (!isActivateEditRef.value) return
const pickC = viewer.scene.pick(click.position)
const rid = pickC && (pickC.id?.id || pickC.id || pickC.primitive?.id)
if (String(rid) !== 'polygon') return
- this.entityFactory.removeEntityLikeName('polygonEditPoint')
const positions = polygonPositionListRef.value
positions.forEach((ele, index) => {
viewer.entities.add({ name: 'polygonEditPoint', id: 'point' + index, position: ele, point: { color: new Cesium.Color(0, 1, 1, 0.9), pixelSize: 10 } })
@@ -124,4 +129,8 @@
}, Cesium.ScreenSpaceEventType.LEFT_DOWN)
}, Cesium.ScreenSpaceEventType.LEFT_CLICK)
}
+
+ // 开启/关闭顶点拖拽控制点(外层调用)
+ // 使用方式:editManager.setCornerDragEnabled(true)
+ setCornerDragEnabled (flag) { this.enableCornerDrag = !!flag }
}
\ No newline at end of file
--
Gitblit v1.9.3