一些技术路线测试,增加git,方便代码还原
shuishen
2025-11-24 37539b33023be5231f51c3f4d13ab477877ee9c4
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 }
}