From a6069df12050e0bff8aaa2d530b9cc8d348910ca Mon Sep 17 00:00:00 2001
From: 少年 <1392120328@qq.com>
Date: 星期二, 06 二月 2024 17:28:21 +0800
Subject: [PATCH] Merge branch 'master' of http://106.120.22.35:48888/r/PM20221203225_MobileWeb

---
 src/components/sideMenu/layerMenu/layerPanel2.vue |  176 +++++++++++++++++-----------------------------------------
 1 files changed, 52 insertions(+), 124 deletions(-)

diff --git a/src/components/sideMenu/layerMenu/layerPanel2.vue b/src/components/sideMenu/layerMenu/layerPanel2.vue
index e4c3a1c..2c56ef1 100644
--- a/src/components/sideMenu/layerMenu/layerPanel2.vue
+++ b/src/components/sideMenu/layerMenu/layerPanel2.vue
@@ -33,30 +33,6 @@
         </div>
       </div>
     </div>
-    <!-- <div class="areaType" style="margin-top: 10px">
-      <div class="title">
-        涓撻鍥惧眰
-        <span class="more" @click.stop="showLayerTree"
-          >鏇村鍥惧眰<i class="el-icon-arrow-right"></i
-        ></span>
-      </div>
-      <div class="container">
-        <div
-          class="layerItem"
-          :key="value1.id"
-          v-for="(value1, index1) in areaTypeList"
-          @click.stop="handleAreaClick(value1, index1)"
-        >
-          <img
-            :src="value1.src"
-            :class="{ active: curAreaTypeIndex == index1 }"
-          />
-          <span :class="{ spanActive: curAreaTypeIndex == index1 }">{{
-            value1.name
-          }}</span>
-        </div>
-      </div>
-    </div> -->
     <div class="areaType" style="margin-top: 10px">
       <div class="title">
         涓撻搴旂敤
@@ -129,10 +105,16 @@
   clearLayerByTypeId,
   clearLayerByTypeIdArr,
 } from "@/utils/map.js";
-import _GLOBAL from "@/assets/GLOBAL";
-import store from "@/utils/store.js";
-import ZTTitem from "@/utils/ztt.js";
+import _GLOBAL from "@/assets/GLOBAL2";
+import store from "@/utils/store2.js";
+import ZTTitem from "@/utils/ztt2.js";
 import { layers } from "../../../../static/json/layer.js";
+
+// import Tile from "ol/layer/Tile";
+// import XYZ from "ol/source/XYZ";
+// import { get as getProjection, getTransform } from "ol/proj";
+// import { createXYZ } from "ol/tilegrid";
+
 export default {
   name: "LayerPanel",
   data() {
@@ -153,22 +135,7 @@
           src: require("@/assets/img/layer/yxdt.png"),
         },
       ],
