surprise
2024-01-08 7e6b37afd1295c71bca1de595426330aff88420d
src/components/menu/tools/measure.vue
@@ -2,65 +2,31 @@
  <div class="measure" id="measure">
    <div class="measureTools">
      <div class="measureTool" @click="jl">
        <el-tooltip
          class="item"
          effect="dark"
          content="距离"
          placement="top-start"
          popper-class="item_tooltip"
        >
        <el-tooltip class="item" effect="dark" content="距离" placement="top-start" popper-class="item_tooltip">
          <el-button>
            <img src="@/assets/img/right/ls/jl1.png" />
          </el-button>
        </el-tooltip>
      </div>
      <div class="measureTool" @click="bmjl">
        <el-tooltip
          class="item"
          effect="dark"
          content="表面距离"
          placement="top-start"
          popper-class="item_tooltip"
        >
        <el-tooltip class="item" effect="dark" content="表面距离" placement="top-start" popper-class="item_tooltip">
          <el-button>
            <img src="@/assets/img/right/ls/bmjl1.png" /> </el-button
        ></el-tooltip>
            <img src="@/assets/img/right/ls/bmjl1.png" /> </el-button></el-tooltip>
      </div>
      <div class="measureTool" @click="mj">
        <el-tooltip
          class="item"
          effect="dark"
          content="面积"
          placement="top-start"
          popper-class="item_tooltip"
        >
        <el-tooltip class="item" effect="dark" content="面积" placement="top-start" popper-class="item_tooltip">
          <el-button>
            <img src="@/assets/img/right/ls/mj1.png" /> </el-button
        ></el-tooltip>
            <img src="@/assets/img/right/ls/mj1.png" /> </el-button></el-tooltip>
      </div>
      <div class="measureTool" @click="bmmj">
        <el-tooltip
          class="item"
          effect="dark"
          content="表面面积"
          placement="top-start"
          popper-class="item_tooltip"
        >
        <el-tooltip class="item" effect="dark" content="表面面积" placement="top-start" popper-class="item_tooltip">
          <el-button>
            <img src="@/assets/img/right/ls/bmmj1.png" /> </el-button
        ></el-tooltip>
            <img src="@/assets/img/right/ls/bmmj1.png" /> </el-button></el-tooltip>
      </div>
      <div class="measureTool" @click="height">
        <el-tooltip
          class="item"
          effect="dark"
          content="垂直高度"
          placement="top-start"
          popper-class="item_tooltip"
        >
        <el-tooltip class="item" effect="dark" content="垂直高度" placement="top-start" popper-class="item_tooltip">
          <el-button>
            <img src="@/assets/img/right/ls/gd1.png" /> </el-button
        ></el-tooltip>
            <img src="@/assets/img/right/ls/gd1.png" /> </el-button></el-tooltip>
      </div>
      <!-- <div
        :class="isOpen['tj'] ? 'measureTool active' : 'measureTool'"
@@ -71,29 +37,15 @@
          <label>体积</label>
        </el-button>
      </div> -->
      <!-- <div class="measureTool" @click="jd">
        <el-tooltip
          class="item"
          effect="dark"
          content="角度"
          placement="top-start"
          popper-class="item_tooltip"
        >
      <div class="measureTool" @click="zb">
        <el-tooltip class="item" effect="dark" content="坐标" placement="top-start" popper-class="item_tooltip">
          <el-button>
            <img src="@/assets/img/right/ls/jd1.png" /> </el-button
        ></el-tooltip>
      </div> -->
            <img src="@/assets/img/right/ls/jd1.png" /> </el-button></el-tooltip>
      </div>
      <div class="measureTool" @click="clearMeasure">
        <el-tooltip
          class="item"
          effect="dark"
          content="清除"
          placement="top-start"
          popper-class="item_tooltip"
        >
        <el-tooltip class="item" effect="dark" content="清除" placement="top-start" popper-class="item_tooltip">
          <el-button>
            <img src="@/assets/img/right/ls/qc-s.png" /> </el-button
        ></el-tooltip>
            <img src="@/assets/img/right/ls/qc-s.png" /> </el-button></el-tooltip>
      </div>
    </div>
  </div>
@@ -105,10 +57,12 @@
  width: 111%;
  margin-left: -15px;
}
.el-button:focus,
.el-button:hover {
  background: transparent;
}
.measure {
  position: absolute;
  left: 65px;
@@ -117,12 +71,14 @@
  /* border-radius: 30px; */
  box-shadow: 0px 0px 10px rgba(101, 180, 253, 0.8) inset;
  background-color: rgba(5, 39, 126, 0.7);
  width: 350px;
  width: 410px;
}
.measureTools {
  margin-left: 20px;
  overflow: hidden;
}
.measureTool {
  border: 1px solid #999;
  border-radius: 5px;
@@ -131,9 +87,11 @@
  height: 40px;
  margin: 5px;
}
.measureTool img{
    margin: 4px;
.measureTool img {
  margin: 4px;
}
.measureTools::-webkit-scrollbar {
  /*滚动条整体样式*/
  width: 5px;
@@ -158,6 +116,7 @@
  border-radius: 0;
  background: rgba(218, 218, 218, 0.1);
}
.measureTool:hover {
  background: rgba(0, 168, 255, 0.16);
}
@@ -165,9 +124,11 @@
.tool-title {
  margin: 1px 10px;
}
.tool-title label {
  vertical-align: top;
}
.measure label {
  margin-left: 10px;
  font-size: 17px;
@@ -176,6 +137,7 @@
  /* color: #3d3d3d; */
  color: white;
}
.el-button {
  padding: 0 !important;
  font-size: 24px;
@@ -184,14 +146,17 @@
  display: block;
  background: rgba(0, 0, 0, 0);
}
.el-button label {
  font-size: 14px;
}
.closeTool {
  position: absolute;
  bottom: 0;
  left: 0;
}
.active {
  background: rgba(0, 168, 255, 0.16);
}
@@ -222,7 +187,7 @@
      }
    };
  },
  mounted() {},
  mounted() { },
  methods: {
    // 清除高亮
    clearActive() {
@@ -239,6 +204,11 @@
      this.$parent.isShowMeasure = false;
      this.$parent.isShow = false;
    },
    zb(){
      this.$store.state.isMeasureFlag= true;
    },
    //清除测量
    clearMeasure() {
      // 关闭当前的操作界面
@@ -247,7 +217,9 @@
        item.deleteObject();
      });
      measureData = [];
      this.$store.state.isShowMeasureCoord = false
      this.$store.state.isMeasureFlag = false
      this.$store.state.measureCoordObj = false
      volumetricMeasurementTool && volumetricMeasurementTool.cleanUp();
    },
    // 距离量算
