林草湿地址、导出echart为word

2.导出

复制代码
 // 导出
    exportDoc () {
      this.loading = true
      let arrRefs = [this.$refs.endChart, this.$refs.processChart, this.$refs.officeEndChart]
      setTimeout(() => {
        Promise.all(arrRefs.map((canvasDom) => {
          return this.html2canvasHandle(canvasDom)
        })).then(res => {
          let arr = res.map(canvas => {
            return canvas.toDataURL('image/png')
          })
          axios.post('/bj_rwgl/business/api/leader/exportStat',
            {
              unitId: this.roleId == 500 || this.roleId == 600 ? "" : this.groupId,
              startTime: Array.isArray(this.form.date) ? this.form.date[0] : '',
              endTime: Array.isArray(this.form.date) ? this.form.date[1] : '',
              name: '',// this.activeName,
              "endChart": arr[0], // 批示办结统计图片
              "processChart": arr[1], // 在办任务进展情况图片
              "officeEndChart": arr[2] // 处室办结情况统计图片
            },
            {
              responseType: "blob",
            }
          ).then(res => {
            if (res.data) {
              let blob = new Blob([res.data], {
                type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
              });
              let downloadElement = document.createElement("a");
              let href = window.URL.createObjectURL(blob); // 创建下载的链接
              downloadElement.href = href;
              downloadElement.download = "统计数据.docx"; // 下载后文件名
              // document.body.appendChild(downloadElement);
              downloadElement.click(); // 点击下载
              // document.body.removeChild(downloadElement); // 下载完成移除元素
              window.URL.revokeObjectURL(href); // 释放掉blob对象
              this.loading = false
              return this.$message.success('导出成功')
            } else {
              this.loading = false
              return this.$message.error('导出失败')
            }
          }).catch(err => {
            this.loading = false
            return this.$message.error('导出失败')
          })
        })
      }, 100);
    }

3.地形夸张

  • 第一种方式:viewer.scene.globe.terrainExaggeration = 2

  • 第二种方式:viewer初始化时设置

    new Cesium.Viewer('container', function () {
    terrainExaggeration: 2
    })

    javascript
    // 创建Cesium Viewer实例
    const viewer = new Cesium.Viewer('cesiumContainer');

    // 设置地形提供者
    viewer.terrainProvider = new Cesium.CesiumTerrainProvider({
    url : Cesium.IonResource.fromAssetId(1) // 替换为您的地形资源
    });

    // 创建并设置地形夸张系数
    const exaggeration = new Cesium.TerrainExaggeration({
    exaggeration : 2.0 // 设置夸张系数为2.0
    });

    // 将夸张系数应用到地形提供者
    viewer.scene.terrainExaggeration = exaggeration.exaggeration;

4.查询entity

复制代码
queryEntityById(id) {
      const entity = this.viewer.entities.getById(id);
      if (entity) {
        console.log(`Found Entity by ID: ${entity.name}`);
      } else {
        console.log(`Entity with ID '${id}' not found.`);
      }
    },
    queryEntityByName(name) {
      const entities = this.viewer.entities.values;
      const foundEntity = entities.find(entity => entity.name === name);
      if (foundEntity) {
        console.log(`Found Entity by Name: ${foundEntity.id}`);
      } else {
        console.log(`Entity with name '${name}' not found.`);
      }
    }

4.cesium切片缓存

法一:

复制代码
// const script1 = document.createElement('script');
      // script1.src = './data/CesiumNetworkPlug.min.js';
      // script1.onload = () => {
      //   // 这里可以放置 CesiumNetworkPlug 脚本加载后的代码
      //   let OfflineCache = window.CesiumNetworkPlug.OfflineCacheController;
      //   OfflineCache.ruleList.add("*");
      // };
      // document.head.appendChild(script1);

法二:

5.地图加载完成监听 e==0

tileLoadProgressEvent 是一个事件,它会在地形或影像瓦片加载过程中被触发。

复制代码
let helper = new Cesium.EventHelper();
helper.add(Cesium3DViewer.scene.globe.tileLoadProgressEvent, function (e) {
  // console.log('每次加载地图服务矢量切片都会进入这个回调', e);
  if (e==0) {
    helper.removeAll();
   // console.log("矢量切片加载完成");
  }
});

6.地形出现底图缝隙-换成火星地形试试

复制代码
let terrainProvider = new Cesium.CesiumTerrainProvider({
        url: "http://data.mars3d.cn/terrain",//"/bj_jsc/dzsp/dem",
        requestWaterMask: true
      });
相关推荐
小成202303202655 小时前
C++~07补充
开发语言·c++
2401_885885048 小时前
国际语音C#接口怎么写?.NET环境下实现国际语音验证码批量下发
开发语言·c#·.net
程序猿乐锅8 小时前
【从0-1学习Python | 第七篇】Python 面向对象基础
开发语言·笔记·后端·python·学习·1024程序员节
Wang's Blog8 小时前
Java 项目实战: 交友项目 - 查询圈子个人动态:查询我的动态需求分析
java·开发语言·交友
凯瑟琳.奥古斯特8 小时前
力扣1016高效解法:剪枝优化技巧
开发语言·c++·算法·leetcode·职场和发展
坤坤子吖9 小时前
C++继承:友元、静态成员、多继承与组合
开发语言·c++·笔记·学习·1024程序员节
技术小甜甜10 小时前
【Cursor】Skill 被标黄色警告,怎么改成合格的 SKILL.md
开发语言·javascript·ai编程·cursor·1024程序员节·ai agent·skills
小小龙学IT10 小时前
Python Polars 高性能数据处理引擎深度解析
开发语言·python·rust·1024程序员节
quantdash_cc10 小时前
如何利用标的信息为研究股票池补充名称和交易所信息?
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash