Pārlūkot izejas kodu

Merge branch 'master' of http://114.244.114.158:8802/siwei/real3d-portalsite into keke

LAPTOP-BJJ3IV5R\SIWEI 1 gadu atpakaļ
vecāks
revīzija
21013235dc

+ 24 - 45
src/components/3DAnalysis/Smashing/Smashing.vue

@@ -14,11 +14,6 @@
           Resource.clear
         }}</el-button>
       </div>
-      <!-- <el-select v-model="value" placeholder="请选择对象">
-        <el-option v-for="(item, index) in options" :key="index" :label="item.name" :value="item"
-          @click.native="test(item)">
-        </el-option>
-      </el-select> -->
     </div>
   </div>
 </template>
@@ -37,11 +32,6 @@ export default {
       //存储压平数据名称
       flattenNames: [],
       handlerTemp: null,
-      options: [],
-      value: "",
-      // primitive:undefined
-      testLay: undefined,
-      nameStr: "",
     };
   },
   computed: {
@@ -53,20 +43,9 @@ export default {
     },
   },
   beforeDestroy() {},
-  mounted() {
-    // store.state.S3MList.forEach((s) => {
-    //   s.forEach((i) => {
-    //     this.options.push(i);
-    //   });
-    // });
-  },
+  mounted() {},
   methods: {
-    test(val) {
-      // console.log("woshi", val);
-      this.testLay = val;
-      this.value = val.name;
-      viewer.flyTo(val);
-    },
+    //压平测试方法
     tempTest() {
       let pos = [
         109.61859827027874, 18.321966806715164, -1.2607129544892512,
@@ -75,12 +54,15 @@ export default {
         109.62015920613872, 18.29884447877476, -0.8767527547718837,
       ];
       let aaa = store.state.tempLatData[0];
+      this.flattenNames = [];
       //遍历所有s3m图层,设置压平
       for (var i = 0; i < aaa.length; i++) {
+        let nameStr = "flatten" + new Date().getTime();
         aaa[i].addFlattenRegion({
           position: pos,
-          name: "flatten" + Cesium.createGuid(),
+          name: nameStr,
         });
+        this.flattenNames.push(nameStr);
       }
     },
     createSmashing() {
@@ -89,17 +71,6 @@ export default {
       let tooltip = createTooltip(document.body);
 
       that.clear();
-      // let handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
-      // handler.setInputAction((event) => {
-      //   var pickObj = viewer.scene.pick(event.position);
-      //   var position = viewer.scene.pickPosition(event.position);
-      //   var cartographic = Cesium.Cartographic.fromCartesian(position);
-      //   console.log(event, "event", pickObj,position);
-      //   if (!position) {
-      //     position = Cesium.Cartesian3.fromDegrees(0, 0, 0);
-      //   }
-      // }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
-
       if (that.handler_Cut_fill == null) {
         that.handler_Cut_fill = new Cesium.DrawHandler(
           viewer,
@@ -162,13 +133,17 @@ export default {
           }
         }
         viewer.scene.globe.removeAllExcavationRegion();
-        let aaa = store.state.tempLatData[0];
+        let s3mLayers = store.state.tempLatData[0];
         //遍历所有s3m图层,设置压平
-        for (var i = 0; i < aaa.length; i++) {
-          aaa[i].addFlattenRegion({
+        for (var i = 0; i < s3mLayers.length; i++) {
+          let nameStr = "flatten" + new Date().getTime(); //创建唯一名称
+          //倾斜影像压平处理
+          s3mLayers[i].addFlattenRegion({
             position: positions,
-            name: "flatten" + Cesium.createGuid(),
+            name: nameStr,
           });
+          //推送压平实体名称
+          this.flattenNames.push(nameStr);
         }
         positions = [];
         that.handler_Cut_fill.polygon.show = false;
@@ -187,12 +162,16 @@ export default {
         that.value = "";
       }
 
-      // if (store.state.flattenNames.length) {
-      //   store.state.flattenNames.forEach((el) => {
-      //     that.testLay.removeFlattenRegion("flatten" + el);
-      //   });
-      //   store.state.flattenNames = [];
-      // }
+      if (this.flattenNames.length) {
+        //图层数据
+        let layersData = store.state.tempLatData[0];
+        //遍历所有s3m图层,删除压平
+        for (var i = 0; i < layersData.length; i++) {
+          layersData[i].removeFlattenRegion(this.flattenNames[i]);
+          this.flattenNames.push(nameStr);
+        }
+        this.flattenNames = [];
+      }
     },
   },
   watch: {

+ 4 - 0
src/components/Combinations/LayerManage/LayerManage.vue

@@ -239,6 +239,10 @@ export default {
               let style = new Cesium.Style3D();
               style.bottomAltitude = window.modelBottomAltitude; //底部高度
               item.style3D = style;
+              item.brightness = 1.2
+              item.contrast = 1.2
+              item.saturation  = 1.2
+              item.gamma  = 1.1
             }
             if (
               item.name.indexOf("雨水") > -1 ||

+ 6 - 3
src/components/Query/clickQuery/clickQuery.vue

@@ -238,6 +238,7 @@ export default {
     },
     toggleVisibility() {
       this.removeMapLayerQuery();
+      this.remove_query_click()
       store.setToolBarAction(9);
       tdsy.remove(false);
       store.state.vectorData = [];
@@ -319,7 +320,8 @@ export default {
             points.push(cx);
             points.push(cy);
           }
-          let e = this.dataSourceLayer.entities.add({
+          // let e = this.dataSourceLayer.entities.
+          let e = this.viewer.entities.add({
             polyline: new Cesium.PolylineGraphics({
               positions: Cesium.Cartesian3.fromDegreesArray(points),
               width: 3,
@@ -328,7 +330,7 @@ export default {
             }),
           });
         }
-        this.viewer.flyTo(this.dataSourceLayer);
+        this.viewer.flyTo(e);
       } else {
         this.$message({
           message: "空间范围为空!",
@@ -356,6 +358,7 @@ export default {
       that.activeLayerId = "0";
       that.layerList = [];
       that.layersData = [];
+      this.remove_query_click();
       let scene = viewer.scene;
       that.viewer.entities.removeAll();
       that.dataSourceLayer.entities.removeAll();
@@ -822,7 +825,7 @@ export default {
         case 1: {
           this.mapQuerys("mapLayerQuery"); //图层点击事件
           this.remove_query_click();
-
+          this.viewer.entities.removeAll();
           break;
         }
         case 2: {

+ 35 - 31
src/views/cockpit/common/VectorSpace/BoxCommonVector.vue

@@ -143,52 +143,56 @@ export default {
       let res = await QueryOne({ jscType, id: "4602" });
       this.layersData = {
         ...res.data,
-        title: this.title,
-        id: "81f91e995b80435184cc51519bf0c1d3",
+        label: this.title,
+        // url: "http://192.168.60.2:8090/iserver/services/map-YinZiGongZuoKongJian/rest/maps/ssxf",
       };
       if (goitrem) this.go(goitrem);
       else {
         tdsy.addLayer(this.layersData);
         store.state.vectorlayerlist.push(this.layersData);
-        console.log("---aaa", store.state.vectorlayerlist);
       }
-      // this.Getlayers(res.data.url);
     },
     async Getlayers(mapurl) {
       let url = `${mapurl}/layers.json`;
       let res = await axios.get(url);
       let layers = res.data[0].subLayers.layers;
-      if (layers.length > 0) this.layersData.layerName = layers[0].name;
+      if (layers.length > 0) {
+        var params_gh = {
+          layerName: layers[0].name,
+          isVisible: true,
+          displayFilter: `xmmc = '${item["项目名称"]}'`,
+        };
+        tdsy.superProvider.setLayerStatusParameters([params_gh]).then((res) => {
+          if (res) this.goLayer(item.geom, res);
+        });
+      }
     },
     async setLayerStatus(item) {
-      let did_v = Number(item.did) - 1;
-      this.tempdataLayerId = did_v;
-      if (tdsy.layersObj[did_v]) {
-        tdsy.layersObj[did_v].show = true;
-        viewer.flyTo(layerSources[did_v], {
-          offset: new Cesium.HeadingPitchRange(0, -45),
-        });
+      if (item.did) {
+        let did_v = `[${Number(item.did) - 1}]`;
+        this.tempdataLayerId = did_v;
+        if (tdsy.layersObj[did_v]) {
+          tdsy.layersObj[did_v].show = true;
+          viewer.flyTo(layerSources[did_v], {
+            offset: new Cesium.HeadingPitchRange(0, -45),
+          });
+        } else {
+          this.goLayer(item.geom, did_v);
+        }
       } else {
-        if (tdsy.layer) tdsy.layer.show = false;
-        let layer = viewer.imageryLayers.addImageryProvider(
-          new Cesium.SuperMapImageryProvider({
-            url: this.layersData.url,
-            layersID: `[${did_v}]`,
-          })
-        );
-        tdsy.layersObj[did_v] = layer;
-        this.loadGeoJSON(item.geom, did_v);
+        this.Getlayers(this.layersData.url);
       }
-      // } else if (this.layersData.layerName) {
-      //   var params_gh = {
-      //     layerName: this.layersData.layerName,
-      //     isVisible: true,
-      //     displayFilter: `xmmc = '${item["项目名称"]}'`,
-      //   };
-      //   tdsy.superProvider.setLayerStatusParameters([params_gh]);
-      //   tdsy.layer.show = false;
-      //   let layer = viewer.imageryLayers.addImageryProvider(tdsy.superProvider);
-      //   tdsy.layersObj[item.did] = layer;
+    },
+    goLayer(geom, lid) {
+      if (tdsy.layer) tdsy.layer.show = false;
+      let layer = viewer.imageryLayers.addImageryProvider(
+        new Cesium.SuperMapImageryProvider({
+          url: this.layersData.url,
+          layersID: lid,
+        })
+      );
+      tdsy.layersObj[lid] = layer;
+      this.loadGeoJSON(geom, lid);
     },
     loadGeoJSON(geojson, id) {
       let polygon = Cesium.GeoJsonDataSource.load(geojson, {

+ 2 - 2
src/views/cockpit/js/tdsy.js

@@ -41,7 +41,7 @@ export function addLayer(obj) {
     // this.bus.$emit("checkedChange", {...obj,checked:true });
     superProvider = new Cesium.SuperMapImageryProvider({
         url: obj.url,
-        name: obj.title,
+        name: obj.label,
     })
     layer = viewer.imageryLayers.addImageryProvider(superProvider);
     viewer.flyTo(layer);
@@ -53,7 +53,7 @@ export const remove = (isreset) => {
         viewer.dataSources.remove(gy_jd_entity);
         gy_jd_entity = null
     }
-    if (layer) {
+    if (layer && isreset) {
         viewer.imageryLayers.remove(layer);
         layer = null
     }

+ 2 - 7
src/views/cockpit/kjgh.vue

@@ -138,7 +138,7 @@ export default {
         ghdkmj: obj_kfbjmj_data.data[0].ghdkmj//已入库管控范围
       });
     },
-    async draw_vector(type,title) {
+    async draw_vector(type,label) {
       store.setViewerFlagb(false);
       store.setToolBarShow(false);
       store.setXzqh_flag(false);
@@ -146,13 +146,8 @@ export default {
         jscType: `jsc_kjgh_${type}_layer`,
         id: "4602",
       })
-      let layersData = { ...res.data, title };
-      let tempTreeData = store.state.tempResourceTree;
-      if (tempTreeData.length > 0) {
-        layersData = tempTreeData[0].children.find((i) => i.title == title);
+      let layersData = { ...res.data ,label,source: res.data.sde};
         store.state.vectorlayerlist.push(layersData);
-        console.log("---aaa", store.state.vectorlayerlist);
-      }
       tdsy.addLayer(layersData);
     },
   },