@@ -267,7 +239,7 @@
      layuiLayer.close(SmartEarthPopupData.layerProp);
      sgworld.drawObj &&
        (sgworld.drawObj.drawHandler && sgworld.drawObj.drawHandler.destroy(),
        sgworld.drawObj.end && sgworld.drawObj.end());
          sgworld.drawObj.end && sgworld.drawObj.end());
      // 根据当前的高亮状态,决定当前操作是否要显示高亮
      this.isOpen["jl"] = true;
@@ -279,7 +251,7 @@
      measureData.push(m);
    },
    // 表面距离
    bmjl: function() {
    bmjl: function () {
      this.$parent.closeAllHighLight("measure");
      if (this.isOpen["bmjl"]) {
        this.isOpen["bmjl"] = false;
@@ -295,7 +267,7 @@
      layuiLayer.close(SmartEarthPopupData.layerProp);
      sgworld.drawObj &&
        (sgworld.drawObj.drawHandler && sgworld.drawObj.drawHandler.destroy(),
        sgworld.drawObj.end && sgworld.drawObj.end());
          sgworld.drawObj.end && sgworld.drawObj.end());
      this.isOpen["bmjl"] = true;
@@ -307,7 +279,7 @@
      measureData.push(m);
    },
    // 表面面积
    bmmj: function() {
    bmmj: function () {
      this.$parent.closeAllHighLight("measure");
      if (this.isOpen["bmmj"]) {
        this.isOpen["bmmj"] = false;
@@ -323,7 +295,7 @@
      layuiLayer.close(SmartEarthPopupData.layerProp);
      sgworld.drawObj &&
        (sgworld.drawObj.drawHandler && sgworld.drawObj.drawHandler.destroy(),
        sgworld.drawObj.end && sgworld.drawObj.end());
          sgworld.drawObj.end && sgworld.drawObj.end());
      this.isOpen["bmmj"] = true;
      let m = sgworld.Command.execute(0, 8, colorAll, () => {
@@ -334,7 +306,7 @@
      measureData.push(m);
    },
    // 面积
    mj: function() {
    mj: function () {
      this.$parent.closeAllHighLight("measure");
      if (this.isOpen["mj"]) {
        this.isOpen["mj"] = false;
@@ -350,7 +322,7 @@
      layuiLayer.close(SmartEarthPopupData.layerProp);
      sgworld.drawObj &&
        (sgworld.drawObj.drawHandler && sgworld.drawObj.drawHandler.destroy(),
        sgworld.drawObj.end && sgworld.drawObj.end());
          sgworld.drawObj.end && sgworld.drawObj.end());
      this.isOpen["mj"] = true;
@@ -378,7 +350,7 @@
      layuiLayer.close(SmartEarthPopupData.layerProp);
      sgworld.drawObj &&
        (sgworld.drawObj.drawHandler && sgworld.drawObj.drawHandler.destroy(),
        sgworld.drawObj.end && sgworld.drawObj.end());
          sgworld.drawObj.end && sgworld.drawObj.end());
      this.isOpen["jd"] = true;
@@ -405,7 +377,7 @@
      layuiLayer.close(SmartEarthPopupData.layerProp);
      sgworld.drawObj &&
        (sgworld.drawObj.drawHandler && sgworld.drawObj.drawHandler.destroy(),
        sgworld.drawObj.end && sgworld.drawObj.end());
          sgworld.drawObj.end && sgworld.drawObj.end());
      this.isOpen["czgd"] = true;
@@ -433,7 +405,7 @@
      layuiLayer.close(SmartEarthPopupData.layerProp);
      sgworld.drawObj &&
        (sgworld.drawObj.drawHandler && sgworld.drawObj.drawHandler.destroy(),
        sgworld.drawObj.end && sgworld.drawObj.end());
          sgworld.drawObj.end && sgworld.drawObj.end());
      this.isOpen["tj"] = true;
@@ -446,7 +418,7 @@
        sgworld.drawObj = volumetricMeasurementTool.startDrawing(
          null,
          spacing,
          function(data) {
          function (data) {
            callback &&
              typeof callback === "function" &&
              callback({ height: data.minHeight, spacing: data.spacing });