From 9468898e83478c60165b987350f35edb6d1c77f8 Mon Sep 17 00:00:00 2001
From: Surpriseplus <845948745@qq.com>
Date: 星期五, 17 三月 2023 09:34:27 +0800
Subject: [PATCH] 底图切换

---
 src/assets/img/imageLayer/tdmap_map.jpg    |    0 
 src/assets/img/imageLayer/baidu_qbj.jpg    |    0 
 src/assets/img/imageLayer/geoq_cs.png      |    0 
 src/components/mapol.vue                   |   45 +++-
 src/assets/img/imageLayer/arcgis_image.png |    0 
 src/assets/img/imageLayer/baidu_zrl.jpg    |    0 
 src/assets/img/imageLayer/tdmap_label.jpg  |    0 
 src/components/mapsdk.vue                  |   61 +------
 src/assets/img/imageLayer/baidu_qxl.jpg    |    0 
 src/assets/img/imageLayer/tdmap_image.jpg  |    0 
 src/assets/img/imageLayer/baidu_jj.jpg     |    0 
 src/assets/img/imageLayer/arcgis_map.png   |    0 
 src/assets/img/imageLayer/baidu_dark.jpg   |    0 
 src/assets/img/imageLayer/geoq_yw.png      |    0 
 src/assets/img/imageLayer/baidu_qcl.jpg    |    0 
 src/assets/img/imageLayer/txmap_dark.png   |    0 
 src/assets/img/imageLayer/txmap_image.png  |    0 
 src/assets/img/imageLayer/baidu_map.jpg    |    0 
 src/assets/img/imageLayer/geoq_hs.png      |    0 
 src/assets/img/imageLayer/gdmap_image.jpg  |    0 
 src/views/Tools/AddOnlineMap.vue           |  320 ++++++++++++++++++++++++++++++++++++++++
 src/assets/img/imageLayer/baidu_gdh.jpg    |    0 
 src/assets/img/imageLayer/geoq_dark.png    |    0 
 src/assets/img/imageLayer/txmap_tm.png     |    0 
 src/components/MapDiv.vue                  |   14 +
 src/assets/img/imageLayer/gdmap_label.jpg  |    0 
 src/assets/img/imageLayer/txmap_label.png  |    0 
 src/assets/img/imageLayer/gdmap_map.jpg    |    0 
 src/assets/img/imageLayer/geoq_ns.png      |    0 
 src/assets/img/imageLayer/baidu_pink.jpg   |    0 
 src/assets/img/imageLayer/baidu_wyl.jpg    |    0 
 src/assets/img/imageLayer/txmap_map.png    |    0 
 src/assets/img/imageLayer/baidu_red.jpg    |    0 
 src/assets/img/imageLayer/geoq_sx.png      |    0 
 src/assets/img/imageLayer/geoq_xzqh.png    |    0 
 35 files changed, 373 insertions(+), 67 deletions(-)

