林草湿地址、导出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
      });
相关推荐
唐青枫25 分钟前
C#.NET 定时任务与队列利器:Hangfire 完整教程
c#·.net
hez20106 小时前
Runtime Async - 步入高性能异步时代
c#·.net·.net core·clr
mudtools20 小时前
.NET驾驭Word之力:玩转文本与格式
c#·.net
唐青枫1 天前
C#.NET 数据库开发提速秘籍:SqlSugar 实战详解
c#·.net
mudtools2 天前
.NET驾驭Word之力:理解Word对象模型核心 (Application, Document, Range)
c#·.net
玩泥巴的2 天前
.NET驾驭Word之力:理解Word对象模型核心 (Application, Document, Range)
word·二次开发·office·com互操作
侃侃_天下2 天前
最终的信号类
开发语言·c++·算法
echoarts2 天前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Aomnitrix2 天前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
大飞pkz2 天前
【设计模式】C#反射实现抽象工厂模式
设计模式·c#·抽象工厂模式·c#反射·c#反射实现抽象工厂模式