-      sMapModelList: [
-        // {
-        //   id: "3Dcs",
-        //   name: "3D鍩庡競",
-        //   active: false,
-        //   type: "san",
-        //   src: require("@/assets/img/layer/3Dcs.png"),
-        // },
-        // {
-        //   id: "swmx",
-        //   name: "涓夌淮妯″瀷",
-        //   active: false,
-        //   type: "san",
-        //   src: require("@/assets/img/layer/swmx.png"),
-        // },
-      ],
+      sMapModelList: [],
       areaTypeList: [
         {
           id: "瑙勫垝鑼冨洿",
@@ -225,7 +192,7 @@
       ],
       zhuantiList: ZTTitem,
       //curMapModelIndex: 1,
-      curEMapModelIndex: 0,
+      curEMapModelIndex: 1,
       curSMapModelIndex: -1,
       curAreaTypeIndex: -1,
       curYjIndex: -1,
@@ -286,31 +253,13 @@
     },
     // 浜岀淮搴曞浘閫夋嫨
     handleEMapClick(result, index) {
-      let p = sgworld.Navigate.getCameraInfo();
-      let pitch;
-      if (pitch !== -90) {
-        pitch = -90;
-        sgworld.Navigate.flyToPointsInterest({
-          destination: new Cesium.Cartesian3.fromDegrees(
-            p.location.lon,
-            p.location.lat,
-            p.location.height
-          ),
-          orientation: {
-            heading: Cesium.Math.toRadians(0),
-            pitch: Cesium.Math.toRadians(pitch),
-            roll: Cesium.Math.toRadians(0),
-          },
-        });
-      }
-
       // 璁剧疆鐩告満
       if (result.name == "浜岀淮鍦板浘") {
-        window.Viewer.scene.globe.maximumScreenSpaceError = 4 / 3;
-        this.changeLayerView(25000, false);
+        window.map.getLayerByName("浜岀淮鍦板浘").setVisible(true);
+        window.map.getLayerByName("褰卞儚鍦板浘").setVisible(false);
       } else if (result.name == "褰卞儚鍦板浘") {
-        window.Viewer.scene.globe.maximumScreenSpaceError = 4 / 3;
-        this.changeLayerView(50000, false);
+        window.map.getLayerByName("褰卞儚鍦板浘").setVisible(true);
+        window.map.getLayerByName("浜岀淮鍦板浘").setVisible(false);
       }
       // 鍒囨崲鍥惧眰
       const val = layers.filter((res) => {
@@ -435,6 +384,7 @@
     },
     // 绗簩琛� 涓撻鍥� 鐐瑰嚮
     handleZTlick(result, index) {
+      console.log(result, index);
       const val = layers.filter((res) => {
         if (res.name == result.name) {
           return res;
@@ -443,38 +393,11 @@
       const children = val[0].children;
       if (this.curZTIndex == index) {
         this.curZTIndex = -1;
-        //   let _data = sgworld.ProjectTree.getObject(children[0].id);
-        //   if (_data) {
-        //     sgworld.ProjectTree.setVisibility(children[0].id, false);
-        //   }
+
         store.setThematicLayerItemId("");
       } else {
         this.curZTIndex = index;
         store.setThematicLayerItemId(children);
-
-        //   //娓呴櫎
-        //   // let arr = [
-        //   //   "GuiHuaFanWeiShiYiTu",
-        //   //   "XingZhengQuHuaTu",
-        //   //   "GuiHuaDanYuanHuaFenTu",
-        //   //   "ZhuYaoGongNengQuGuiHuaShiYiTu",
-        //   // ];
-        //   // arr.forEach((item) => {
-        //   //   sgworld.ProjectTree.getObject(item) &&
-        //   //     sgworld.ProjectTree.setVisibility(item, false);
-        //   // });
-        //   let dataObj = sgworld.ProjectTree.getObject(result.id);
-        //   if (dataObj) {
-        //     sgworld.ProjectTree.setVisibility(result.id, true);
-        //   } else {
-        //     _GLOBAL.layers[result.id] = [];
-        //     children.forEach((item) => {
-        //       let itemLayer = loadLayer(item);
-        //       _GLOBAL.layers[result.id].push(itemLayer);
-        //       console.log(_GLOBAL.layers[result.id]);
-        //     });
-        //   }
-        //   // store.setThematicLayerItemId(result.id);
       }
     },
     // 绗笁琛� 涓撻鍔熻兘 鐐瑰嚮
@@ -504,30 +427,41 @@
         this.curFuncIndex = index;
         switch (index) {
           case 0:
+            if (window.tdgllayer) {
+              window.map.removeLayer(window.tdgllayer);
+              store.setSliderShow(false);
+              window.tdgllayer = null;
+              window.map.removeLayer(window.tdgllayer);
+              return;
+            }
             store.setSliderShow(true);
-            window.tdglLayer = sgworld.Creator.createImageryProvider(
-              layers[8].name,
-              "tms",
-              {
-                id: layers[8].children[0].id,
-                url: layers[8].children[0].urls,
-                fileExtension: layers[8].children[0].img || "png",
-                enablePickFeatures: false,
-                level: layers[8].children[0].Level,
-                minimumLevel: layers[8].children[0].minimumLevel,
-                maximumLevel: layers[8].children[0].maximumLevel,
-                tilingScheme:
-                  layers[8].children[0].tileType === "Geo"
-                    ? new Cesium.GeographicTilingScheme()
-                    : new Cesium.WebMercatorTilingScheme(),
-                // alpha: layers[8].children[0].alpha,
-                alpha: this.alpha,
-              },
-              "0",
-              layers[8].children[0].zIndex,
-              true,
-              ""
-            );
+
+            var url = layers[8].children[0].urls;
+            //"https://skyzt.bda.gov.cn/gisserver/tmsserver/chengshiguihua_dikuaibianhao_tms/";
+
+            window.map.removeLayer(window.tdgllayer);
+            window.tdgllayer = new ol.layer.Tile({
+              source: new ol.source.XYZ({
+                projection: "EPSG:4326",
+                tileGrid: ol.tilegrid.createXYZ({
+                  extent: [50.582, -90, 180, 70.1558],
+                }),
+                tileUrlFunction: function (tileCoord, pixelRatio, proj) {
+                  // return url + (tileCoord[0] - 1) + '/' + tileCoord[1] + '/' + (Math.pow(2, tileCoord[0] - 1) + tileCoord[2]) + '.jpeg';
+                  return (
+                    url +
+                    "/" +
+                    (tileCoord[0] - 1) +
+                    "/" +
+                    tileCoord[1] +
+                    "/" +
+                    (Math.pow(2, tileCoord[0] - 1) + tileCoord[2]) +
+                    ".jpeg"
+                  );
+                },
+              }),
+            });
+            window.map.addLayer(window.tdgllayer);
             //鏄剧ず婊戝姩鏉�
             store.setTdglFlag(true);
             break;
@@ -536,7 +470,7 @@
             store.setTdglFlag(false);
             if (window.tdglLayer) {
               store.setSliderShow(false);
-              sgworld.Creator.DeleteObject(window.tdglLayer);
+              window.map.removeLayer(window.tdgllayer);
             }
             store.setHistoryShow(true);
             break;
@@ -588,12 +522,6 @@
       immediate: true, //鍒锋柊鍔犺浇 绔嬮┈瑙﹀彂涓�娆andler
       deep: true, // 鍙互娣卞害妫�娴嬪埌 obj 瀵硅薄鐨勫睘鎬у�肩殑鍙樺寲
     },
-    // "state1.alpha": {
-    //   handler: function (newVal) {
-    //     this.handleFuncClick(0);
-    //   },
-    //   deep: true,
-    // },
   },
   computed: {
     alpha() {

--
Gitblit v1.9.3