diff --git a/src/assets/img/imageLayer/arcgis_image.png b/src/assets/img/imageLayer/arcgis_image.png
new file mode 100644
index 0000000..44296c8
--- /dev/null
+++ b/src/assets/img/imageLayer/arcgis_image.png
Binary files differ
diff --git a/src/assets/img/imageLayer/arcgis_map.png b/src/assets/img/imageLayer/arcgis_map.png
new file mode 100644
index 0000000..9d974e9
--- /dev/null
+++ b/src/assets/img/imageLayer/arcgis_map.png
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_dark.jpg b/src/assets/img/imageLayer/baidu_dark.jpg
new file mode 100644
index 0000000..e4e1b73
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_dark.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_gdh.jpg b/src/assets/img/imageLayer/baidu_gdh.jpg
new file mode 100644
index 0000000..f8a22e8
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_gdh.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_jj.jpg b/src/assets/img/imageLayer/baidu_jj.jpg
new file mode 100644
index 0000000..23a9eb2
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_jj.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_map.jpg b/src/assets/img/imageLayer/baidu_map.jpg
new file mode 100644
index 0000000..b05caae
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_map.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_pink.jpg b/src/assets/img/imageLayer/baidu_pink.jpg
new file mode 100644
index 0000000..0093c36
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_pink.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_qbj.jpg b/src/assets/img/imageLayer/baidu_qbj.jpg
new file mode 100644
index 0000000..0ab6bf9
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_qbj.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_qcl.jpg b/src/assets/img/imageLayer/baidu_qcl.jpg
new file mode 100644
index 0000000..6ddd560
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_qcl.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_qxl.jpg b/src/assets/img/imageLayer/baidu_qxl.jpg
new file mode 100644
index 0000000..93a14fb
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_qxl.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_red.jpg b/src/assets/img/imageLayer/baidu_red.jpg
new file mode 100644
index 0000000..86d4c8b
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_red.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_wyl.jpg b/src/assets/img/imageLayer/baidu_wyl.jpg
new file mode 100644
index 0000000..79464dc
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_wyl.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/baidu_zrl.jpg b/src/assets/img/imageLayer/baidu_zrl.jpg
new file mode 100644
index 0000000..39a8be4
--- /dev/null
+++ b/src/assets/img/imageLayer/baidu_zrl.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/gdmap_image.jpg b/src/assets/img/imageLayer/gdmap_image.jpg
new file mode 100644
index 0000000..61969e0
--- /dev/null
+++ b/src/assets/img/imageLayer/gdmap_image.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/gdmap_label.jpg b/src/assets/img/imageLayer/gdmap_label.jpg
new file mode 100644
index 0000000..4dbbe55
--- /dev/null
+++ b/src/assets/img/imageLayer/gdmap_label.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/gdmap_map.jpg b/src/assets/img/imageLayer/gdmap_map.jpg
new file mode 100644
index 0000000..b9685af
--- /dev/null
+++ b/src/assets/img/imageLayer/gdmap_map.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/geoq_cs.png b/src/assets/img/imageLayer/geoq_cs.png
new file mode 100644
index 0000000..28e9b3e
--- /dev/null
+++ b/src/assets/img/imageLayer/geoq_cs.png
Binary files differ
diff --git a/src/assets/img/imageLayer/geoq_dark.png b/src/assets/img/imageLayer/geoq_dark.png
new file mode 100644
index 0000000..19e2332
--- /dev/null
+++ b/src/assets/img/imageLayer/geoq_dark.png
Binary files differ
diff --git a/src/assets/img/imageLayer/geoq_hs.png b/src/assets/img/imageLayer/geoq_hs.png
new file mode 100644
index 0000000..e3cdd43
--- /dev/null
+++ b/src/assets/img/imageLayer/geoq_hs.png
Binary files differ
diff --git a/src/assets/img/imageLayer/geoq_ns.png b/src/assets/img/imageLayer/geoq_ns.png
new file mode 100644
index 0000000..a7700f1
--- /dev/null
+++ b/src/assets/img/imageLayer/geoq_ns.png
Binary files differ
diff --git a/src/assets/img/imageLayer/geoq_sx.png b/src/assets/img/imageLayer/geoq_sx.png
new file mode 100644
index 0000000..c425cd7
--- /dev/null
+++ b/src/assets/img/imageLayer/geoq_sx.png
Binary files differ
diff --git a/src/assets/img/imageLayer/geoq_xzqh.png b/src/assets/img/imageLayer/geoq_xzqh.png
new file mode 100644
index 0000000..b841e4c
--- /dev/null
+++ b/src/assets/img/imageLayer/geoq_xzqh.png
Binary files differ
diff --git a/src/assets/img/imageLayer/geoq_yw.png b/src/assets/img/imageLayer/geoq_yw.png
new file mode 100644
index 0000000..98f91dd
--- /dev/null
+++ b/src/assets/img/imageLayer/geoq_yw.png
Binary files differ
diff --git a/src/assets/img/imageLayer/tdmap_image.jpg b/src/assets/img/imageLayer/tdmap_image.jpg
new file mode 100644
index 0000000..fd30319
--- /dev/null
+++ b/src/assets/img/imageLayer/tdmap_image.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/tdmap_label.jpg b/src/assets/img/imageLayer/tdmap_label.jpg
new file mode 100644
index 0000000..4f960a3
--- /dev/null
+++ b/src/assets/img/imageLayer/tdmap_label.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/tdmap_map.jpg b/src/assets/img/imageLayer/tdmap_map.jpg
new file mode 100644
index 0000000..cc38007
--- /dev/null
+++ b/src/assets/img/imageLayer/tdmap_map.jpg
Binary files differ
diff --git a/src/assets/img/imageLayer/txmap_dark.png b/src/assets/img/imageLayer/txmap_dark.png
new file mode 100644
index 0000000..64805a0
--- /dev/null
+++ b/src/assets/img/imageLayer/txmap_dark.png
Binary files differ
diff --git a/src/assets/img/imageLayer/txmap_image.png b/src/assets/img/imageLayer/txmap_image.png
new file mode 100644
index 0000000..5e3fb43
--- /dev/null
+++ b/src/assets/img/imageLayer/txmap_image.png
Binary files differ
diff --git a/src/assets/img/imageLayer/txmap_label.png b/src/assets/img/imageLayer/txmap_label.png
new file mode 100644
index 0000000..cd99a48
--- /dev/null
+++ b/src/assets/img/imageLayer/txmap_label.png
Binary files differ
diff --git a/src/assets/img/imageLayer/txmap_map.png b/src/assets/img/imageLayer/txmap_map.png
new file mode 100644
index 0000000..a12b2ca
--- /dev/null
+++ b/src/assets/img/imageLayer/txmap_map.png
Binary files differ
diff --git a/src/assets/img/imageLayer/txmap_tm.png b/src/assets/img/imageLayer/txmap_tm.png
new file mode 100644
index 0000000..d2ab576
--- /dev/null
+++ b/src/assets/img/imageLayer/txmap_tm.png
Binary files differ
diff --git a/src/components/MapDiv.vue b/src/components/MapDiv.vue
index d28f4f8..b926a6d 100644
--- a/src/components/MapDiv.vue
+++ b/src/components/MapDiv.vue
@@ -23,20 +23,25 @@
     >
       <mapol></mapol>
     </div>
