吉安感知网项目-前端
chenyao
2 days ago 899f3474a9bc54d1a72710b4fd992176c1888e70
applications/drone-command/src/utils/cesium/shapeTools/edit/EditRectangleTool.js
@@ -47,7 +47,7 @@
      this.handler.setInputAction(evt => this.handleLeftDown(evt), Cesium.ScreenSpaceEventType.LEFT_DOWN)
      this.handler.setInputAction(evt => this.handleMouseMove(evt), Cesium.ScreenSpaceEventType.MOUSE_MOVE)
      this.handler.setInputAction(() => this.handleLeftUp(), Cesium.ScreenSpaceEventType.LEFT_UP)
      this.tooltip.show('拖动顶点编辑', { x: 0, y: 0 })
      this.tooltip.hide()
   }
   handleLeftDown(evt) {
@@ -60,7 +60,12 @@
   }
   handleMouseMove(evt) {
      this.tooltip.move(evt.endPosition)
      if (!this.tooltip?.isVisible) {
         this.tooltip.show('拖动顶点编辑', evt.endPosition)
      } else {
         this.tooltip.show('拖动顶点编辑')
         this.tooltip.move(evt.endPosition)
      }
      if (this.dragIndex == null) return
      const position = this.getPositionFromScreen(evt.endPosition)
      if (!position) return
@@ -144,7 +149,8 @@
   getPositionFromScreen(screenPosition) {
      const scene = this.viewer.scene
      const cartesian = scene.pickPosition(screenPosition)
      const ray = scene.camera.getPickRay(screenPosition)
      const cartesian = ray ? scene.globe.pick(ray, scene) : null
      if (cartesian) return cartesian
      return scene.camera.pickEllipsoid(screenPosition, scene.globe.ellipsoid)
   }