Ver código fonte

解决城市规划模型显示效果问题(模型是米黄色,平台展示为蓝色)

wanger 11 meses atrás
pai
commit
676e6ddf46

+ 19 - 17
src/components/3DAnalysis/Smashing/Smashing.vue

@@ -30,6 +30,7 @@ export default {
   props: {},
   data() {
     return {
+      inited: false,
       sharedState: store.state,
       handler_Cut_fill: null,
       //存储压平数据名称
@@ -52,22 +53,11 @@ export default {
   },
   beforeDestroy() { },
   mounted() {
-    store.state.S3MList.forEach((s) => {
-      s.forEach((i) => {
-        this.options.push(i);
-      });
-    });
-
-    this.$nextTick((res) => {
-      this.handler_Cut_fill = new Cesium.DrawHandler(
-        viewer,
-        Cesium.DrawMode.Polygon,
-        0
-      );
-
-      this.handlerTemp = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
-    })
-    // console.log(this.options, "this.options");
+    // store.state.S3MList.forEach((s) => {
+    //   s.forEach((i) => {
+    //     this.options.push(i);
+    //   });
+    // });
   },
   methods: {
     test(val) {
@@ -232,7 +222,19 @@ export default {
       // }
     },
   },
-  watch: {},
+  watch: {
+    smashingComb(val) {
+      if (!this.inited) {
+        this.inited = !this.inited;
+        this.handler_Cut_fill = new Cesium.DrawHandler(
+          viewer,
+          Cesium.DrawMode.Polygon,
+          0
+        );
+        this.handlerTemp = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
+      }
+    }
+  },
 };
 </script>
 

+ 2 - 2
src/components/Combinations/LayerManage/LayerManage.vue

@@ -222,7 +222,7 @@ export default {
           } else if (obj.title == "分层分户_白膜") {
             store.setLayerList(layers[0][0]);
           }
-          store.state.S3MList.push(layers[0]);
+          // store.state.S3MList.push(layers[0]);
           layers[0].forEach((item) => {
             if (
               item.name == "ResultNetWork@管线#1" ||
@@ -231,7 +231,7 @@ export default {
               item._baseUri.query = obj.id;
             }
           });
-          store.state.tempLatData = layers[0];
+          // store.state.tempLatData = layers[0];
           store.setSceneLayersList(this_.sceneLayers);
           // for (var i = 0; i < layers.length; i++) {
           //   let style = new Cesium.Style3D();

+ 27 - 55
src/components/Query/clickQuery/clickQuery.vue

@@ -1,24 +1,14 @@
 <template>
-  <div class="sm-panel sm-function-module-query" v-if="PoinyQueryShow">
+  <div class="sm-panel sm-function-module-query" v-show="PoinyQueryShow">
     <div class="sm-panel-header">
       <span>{{ Resource.PoinyQuery }}</span>
       <span class="closeBtn" @click="toggleVisibility">&times;</span>
     </div>
     <!-- <div class="sm-function-module-content-btn"> -->
     <div class="btnList">
-      <span
-        v-for="(item, index) in actionOptions"
-        :key="index"
-        class="icon-span"
-        :title="item.lable"
-        :class="item.isSelect ? 'selected-icon' : ''"
-        @click="changleQueryItem(item)"
-      >
-        <i
-          class="iconfont iconSize"
-          :class="item.iconName"
-          style="margin-top: 0px"
-        ></i>
+      <span v-for="(item, index) in actionOptions" :key="index" class="icon-span" :title="item.lable"
+        :class="item.isSelect ? 'selected-icon' : ''" @click="changleQueryItem(item)">
+        <i class="iconfont iconSize" :class="item.iconName" style="margin-top: 0px"></i>
       </span>
       <!-- <el-button type="primary" size="small" @click.stop="mapLayerQuery"
         >点击</el-button
@@ -29,44 +19,22 @@
     </div>
     <div class="sm-function-module-content-tabs">
       <el-tabs @tab-click="handleTabClick" v-model="activeLayerId">
-        <el-tab-pane
-          :label="item.label"
-          :name="item.id"
-          v-for="(item, index) in layerList"
-          :key="index"
-        ></el-tab-pane>
+        <el-tab-pane :label="item.label" :name="item.id" v-for="(item, index) in layerList" :key="index"></el-tab-pane>
       </el-tabs>
     </div>
     <div class="sm-function-module-content-table">
-      <el-collapse
-        :value="activeNames"
-        @change="handleCollapseChange"
-        v-if="
-          activeLayerId &&
-          queryResults[activeLayerId] &&
-          queryResults[activeLayerId].length > 0
-        "
-      >
-        <el-collapse-item
-          :title="'查询结果' + (index + 1)"
-          :name="'查询结果' + (index + 1)"
-          v-for="(item, index) in queryResults[activeLayerId]"
-          :key="index"
-        >
+      <el-collapse :value="activeNames" @change="handleCollapseChange" v-if="
+        activeLayerId &&
+        queryResults[activeLayerId] &&
+        queryResults[activeLayerId].length > 0
+      ">
+        <el-collapse-item :title="'查询结果' + (index + 1)" :name="'查询结果' + (index + 1)"
+          v-for="(item, index) in queryResults[activeLayerId]" :key="index">
           <template slot="title">
             查询结果{{ index + 1
-            }}<i
-              title="定位"
-              class="header-icon el-icon-s-promotion flyBtn2"
-              @click.stop="flyTo(index)"
-            ></i>
+            }}<i title="定位" class="header-icon el-icon-s-promotion flyBtn2" @click.stop="flyTo(index)"></i>
           </template>
-          <el-table
-            :data="item"
-            :show-header="false"
-            border
-            style="width: 100%"
-          >
+          <el-table :data="item" :show-header="false" border style="width: 100%">
             <el-table-column prop="name" label="字段" width="100">
             </el-table-column>
             <el-table-column prop="value" label="值" width="208">
@@ -88,6 +56,7 @@ export default {
   name: "clickQuery",
   data() {
     return {
+      inited: false,
       activeLayerName: "",
       columns: [
         {
@@ -138,7 +107,8 @@ export default {
       return store.state.toolBar[9];
     },
   },
-  created() {},
+  created() {
+  },
   watch: {
     activeLayerId(val) {
       if (val && val != "0") {
@@ -155,16 +125,18 @@ export default {
         }
       }
     },
+    PoinyQueryShow(val) {
+      if (!this.inited) {
+        this.inited = !this.inited;
+        this.viewer = viewer;
+        this.viewer.entities.removeAll();
+        this.handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
+        this.dataSourceLayer = new Cesium.CustomDataSource("query");
+        this.viewer.dataSources.add(this.dataSourceLayer);
+      }
+    }
   },
   mounted() {
-    //this.mapLayerQuery();
-    this.$nextTick((res) => {
-      this.viewer = viewer;
-      this.viewer.entities.removeAll();
-      this.handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
-      this.dataSourceLayer = new Cesium.CustomDataSource("query");
-      this.viewer.dataSources.add(this.dataSourceLayer);
-    });
   },
   methods: {
     toggleVisibility() {