liuyg
2022-03-28 0f6f73971c9c3db3d591018a8e6c2272ea07088a
+抚州数据以及缩放调整,活动底图数据获取
4 files modified
1 files deleted
2 files added
923 ■■■■■ changed files
src/api/mobile/hd/hd.js 7 ●●●●● patch | view | raw | blame | history
src/components/mobileActivity copy/index.vue 37 ●●●●● patch | view | raw | blame | history
src/components/mobileActivity/index.vue 72 ●●●●● patch | view | raw | blame | history
src/components/mobileActivity旧的没底图/index.vue 507 ●●●●● patch | view | raw | blame | history
src/components/mobileActivity旧的没底图/move.js 166 ●●●●● patch | view | raw | blame | history
src/components/mobilemap/index.vue 60 ●●●● patch | view | raw | blame | history
src/store/modules/mobile.js 74 ●●●● patch | view | raw | blame | history
src/api/mobile/hd/hd.js
@@ -13,3 +13,10 @@
    method: "get",
  });
};
export const getdetail = (id) => {
  return request({
    url: `blade-hd/hd/detail?id=` + id,
    method: "get",
  });
};
src/components/mobileActivity copy/index.vue
File was deleted
src/components/mobileActivity/index.vue
@@ -50,7 +50,7 @@
    <div class="mobileActivity_coutrol" :style="{ bottom: bottom + 'px' }">
      <ul>
        <li
          v-for="(item, index) in leftNavData"
          v-for="(item, index) in ourLeftData"
          :key="index"
          @click="mobileActivityCoutrolClick(item)"
          v-show="!item.notShow"
@@ -66,6 +66,8 @@
<script>
import { mapGetters } from "vuex";
import moveWindow from "./move";
import { getdetail } from "@/api/mobile/hd/hd";
window.serviceMapSee = {};
export default {
  name: "mobileActivity",
  computed: {
@@ -75,6 +77,9 @@
      // 'drawALineLayerMany',
      // 'drawAPointLayerMany'
    ]),
    ourLeftData() {
      return [...this.serviceMap, ...this.leftNavData];
    },
  },
  data() {
    const heig = 135;
@@ -124,6 +129,19 @@
        //   layer: "sceneLayer",
        //   imgSrc: "img/leftnav/map-panorama.png",
        //   // imgSrc: "img/mobile/blue.png",
        // },
      ],
      //底图
      serviceMap: [
        // {
        //   flag: true,
        //   label: "底图1",
        //   img: "/img/leftnav/way-checked.png",
        //   normal: "/img/leftnav/way.png",
        //   checked: "/img/leftnav/way-checked.png",
        //   layer: "wayLayer",
        //   imgSrc: "img/mobile/green.png",
        //   layer: null,
        // },
      ],
    };
@@ -190,6 +208,51 @@
              that.domMove.opens(false, true);
            },
          ]);
          //绘画底图
          //获取详细信息,来获取底图
          // console.log(this.showActivityData, "see");
          that.serviceMap = [];
          getdetail(this.showActivityData.opendata.id).then((res) => {
            let name = res.data.data.mapname.split(",");
            let url = res.data.data.url.split(",");
            for (let k in name) {
              let d = {
                flag: true,
                label: name[k],
                img: "/img/leftnav/way-checked.png",
                normal: "/img/leftnav/way.png",
                checked: "/img/leftnav/way-checked.png",
                layer: "wayLayer",
                imgSrc: "img/mobile/green.png",
                layer: "serviceMap" + that.serviceMap.length,
                url: url[k],
                to: "serviceMap",
              };
              // this.leftNavData.shift(d);
              // console.log(d, "see");
              // that.serviceMap.push(d);
              // window.serviceMapSee[d.layer] =
              //   global.DC.ImageryLayerFactory.createArcGisImageryLayer({
              //     url: url[k],
              //   });
              // global.viewer.addBaseLayer(window.serviceMapSee[d.layer], {
              //   iconUrl: "examples/images/icon/elec.png",
              //   name: d.layer,
              // });
            }
            // const baselayer_shaded =
            //   global.DC.ImageryLayerFactory.createArcGisImageryLayer({
            //     url: "https://services.arcgisonline.com/arcgis/rest/services/World_Physical_Map/MapServer",
            //   });
            // global.viewer.addBaseLayer(baselayer_shaded, {
            //   iconUrl: "examples/images/icon/elec.png",
            //   name: "电子",
            // });
            // console.log(window.serviceMapSee, "see");
            // }
          });
        };
      }
    },