+    <add-online-map ref="addOnlineMap" />
   </div>
 </template>
 
 <script>
+
 import mapsdk from "./mapsdk"
 import mapol from "./mapol"
 import { transform } from "ol/proj"
 import ol from "ol"
 import $ from "jquery"
+import AddOnlineMap from '../views/Tools/AddOnlineMap.vue'
 export default {
   name: "",
+
   components: {
     mapsdk,
     mapol,
+    AddOnlineMap
   },
   data() {
     return {
@@ -222,8 +227,17 @@
       }
       return this.levelArray[this.levelArray.length - 1]
     },
+    showBaseMapLayer() {
+      this.$refs && this.$refs.addOnlineMap && this.$refs.addOnlineMap.open("鍦颁笅妯″紡", null);
+    }
   },
   mounted() {
+    this.$bus.$on("setChangeBaseMapLayer", (res) => {
+      this.showBaseMapLayer()
+
+
+    })
+    // 
     this.$bus.$on("changemap", e => {
       if (this.isSplitFlag == 1) {
         this.changeMap(3)
diff --git a/src/components/mapol.vue b/src/components/mapol.vue
index 27fd561..446f170 100644
--- a/src/components/mapol.vue
+++ b/src/components/mapol.vue
@@ -95,24 +95,24 @@
   methods: {
 
     init2DMap() {
-      var vectorLayer = new TileLayer({
-        source: new XYZ({
-          url: "http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}",
-        }),
-      })
-      var imageLayer = new TileLayer({
-        source: new XYZ({
-          url: "http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=6&x={x}&y={y}&z={z}",
-        }),
-      })
+      // var vectorLayer = new TileLayer({
+      //   source: new XYZ({
+      //     url: "http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}",
+      //   }),
+      // })
+      // var imageLayer = new TileLayer({
+      //   source: new XYZ({
+      //     url: "http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=6&x={x}&y={y}&z={z}",
+      //   }),
+      // })
       window.map = new Map({
         target: "mapol",
-        layers: [imageLayer, vectorLayer],
+        layers: [],
         view: new View({
           center: [105.02, 34.9],
           zoom: 4,
           projection: "EPSG:4326",
-          minZoom: 4,
+          minZoom: 5,
         }),
         controls: defaultControls().extend([
           new FullScreen(),
@@ -120,6 +120,20 @@
         ]),
         interactions: defaultInteractions().extend([new DragRotateAndZoom()]),
       })
+
+      window.olBaseMapLayer = new TileLayer({
+        title: "楂樺痉鍦板浘",
+        source: new XYZ({
+          url: gaoDeBaseUrl[1].url,
+          wrapX: false
+        })
+      });
+      window.map.addLayer(window.olBaseMapLayer);
+
+
+
+
+
       // var scaleLine = new  ScaleLine({
       //   units: "metric"
       // });
@@ -148,9 +162,10 @@
     },
 
     changeMenulayer() {
-      this.isActive = !this.isActive
-      this.isMenuLayer = !this.isMenuLayer
-      this.setLayerVisible()
+      this.$bus.$emit("setChangeBaseMapLayer", true)
+      // this.isActive = !this.isActive
+      // this.isMenuLayer = !this.isMenuLayer
+      // this.setLayerVisible()
     },
     setLayerVisible() {
       if (this.isActive == true) {
diff --git a/src/components/mapsdk.vue b/src/components/mapsdk.vue
index f4d5460..2e1e1f6 100644
--- a/src/components/mapsdk.vue
+++ b/src/components/mapsdk.vue
@@ -575,6 +575,7 @@
       <!--          v-bind:class="{ active: isActive, menuLayer: isMenuLayer }"-->
       <!--        ></div>-->
       <!--      </div>-->
+
     </div>
   </div>
 </template>
@@ -583,6 +584,7 @@
 import $ from "jquery";
 import mapMenuTop from "./MapView/mapMenuTop.vue";
 import mapSpaceTop from "./MapView/mapSpaceTop.vue";
+
 import {
   select_Comprehensive_ByPageAndCount,
   select_Comprehensive_SelectWktById,
@@ -596,6 +598,7 @@
   components: {
     mapMenuTop,
     mapSpaceTop,
+
   },
   data() {
     var validatePosition = (rule, value, callback) => {
@@ -801,35 +804,12 @@
       Viewer.camera.flyTo({
         destination: Cesium.Cartesian3.fromDegrees(110, 33, 8000000),
       });
-      this.layer1 = Viewer.imageryLayers.addImageryProvider(
-        new Cesium.UrlTemplateImageryProvider({
-          url: gaoDeBaseUrl[0].url,
-        })
-      );
 
-      this.layer2 = Viewer.imageryLayers.addImageryProvider(
+      window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider(
         new Cesium.UrlTemplateImageryProvider({
           url: gaoDeBaseUrl[1].url,
         })
       );
-      // this.layer3 = Viewer.imageryLayers.addImageryProvider(
-      //   new Cesium.UrlTemplateImageryProvider({
-      //     url: gaoDeBaseUrl[2].url,
-      //   })
-      // );
-
-      // window.ImageLayer3 = this.layer3;
-
-      // for (var i in gaoDeBaseUrl) {
-      //   sgworld.Creator.createUrlTemplateImageryProvider(
-      //     gaoDeBaseUrl[i].label,
-      //     gaoDeBaseUrl[i].url,
-      //     '0',
-      //     undefined,
-      //     true,
-      //     ''
-      //   );
-      // }
 
       Viewer._enableInfoOrSelection = false;
       //鏄剧ずfps
@@ -841,24 +821,7 @@
       //寮�鍚繁搴︽娴�
       // sgworld.Analysis.depthTestAgainstTerrain(true)
       Viewer.scene.globe.depthTestAgainstTerrain = true;
-      //褰卞儚瀵规瘮璁剧疆
-      // var base = {
-      //   url: 'https://a.tile.openstreetmap.org/',
-      // };
-      // window.openStreetMap = sgworld.Creator.createImageryProvider(
-      //   'OpenStreetMap',
-      //   'OpenStreetMap',
-      //   base,
-      //   '0',
-      //   undefined,
-      //   true,
-      //   ''
-      // );
-      // openStreetMap.item.show = false;
 
-      // Viewer.terrainProvider = new Cesium.CesiumTerrainProvider({
-      //   url: demLayer,
-      // })
       var option = {
         url: window.sceneConfig.SGUrl,
         layerName: window.sceneConfig.mptName,
@@ -869,21 +832,15 @@
       window.elevationTool = new SmartEarth.ElevationTool(window.sgworld);
       elevationTool.setContourColor("#F1D487");
 
-      // var helper = new Cesium.EventHelper();
-      // helper.add(Viewer.scene.globe.tileLoadProgressEvent, function (e) {
 
-      //   if (e == 0) {
-      //     console.log("杩欎釜鏄姞杞芥渶鍚庝竴涓煝閲忓垏鐗囩殑鍥炶皟");
-      //   }
-      //   helper.removeAll();
-      //   helper = undefined;
-      // });
     },
 
     changeMenulayer() {
-      this.isActive = !this.isActive;
-      this.isMenuLayer = !this.isMenuLayer;
-      this.setLayerVisible();
+      this.$bus.$emit("setChangeBaseMapLayer", true)
+      // this.$refs && this.$refs.addOnlineMap && this.$refs.addOnlineMap.open("鍦颁笅妯″紡", null,);
+      // this.isActive = !this.isActive;
+      // this.isMenuLayer = !this.isMenuLayer;
+      // this.setLayerVisible();
     },
     setLayerVisible() {
       if (this.isActive == true) {
diff --git a/src/views/Tools/AddOnlineMap.vue b/src/views/Tools/AddOnlineMap.vue
new file mode 100644
index 0000000..092f8f1
--- /dev/null
+++ b/src/views/Tools/AddOnlineMap.vue
@@ -0,0 +1,320 @@
+<template>
+  <Popup
+    ref="pop"
+    :title="title"
+    @close="close(true)"
+    width="400px"
+    @yes="addData"
+    @cancel="close(false)"
+  >
+
+    <div
+      id="archTopBox"
+      class="archTopBox"
+    >
+
+      <div
+        class="boxCard"
+        v-for="(item,index) in mapList"
+      >
+        <el-card class="box-card">
+          <div
+            slot="header"
+            class="clearfix"
+          >
+            <span style="font-size:14px">{{item.name}}</span>
+            <div style="float: right; padding: 3px 0">
+              <i
+                v-show="!item.isShow"
+                style="margin-left:10px"
+                class="el-icon-arrow-up"
+                :title="$t('archiveObj.fold')"
+                @click="setCardChange(item)"
+              ></i>
+              <i
+                v-show="item.isShow"
+                style="margin-left:10px"
+                class="el-icon-arrow-down"
+                :title="$t('archiveObj.develop')"
+                @click="setCardChange(item)"
+              ></i>
+            </div>
+          </div>
+          <div
+            :id="item.id"
+            style="margin:5px 1px"
+            v-show="!item.isShow"
+          >
+            <div style="margin:10px;width:380px">
+              <div
+                class="map"
+                v-for="(map, mapIndex) in item.list"
+                @click="addImageLayer(map, item)"
+              >
+                <img
+                  style="width: 60px; height: 60px"
+                  :src="map.image"
+                ></img>
+                <div> <el-link :underline="false">
+                    {{ map.name }}
+                  </el-link></div>
+              </div>
+            </div>
+          </div>
+        </el-card>
+
+      </div>
+
+      <!-- <el-collapse :value="activeNames">
+          <el-collapse-item
+            v-for="(mapCollection, index) in mapList"
+            :title="mapCollection.name"
+            :name="mapCollection.name"
+            :key="index"
+          >
+            <div
+              class="map"
+              v-for="(map, mapIndex) in mapCollection.list"
+              :key="mapIndex"
+              @click="addImageLayer(map, mapCollection)"
+            >
+              <el-image
+                style="width: 60px; height: 60px"
+                :src="require(`@assets/imageLayer/${map.image}`)"
+                fit="fill"
+              ></el-image>  
+        <span>{{ map.name }}</span>
+      </div>
+      </el-collapse-item>
+      </el-collapse> -->
+    </div>
+    </el-form>
+  </Popup>
+</template>
+
+<script>
+import Popup from "./Popup";
+import TileLayer from "ol/layer/Tile"
+import XYZ from "ol/source/XYZ"
+// 褰卞儚鍥惧眰
+
+export default {
+  name: "AddOnlineMap",
+  components: {
+    Popup,
+  },
+  mixins: [],
+  data() {
+    return {
+      title: "鍦ㄧ嚎鍦板浘",
+      left: undefined,
+      tokne: "",
+      data: {
+        id: "",
+        sourceType: "",
+        name: "",
+        urls: "",
+        layer: "",
+        alpha: 1,
+        maximumLevel: 26,
+        zIndex: undefined,
+      },
+      mapCollection: undefined,
+      mapList: [
+        {
+          name: "澶╁湴鍥�",
+          sourceType: "tdmap",
+          tokne: "94a34772eb88317fcbf8428e10448561",
+          maximumLevel: 18,
+          id: 1,
+          isShow: true,
+          list: [
+            {
+              name: "澶╁湴鍥惧湴鍥�",
+              image: require("../../assets/img/imageLayer/tdmap_map.jpg"),
+              urls: "http://t0.tianditu.com/vec_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=vec&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=",
+              olUrls: 'http://t0.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk='
+            },
+            {
+              name: "澶╁湴鍥惧奖鍍�",
+              image: require("../../assets/img/imageLayer/tdmap_image.jpg"),
+              urls: "http://t0.tianditu.com/img_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=",
+              olUrls: 'http://t0.tianditu.gov.cn/DataServer?T=img_w&x={x}&y={y}&l={z}&tk='
+            },
+            {
+              name: "澶╁湴鍥惧湴褰�",
+              image: require("../../assets/img/imageLayer/tdmap_label.jpg"),
+              urls: "http://t0.tianditu.com/ter_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=ter&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=",
+              olUrls: 'http://t0.tianditu.gov.cn/DataServer?T=ter_w&x={x}&y={y}&l={z}&tk='
+            },
+          ],
+        },
+        {
+          name: "楂樺痉鍦板浘",
+          sourceType: "gdmap",
+          maximumLevel: 18,
+          id: 2,
+          isShow: true,
+          list: [
+            {
+              name: "楂樺痉鍦板浘",
+              image: require("../../assets/img/imageLayer/gdmap_map.jpg"),
+              urls: "https://webst02.is.autonavi.com/appmaptile?style=7&x={x}&y={y}&z={z}",
+            },
+            {
+              name: "楂樺痉褰卞儚",
+              image: require("../../assets/img/imageLayer/gdmap_image.jpg"),
+              urls: "https://webst02.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}",
+            },
+
+          ],
+        },
+
+      ],
+    };
+  },
+  computed: {
+    activeNames() {
+      return this.mapList.map((item) => {
+        return item.name;
+      });
+    },
+  },
+  methods: {
+    setCardChange(res) {
+      res.isShow = !res.isShow
+    },
+    // 鍏抽棴寮圭獥
+    close(isCloseBtn, removeLayer = true) {
+      //   removeLayer && this.removeImageLayer();
+
+      // 閲嶇疆data鍊�
+      Object.assign(this.$data, this.$options.data());
+      !isCloseBtn && this.$refs.pop.close();
+    },
+    // 鎵撳紑寮圭獥
+    open() {
+      this.close(true);
+      this.$refs.pop.open();
+    },
+    changeToken(token) {
+      this.mapCollection.tokne = token;
+    },
+    removeImageLayer() {
+      //   window.BaseMapLayer && window.BaseMapLayer.deleteObject();
+      //   window.BaseMapLayer = undefined;
+      window.Viewer.imageryLayers.remove(
+        window.BaseMapLayer
+      );
+      window.map.removeLayer(window.olBaseMapLayer);
+    },
+    addImageLayer(map, mapCollection) {
+
+      if (
+        this.data.name === map.name &&
+        (this.data.urls === map.urls || this.data.urls === mapCollection.urls)
+      ) {
+        return;
+      }
+
+      this.removeImageLayer();
+
+      this.mapCollection = mapCollection;
+
+      if (mapCollection.sourceType === "tdmap") {
+        var tokne = mapCollection.tokne;
+        //娣诲姞澶╁湴鍥惧奖鍍�
+
+        window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider({
+          url: map.urls + tokne,
+          layer: "tdtImgLayer",
+          style: "default",
+          format: "image/jpeg",
+          tileMatrixSetID: "GoogleMapsCompatible",
+        }))
+        window.olBaseMapLayer = new TileLayer({
+          title: "楂樺痉鍦板浘",
+          source: new XYZ({
+            url: map.olUrls + tokne
+
+          }),
+          zIndex: -1
+        });
+        window.map.addLayer(window.olBaseMapLayer);
+      } else if (mapCollection.sourceType === "gdmap") {
+
+        window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider(
+          new Cesium.UrlTemplateImageryProvider({
+            url: map.urls,
+            maximumLevel: this.data.maximumLevel,
+          })
+        );
+
+        window.olBaseMapLayer = new TileLayer({
+          title: "楂樺痉鍦板浘",
+          source: new XYZ({
+            url: map.urls,
+            wrapX: false
+          }),
+          zIndex: -1
+        });
+        window.map.addLayer(window.olBaseMapLayer);
+      }
+      Viewer.imageryLayers.lowerToBottom(window.BaseMapLayer);//灏嗗浘灞傜Щ鍒版渶搴曞眰
+
+      Viewer.imageryLayers.raise(window.BaseMapLayer);//灏嗗浘灞備笂绉讳竴灞�
+
+
+
+
+
+    },
+    // 娣诲姞鏁版嵁
+    addData() {
+      if (this.data.urls && this.data.sourceType) {
+        let data = {
+          id: window.sgworld.Core.getuid(),
+          ...this.data,
+          Level: [0, 26],
+        };
+        if (data.sourceType === "tdmap") {
+          data.urls += "&tk=" + this.tokne;
+        } else if (data.sourceType === "bdmap") {
+          data.style = this.mapCollection.style;
+        }
+        if (this.mapCollection.GCJ02) {
+          data.GCJ02 = true;
+        }
+
+        data.item = window.BaseMapLayer;
+        window.BaseMapLayer = undefined;
+
+        this.$emit("success", data);
+        this.close(false, false);
+      } else {
+        this.$message("璇烽�夋嫨鍦板浘");
+      }
+    },
+  },
+};
+</script>
+
+<style scoped lang="less">
+/deep/.el-card__body {
+  padding: 0px !important;
+}
+.map {
+  display: inline-block;
+  cursor: pointer;
+  margin: 5px;
+  text-align: center;
+
+  .el-image {
+    border: 2px solid #fff;
+    border-radius: 4px;
+  }
+}
+.boxCard {
+  margin-bottom: 5px;
+}
+</style>

--
Gitblit v1.9.3