11
lixuliang
2024-01-09 cbde2b4fb938ce62c204390544c52935906c8962
src/components/left/layerTree/modelLayer.vue
@@ -3,51 +3,77 @@
    <div>
      <div class="modleTitle "  >
        <div>模型添加</div>
        <div class="modelClose" @click="$store.state.showModelFlag = false"> X</div>
        <el-button size="mini" @click="batchAdd">批量添加</el-button>
        <div class="modelClose" @click="$store.state.showModelFlag = false">
          X
        </div>
      </div>
    </div>
    <div class="modelContent">
      <div class="modelType" v-for="(item, index) in modelOption" :key="index" @click="setModelAddLayer(item)">
        <img class="imgIcon" :src="require('../../../assets/img/model/' + item.imgUrl)" />
      <div
        class="modelType"
        v-for="(item, index) in modelOption"
        :key="index"
        @click="setModelAddLayer(item)"
      >
        <img
          class="imgIcon"
          :src="require('../../../assets/img/model/' + item.imgUrl)"
        />
      </div>
    </div>
  </div>
</template>
<script>
import model from '../../../assets/js/Layer/model';
import model from "../../../assets/js/Layer/model";
import batchAddGrid from "../../../assets/js/Layer/batchAddGrid";
export default {
  name: "modelLayer",
  components: {
  },
  components: {},
  data() {
    return {
      modelOption: [
      ],
      modelOption: [],
    };
  },
  mounted() {
    this.setLayerStart();
  },
  destroyed() {
  },
  destroyed() {},
  methods: {
    setLayerStart() {
      this.modelOption = layerData.modelData;
    },
    setModelAddLayer(item) {
      if (this.$store.state.batchGridArr == []) {
      // model
      model.changeLayer(item,true);
    },
      } else {
        model.changeBatchLayer(item, true);
        let coordinates = this.$store.state.batchGridArr;
        let shape = this.$store.state.batchShape;
        Viewer.entities.remove(shape);
        coordinates.forEach((element) => {
          let coordinate = {
            longitude: Number(element[0].toFixed(6)),
            latitude: Number(element[1].toFixed(6)),
            altitude: 0,
            heading: 0,
            pitch: 0,
            roll: 0,
            scale: 1,
          };
          model.setModelCoord(coordinate);
        });
  }
    },
    batchAdd() {
      batchAddGrid.drawRect();
    },
  },
};
</script>
@@ -61,7 +87,11 @@
  background-color: rgba(0, 0, 0, 0.6); // #0048fd69 !important
  z-index: 9999;
  position: absolute;
.el-button {
  background-color: #0051e9;
  color: #fff;
}
  .modleTitle {
    height: 42px;
    width: 90%;
@@ -102,11 +132,10 @@
        width: 100%;
        height: 100%;
      }
    }
    .modelType :hover {
      border: 1px solid #409EFF;
      border: 1px solid #409eff;
    }
  }
}