@@ -270,6 +333,10 @@
        item.img = item.checked;
      } else {
        item.img = item.normal;
      }
      if (item.to == "serviceMap") {
        console.log(item);
        return;
      }
      this.$store.commit("showLineOrPoint", {
        layer: item.layer,
@@ -473,13 +540,14 @@
    margin-bottom: 6px;
    font-weight: 400;
    display: block;
    width: 80px;
    // width: 80px;
    height: 30px;
    line-height: 30px;
    background-color: #fff;
    border-radius: 15px;
    text-align: center;
    font-size: 0;
    padding: 0 6px;
    cursor: pointer;
    img {
src/components/mobileActivity旧的没底图/index.vue
New file
@@ -0,0 +1,507 @@
<template>
  <div
    id="mobileActivity"
    :style="{ height: height + 'px' }"
    :class="[openValue ? 'isOpens' : 'notOpens']"
    v-if="showActivity"
  >
    <div class="mobileActivity_heard">
      <div class="mobileActivity_title">活动标题:{{ hdTitle }}</div>
      <div class="mobileActivity_close" @click="closeActivity">
        <i class="el-icon-close"></i>
      </div>
    </div>
    <div class="mobileActivity_in">
      <!-- <el-button type="primary" @click="init">open</el-button>
            <el-button type="success" @click="closeInit">close</el-button>-->
      <div class="mobileActivity_insmall">
        <!-- <img :src="imgs" alt="" class="mobileActivity_insmallimg" /> -->
        <el-image
          class="mobileActivity_insmallimg"
          :src="useData.url"
          :preview-src-list="useData.srcList"
        ></el-image>
        <div class="mobileActivity_insmallxiangqing">
          <div
            class="mobileActivity_insmallxiangqingIn"
            v-for="(item, index) in useData.smallData"
            :key="index"
          >
            <span class="mobileActivity_insmallxiangqingIn_s">
              {{ item.lable }}
            </span>
            : {{ item.value }}
          </div>
        </div>
      </div>
      <div class="mobileActivity_detailed">
        <div
          class="mobileActivity_detailedIn"
          v-for="(item, index) in useData.detailedData"
          :key="index"
        >
          <span class="mobileActivity_insmallxiangqingIn_s">
            {{ item.lable }}
          </span>
          : {{ item.value }}
        </div>
      </div>
    </div>
    <div class="mobileActivity_coutrol" :style="{ bottom: bottom + 'px' }">
      <ul>
        <li
          v-for="(item, index) in leftNavData"
          :key="index"
          @click="mobileActivityCoutrolClick(item)"
          v-show="!item.notShow"
        >
          <img :src="item.img" alt />
          <span>{{ item.label }}</span>
        </li>
      </ul>
    </div>
  </div>
</template>
<script>
import { mapGetters } from "vuex";
import moveWindow from "./move";
export default {
  name: "mobileActivity没底图",
  computed: {
    ...mapGetters([
      "showActivity",
      "showActivityData",
      // 'drawALineLayerMany',
      // 'drawAPointLayerMany'
    ]),
  },
  data() {
    const heig = 135;
    const bottom = 150;
    return {
      useHeight: heig,
      height: heig,
      useBottom: bottom,
      bottom: bottom,
      openValue: false,
      domMove: null,
      start: 0,
      end: 0,
      hdTitle: "",
      // url: "",
      // srcList: [],
      useData: {},
      leftNavData: [
        {
          flag: true,
          label: "线路",
          // img: "/img/leftnav/tag.png",
          img: "/img/leftnav/tag-checked.png",
          normal: "/img/leftnav/tag.png",
          checked: "/img/leftnav/tag-checked.png",
          layer: "tagLayer",
          imgSrc: "https://map.hit.edu.cn/images/tarrow_xq.png",
          // imgSrc: "img/mobile/pink.png",
          layer: "drawALineLayerMany",
        },
        {
          flag: true,
          label: "标点",
          img: "/img/leftnav/way-checked.png",
          normal: "/img/leftnav/way.png",
          checked: "/img/leftnav/way-checked.png",
          layer: "wayLayer",
          imgSrc: "img/mobile/green.png",
          layer: "drawAPointLayerMany",
        },
        // {
        //   flag: false,
        //   label: "实景",
        //   img: "/img/leftnav/scene.png",
        //   normal: "/img/leftnav/scene.png",
        //   checked: "/img/leftnav/scene-checked.png",
        //   layer: "sceneLayer",
        //   imgSrc: "img/leftnav/map-panorama.png",
        //   // imgSrc: "img/mobile/blue.png",
        // },
      ],
    };
  },
  watch: {
    //   openValue() {
    //     if (this.openValue) {
    //       let windowHeight = document.body.clientHeight;
    //       this.height = windowHeight / 2;
    //     } else {
    //       this.height = this.useHeight;
    //     }
    //   },
    showActivity() {
      if (this.showActivity) {
        this.inToInit(); // 初始化
        this.hdTitle = this.showActivityData.name;
        // new窗口对象
        const that = this;
        const windowHeight = document.body.clientHeight;
        this.doData(this.showActivityData); // 使用数据
        // 获取最大高度避免数据过少,空格多
        // let heard = document.querySelector(".mobileActivity_heard");
        // let ins = document.querySelector(".mobileActivity_in");
        // console.log(heard, ins, 77777);
        this.checkDom("querySelector", ".mobileActivity_heard", (head) => {
          this.checkDom("querySelector", ".mobileActivity_in", (ins) => {
            console.log((head.offsetHeight + ins.offsetHeight) / 4);
            doit(head.offsetHeight + ins.offsetHeight);
          });
        });
        // return;
        const doit = (maxheights) => {
          this.domMove = new moveWindow({
            id: "mobileActivity",
            minHeight: that.useHeight,
            maxHeight: maxheights || windowHeight / 2,
            critical: maxheights / 4,
            fn: function (res) {
              that.height = +res.height;
              that.bottom = +res.height + 15;
              // console.log(+res.height, "=======");
              if (res.state != "on") {
                that.openValue = res.state;
              }
            },
          });
          this.domMove.init();
          // console.log(this.domMove);
          // 转移···添加点和线
          const addressOur = this.changeData(
            this.useData.query,
            "addressname",
            "address"
          );
          const lxOur = this.changeData(this.useData.query, "lxname", "lx");
          // console.log(addressOur, lxOur);
          that.$store.dispatch("MSET_DRAWALINELAYERMANY", [
            lxOur,
            addressOur,
            this.useData.query,
            function () {
              that.domMove.opens(false, true);
            },
          ]);
        };
      }
    },
  },
  mounted() {},
  methods: {
    inToInit() {
      // 初始化
      this.openValue = false;
      this.height = this.useHeight;
      this.bottom = this.useBottom;
      for (const k in this.leftNavData) {
        this.leftNavData[k].flag = true;
        this.leftNavData[k].img = this.leftNavData[k].checked;
      }
    },
    // 处理主数据
    doData(val) {
      const srcList = val.opendata.tpurl.split(",");
      this.useData = {
        data: val,
        url: srcList[0],
        srcList: srcList,
        smallData: [
          {
            lable: "主办方",
            value: val.opendata.sponsor,
          },
          {
            lable: "承办方",
            value: val.opendata.undertake,
          },
        ],
        detailedData: [
          {
            lable: "活动时间",
            value: val.opendata.time,
          },
          {
            lable: "活动详情",
            value: val.opendata.context,
          },
        ],
        query: {
          name: val.opendata.hdname,
          bgImg: val.opendata.tpurl,
          from: "活动",
          websiteUrl: val.opendata.websiteurl,
          telePhone: val.opendata.telephone,
          introduce: val.opendata.context,
          video: val.opendata.videourl,
          // buts: ["定位"],
          // 活动添加的字段
          addressname: val.opendata.addressname.split(";"),
          address: val.opendata.address.split(";"),
          lxname: val.opendata.lxname.split(";"),
          lx: val.opendata.lx.split(";"),
          lntLat: [
            val.opendata.address.split(";")[0].split(",")[0],
            val.opendata.address.split(";")[0].split(",")[1],
          ],
          panoramaurl: val.opendata.panoramaurl, // 全景
        },
      };
    },
    // 启动监听事件
    init() {
      this.domMove.init();
    },
    // 关闭监听事件
    closeInit() {
      this.domMove.closeInit();
    },
    // 控制线路和点的显影
    mobileActivityCoutrolClick(item) {
      item.flag = !item.flag;
      if (item.flag == true) {
        item.img = item.checked;
      } else {
        item.img = item.normal;
      }
      this.$store.commit("showLineOrPoint", {
        layer: item.layer,
        flag: item.flag,
      });
    },
    changeData(data, name, value) {
      const arr = [];
      for (const k in data[name]) {
        arr.push({
          name: data[name][k],
          value:
            name == "lxname"
              ? data[value][k]
                  .split("(")[1]
                  .split(")")[0]
                  .split(",")
                  .join(";")
                  .split(" ")
                  .join(",")
              : [+data[value][k].split(",")[0], +data[value][k].split(",")[1]],
        });
      }
      return arr;
    },
    closeActivity() {
      this.$store.commit("set_showActivity", { state: false });
      if (this.domMove) {
        this.closeInit();
      }
      // 关闭路线和点的图层
      this.$store.commit("removePolylineMany");
      // 关闭随地图弹窗
      this.$store.dispatch("closeMobileWindowsDom");
      // 显示右侧栏
      this.$store.commit("SET_SeeAndNotSee", true);
    },
    checkDom(methods, name, fn) {
      //  声明定时器
      var timer = null;
      //  检查dom是否执行完成
      function checkDom() {
        // let dom = that.$refs[name];
        const dom = document[methods](name);
        if (dom) {
          //  执行dom加载完成后的操作
          //  清除定时器
          if (!timer) {
            clearTimeout(timer);
          }
          if (fn) {
            // 回调函数
            fn(dom);
          } else {
            return dom;
          }
        } else {
          //  自我调用
          timer = setTimeout(checkDom, 100);
        }
      }
      //  首次执行
      checkDom();
    },
  },
};
</script>
<style lang="scss">
#mobileActivity {
  position: fixed;
  bottom: 0px;
  left: 0px;
  width: 100%;
  // height: 50px;
  background-color: #fff;
  z-index: 999;
  transition: height 0.1s;
  border-radius: 15px 15px 0 0;
  .mobileActivity_heard {
    height: 35px;
    border-radius: 15px 15px 0 0;
    width: 100%;
    background-color: #409eff;
    color: #fff;
    border-bottom: 1px solid rgba($color: #acacac, $alpha: 0.5);
    box-shadow: 0 0px 10px -3px rgba($color: #acacac, $alpha: 0.5);
    .mobileActivity_title {
      width: 100%;
      height: 100%;
      line-height: 35px;
      text-indent: 1rem;
    }
    .mobileActivity_close {
      position: absolute;
      right: 5px;
      top: 5px;
      font-size: 25px;
    }
  }
  .mobileActivity_in {
    width: 100%;
    height: auto;
    overflow: hidden;
    padding-bottom: 5px;
    .mobileActivity_insmall {
      background-color: #fff;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-around;
      .mobileActivity_insmallimg {
        width: 90px;
        height: 90px;
      }
      .mobileActivity_insmallxiangqing {
        width: calc(100% - 110px);
        height: 94px;
        display: flex;
        align-items: center;
        justify-content: space-around;
        flex-direction: column;
        .mobileActivity_insmallxiangqingIn {
          width: 100%;
        }
      }
    }
    .mobileActivity_detailed {
      background-color: rgba(202, 202, 202, 0.2);
      padding: 3px 0 0 0;
      width: 100%;
      height: 100%;
      box-sizing: border-box;
      .mobileActivity_detailedIn {
        background-color: #fff;
        box-sizing: border-box;
        width: 100%;
        padding: 5px;
        margin: 0 0 3px 0;
      }
    }
    .mobileActivity_insmallxiangqingIn_s {
      font-weight: 600;
    }
  }
}
.notOpens {
  &::after {
    content: "";
    display: block;
    width: 20px;
    height: 4px;
    background-color: rgba(202, 202, 202, 1);
    position: absolute;
    top: -9px;
    left: calc(50% - 10px);
    border-radius: 5px;
  }
}
.isOpens {
  &::after {
    content: "";
    display: block;
    width: 13px;
    height: 4px;
    background-color: rgba(202, 202, 202, 1);
    position: absolute;
    top: -9px;
    left: calc(50% - 12px);
    border-radius: 5px;
    transform: rotate(30deg);
  }
  &::before {
    content: "";
    display: block;
    width: 13px;
    height: 4px;
    background-color: rgba(202, 202, 202, 1);
    position: absolute;
    top: -9px;
    left: calc(50% - 4px);
    border-radius: 5px;
    transform: rotate(-30deg);
  }
}
.mobileActivity_coutrol {
  position: fixed;
  bottom: 150px;
  left: 0px;
  z-index: 200;
  background-color: #fff;
  border-radius: 0 17px 17px 0;
  transition: all 0.18s;
  ul {
    position: relative;
    top: 3px;
  }
  li {
    margin-bottom: 6px;
    font-weight: 400;
    display: block;
    width: 80px;
    height: 30px;
    line-height: 30px;
    background-color: #fff;
    border-radius: 15px;
    text-align: center;
    font-size: 0;
    cursor: pointer;
    img {
      position: relative;
      transition: all 0.5s;
      width: 24px;
      height: 24px;
      vertical-align: middle;
      margin-right: 10px;
      image-rendering: -moz-crisp-edges;
      image-rendering: -o-crisp-edges;
      image-rendering: -webkit-optimize-contrast;
      image-rendering: crisp-edges;
      -ms-interpolation-mode: nearest-neighbor;
    }
    span {
      display: inline-block;
      vertical-align: middle;
      font-size: 14px;
      color: #2f2f2f;
    }
  }
}
</style>
src/components/mobileActivity旧的没底图/move.js
New file
@@ -0,0 +1,166 @@
class moveWindow {
  constructor(data) {
    this.id = data.id;
    this.start = 0;
    this.end = 0;
    this.domHeight = 0;
    this.domMove = null;
    this.openValue = false;
    this.useHeight = data.minHeight;
    this.maxHeight = data.maxHeight;
    this.height = data.minHeight;
    this.critical = data.critical;
    let that = this;
    this.fn =
      data.fn ||
      function (res) {
        console.log("未设置回调函数");
        console.log(res);
      };
    this.ListenerTouchmove = function (window) {
      let moseHeight = window.changedTouches[0].clientY;
      //   let windowHeight = document.body.clientHeight; //屏幕宽度
      let endOn = moseHeight;
      let cha = +that.domHeight + that.start - +endOn;
      if (cha >= that.maxHeight) {
        cha = that.maxHeight;
      } else if (cha <= that.useHeight) {
        cha = that.useHeight;
      }
      let d = {
        state: "on",
        height: cha,
      };
      that.fn(d);
    };
    this.ListenerTouchstart = function (window) {
      let moseHeight = window.changedTouches[0].clientY;
      that.start = moseHeight;
      that.domHeight = document
        .getElementById(that.id)
        .style.cssText.split("px")[0]
        .split("height:")[1];
    };
    this.ListenerTouchend = function (window) {
      let moseHeight = window.changedTouches[0].clientY;
      that.end = moseHeight;
      let cha, states;
      if (that.end >= that.start) {
        states = false; //方向
        cha = that.end - that.start;
      } else {
        states = true; //方向
        cha = that.start - that.end;
      }
      if (cha >= that.critical) {
        //高
        that.opens(states, true); //程度
      } else if (cha < that.critical) {
        //低
        that.opens(states, false); //程度
      }
    };
    return this;
  }
  //启动监听事件
  init() {
    // this.domMove = document.getElementById(this.id);
    let that = this;
    this.checkDom(that.id, (dom) => {
      //检测是否有dom
      that.domMove = dom;
      that.domMove.addEventListener("touchmove", that.ListenerTouchmove);
      // 结束位置靠滑动距离判断
      that.domMove.addEventListener("touchstart", that.ListenerTouchstart);
      that.domMove.addEventListener("touchend", that.ListenerTouchend);
    });
  }
  //关闭监听事件
  closeInit() {
    this.domMove = document.getElementById(this.id);
    this.domMove.removeEventListener("touchmove", this.ListenerTouchmove);
    // 结束位置靠滑动距离判断
    this.domMove.removeEventListener("touchstart", this.ListenerTouchstart);
    this.domMove.removeEventListener("touchend", this.ListenerTouchend);
  }
  //输出事件
  opens(val, chengdu) {
    if (chengdu) {
      this.openValue = val;
      if (val) {
        this.height = this.maxHeight;
      } else {
        this.height = this.useHeight;
      }
    } else {
      this.height = this.domHeight;
    }
    let d = {
      state: this.openValue,
      height: this.height,
    };
    // console.log(val, this.height);
    this.fn(d);
  }
  changeHeight() {
    //抛出切换方法
    this.openValue = !this.openValue;
    if (this.openValue) {
      this.height = this.maxHeight;
    } else {
      this.height = this.useHeight;
    }
    let d = {
      state: this.openValue,
      height: this.height,
    };
    // console.log(val, this.height);
    this.fn(d);
  }
  checkDom(name, fn) {
    //  声明定时器
    var timer = null;
    //  检查dom是否执行完成
    function checkDom() {
      // let dom = that.$refs[name];
      let dom = document.getElementById(name);
      if (dom) {
        //  执行dom加载完成后的操作
        //  清除定时器
        if (!timer) {
          clearTimeout(timer);
        }
        if (fn) {
          //回调函数
          fn(dom);
          return;
        } else {
          return dom;
        }
      } else {
        //  自我调用
        timer = setTimeout(checkDom, 100);
      }
    }
    //  首次执行
    checkDom();
  }
  // 结束位置是一半判断
  //  domMove.addEventListener("touchend", function (window) {
  //   let moseHeight = window.changedTouches[0].clientY;
  //   let windowHeight = document.body.clientHeight;
  //   let cha = windowHeight - moseHeight;
  //   console.log(cha, "最后位置");
  //   let centerPoint =
  //     (windowHeight / 2 - +that.useHeight) / 2 + +that.useHeight;
  //   if (cha >= centerPoint) {
  //     cha = windowHeight / 2;
  //   } else if (cha < centerPoint) {
  //     cha = that.useHeight;
  //   }
  //   that.height = cha;
  // });
}
export default moveWindow;
src/components/mobilemap/index.vue
@@ -115,8 +115,8 @@
      ],
      // areaLayer: null,
      // mapCenter: [115.871863, 28.743861, 160.0],
      // mapCenter: [114.04062292 - 0.00035, 27.62666834 + 0.0025, 160.0],
      mapCenter: [116.35381525 - 0.00035, 27.95839468 + 0.0025, 160.0],
      mapCenter: [114.04062292 - 0.00035, 27.62666834 + 0.0025, 160.0],
      //   mapCenter: [116.35381525 - 0.00035, 27.95839468 + 0.0025, 160.0],
      // 控制4层缩放
      // onelayerNum: 80,
      // towlayerNum: 120,
@@ -134,7 +134,8 @@
      intervallayerNum: 15,
      frislayertHeight: 160, // 默认高度
      useSuofang: true, //是否缩放
      useSuofang: false, //是否缩放 true 去掉了缩放,
      addOthers: true, //加入了活动底图以及抚州底图
    };
  },
  computed: {
@@ -170,7 +171,19 @@
    var that = this;
    // let viewer;
    if (this.addOthers) {
      //抚州视角数据
      this.mapCenter = [116.35381525 - 0.00035, 27.95839468 + 0.0025, 160.0];
      this.onelayerNum = 100;
      this.towlayerNum = 300;
      this.threelayerNum = 500;
      this.forlayerNum = 700;
      this.fivelayerNum = null;
      this.sixlayerNum = null;
      this.intervallayerNum = 100;
      this.frislayertHeight = 700; // 默认高度
    }
    window.initViewer = () => {
      global.viewer = new global.DC.Viewer("mobile-viewer-container", {
        contextOptions: {
@@ -295,7 +308,11 @@
        //   conBack(200);
        // }
        // const usMun = that.forlayerNum ? that.forlayerNum : that.threelayerNum;
        const usMun = that.sixlayerNum;
        const usMun = that.sixlayerNum
          ? that.sixlayerNum
          : that.fivelayerNum
          ? that.fivelayerNum
          : that.forlayerNum;
        if (window.height1s > usMun && isSet) {
          if (that.useSuofang) {
            return;
@@ -325,12 +342,15 @@
      };
      window.butbut = function () {
        // return;
        if (that.useSuofang) {
          return;
        }
        // if (that.useSuofang) {
        //   return;
        // }
        // 放大
        document.querySelector(".dc-zoom-controller").children[0].onclick =
          function () {
            if (that.useSuofang) {
              return;
            }
            if (that.dimension == "2.5D") {
              window.height2s = Math.ceil(
                global.viewer.camera.positionCartographic.height
@@ -393,6 +413,9 @@
        // 缩小
        document.querySelector(".dc-zoom-controller").children[2].onclick =
          function () {
            if (that.useSuofang) {
              return;
            }
            if (that.dimension == "2.5D") {
              window.height3s = Math.ceil(
                global.viewer.camera.positionCartographic.height
@@ -479,6 +502,18 @@
        };
        var isCameraTime = null;
        global.viewer.on(global.DC.SceneEventType.CAMERA_CHANGED, (e) => {
          // window.height4s = Math.ceil(
          //   global.viewer.camera.positionCartographic.height
          // );
          // if (ii == 1 && startHeight == 0) {
          //   startHeight = window.height4s;
          // }
          // ii++;
          // cutHeight = window.height4s - startHeight;
          // that.heights = window.height4s;
          // that.heights1 = cutHeight;
          // console.log(cutHeight);
          if (that.useSuofang) {
            return;
          }
@@ -492,9 +527,9 @@
            }
            ii++;
            cutHeight = window.height4s - startHeight;
            that.heights = window.height4s;
            that.heights1 = cutHeight;
            // console.log(cutHeight);
            // that.heights = window.height4s;
            // that.heights1 = cutHeight;
            // return;
            if (isCameraTime) {
              clearTimeout(isCameraTime);
@@ -1059,8 +1094,13 @@
        that.$store.commit("set_zoomRange", [
          that.onelayerNum,
          // that.forlayerNum ? that.forlayerNum : that.threelayerNum,
          that.sixlayerNum,
          that.sixlayerNum
            ? that.sixlayerNum
            : that.fivelayerNum
            ? that.fivelayerNum
            : that.forlayerNum,
          that.useSuofang,
          that.addOthers,
        ]); // 送入移动端缩放范围
        that.$store.commit("MSET_DIMENSION", "2.5D"); // 切换2.5D设置
      } else if (that.dimension == "3D") {
src/store/modules/mobile.js
@@ -295,46 +295,46 @@
                        maximumLevel: 18
                    })
                )
                global.viewer.imageryLayers.addImageryProvider(
                    new global.DC.Namespace.Cesium.WebMapTileServiceImageryProvider({
                        url: "http://arcgis.jxpskj.com:6080/arcgis/rest/services/FZ25DMap/MapServer/WMTS",
                        layer: "fzsw2019",
                        style: "default",
                        tileMatrixSetID: "default028mm",
                        format: "image/jpgpng",
                        tilingScheme: new global.DC.Namespace.Cesium.GeographicTilingScheme(),
                        maximumLevel: 19,
                        tileMatrixLabels: [
                            "0",
                            "1",
                            "2",
                            "3",
                            "4",
                            "5",
                            "6",
                            "7",
                            "8",
                            "9",
                            "10",
                            "11",
                            "12",
                            "13",
                            "14",
                            "15",
                            "16",
                            "17",
                            "18",
                            "19",
                        ],
                    })
                );
                window.tilesetLayer.show = false // 隐藏3d图形
                window.newLayer = window.usetowpointfive() // 添加2.5d图形贴片
                window.wallLayer.show = false // 打开瀑布
                window.startPointFn() // 移动默认视角
                window.areaLayer.show = true // 绿布
                if (state.zoomRange[2]) {
                if (state.zoomRange[3]) {
                    global.viewer.imageryLayers.addImageryProvider(
                        new global.DC.Namespace.Cesium.WebMapTileServiceImageryProvider({
                            url: "http://arcgis.jxpskj.com:6080/arcgis/rest/services/FZ25DMap/MapServer/WMTS",
                            layer: "fzsw2019",
                            style: "default",
                            tileMatrixSetID: "default028mm",
                            format: "image/jpgpng",
                            tilingScheme: new global.DC.Namespace.Cesium.GeographicTilingScheme(),
                            maximumLevel: 19,
                            tileMatrixLabels: [
                                "0",
                                "1",
                                "2",
                                "3",
                                "4",
                                "5",
                                "6",
                                "7",
                                "8",
                                "9",
                                "10",
                                "11",
                                "12",
                                "13",
                                "14",
                                "15",
                                "16",
                                "17",
                                "18",
                                "19",
                            ],
                        })
                    );
                    // 2.5D视角限制
                    // global.viewer.scene.screenSpaceCameraController.minimumZoomDistance = 50
                    // // 最大
@@ -419,9 +419,9 @@
                window.drawALineLayerMany = null
                state.isOpenDrawALineMany = false
            }
            if (window.drawALineLayerMany) {
                window.drawALineLayerMany.remove()
                window.drawALineLayerMany = null
            if (window.drawAPointLayerMany) {
                window.drawAPointLayerMany.remove()
                window.drawAPointLayerMany = null
                state.isOpenDrawALineMany = false
            }
        },