C1 ——cesium加载天地图瓦片

记录找的时候不好找

javascript 复制代码
<template>
  <div id="cesiumContainer"> </div>
</template>

<script>
export default {
  name: 'CesiumViewer',
  data() {
    return {
      viewer: null
    }
  },
  mounted() {
    this.initViewer();
  },
  beforeDestroy() {
    if (this.viewer) {
      this.viewer.destroy();
      this.viewer =null;
    }
  },
  methods: {
    initViewer() {
      const viewer = new Cesium.Viewer("cesiumContainer", {
        animation: false,
        timeline: false,
        baseLayerPicker: false,
        geocoder: false,
        imageryProvider: false, // 禁用默认底图
        terrainProvider: undefined, // 禁用默认的 ion 地形层(若不需要地形可加)
      });
      this.viewer = viewer;
      viewer._cesiumWidget._creditContainer.style.display = "none";
      viewer.imageryLayers.addImageryProvider(
        new Cesium.TileMapServiceImageryProvider({
          url: "../../src/lib/Cesium/Assets/Textures/NaturalEarthII", // 本地瓦片路径模板
          fileExtension: "jpg", // 瓦片图片格式
          maximumLevel: 2, // 瓦片最大级别
          minimumLevel: 0, // 瓦片最小级别
        })
      );

      this.addTiandituLayer();
      // 设置初始视角到中国
      this.viewer.camera.setView({
        destination: Cesium.Cartesian3.fromDegrees(116.4, 39.9, 15000000.0)
      });



    },


    addTiandituLayer() {
      try {
        const tiandituToken = "b3d91562aff4a392aeaec0fe2661a66e000";
        // 方式一UTL
        const imgProvider = new Cesium.UrlTemplateImageryProvider({
          url: `https://t{s}.tianditu.gov.cn/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=${tiandituToken}`,
          subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
          maximumLevel: 18,
          tilingScheme: new Cesium.WebMercatorTilingScheme(),
        });

        const ciaProvider = new Cesium.UrlTemplateImageryProvider({
          url: `https://t{s}.tianditu.gov.cn/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk=${tiandituToken}`,
          subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
          maximumLevel: 18,
          tilingScheme: new Cesium.WebMercatorTilingScheme(),
        });

        // 方式二WMTS
        // const imgProvider = new Cesium.WebMapTileServiceImageryProvider({
        //       url: `https://t{s}.tianditu.gov.cn/img_w/wmts?tk=${tiandituToken}`,
        //       subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
        //       layer: 'img',
        //       style: 'default',
        //       format: 'tiles',
        //       tileMatrixSetID: 'w',
        //       maximumLevel: 18
        //     });

        //     // 注记图层
        //     const ciaProvider = new Cesium.WebMapTileServiceImageryProvider({
        //       url: `https://t{s}.tianditu.gov.cn/cia_w/wmts?tk=${tiandituToken}`,
        //       subdomains: ['0', '1', '2', '3', '4', '5', '6', '7'],
        //       layer: 'cia',
        //       style: 'default',
        //       format: 'tiles',
        //       tileMatrixSetID: 'w',
        //       maximumLevel: 18
        //     });


        // 添加到地图
        this.viewer.imageryLayers.addImageryProvider(imgProvider);
        this.viewer.imageryLayers.addImageryProvider(ciaProvider);

        console.log('天地图图层添加成功');

      } catch (error) {
        console.error('添加天地图图层失败:', error);
      }
    }

  }
}
</script>

<style scoped>
#cesiumContainer {
  position: absolute;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}
</style>
相关推荐
我是ed.1 天前
vue2 使用 cesium 展示 TLE 星历数据
vue.js·cesium
GisCoder5 天前
Cesium教程(9)---编辑Entity图形控制点、拖拽Entity移动、删除Entity
webgl·cesium
GISBox6 天前
BIM+GIS协同:RVT文件转3DTiles的技术路径与场景落地
cesium·3dtiles·gisbox·服务分发·gis server·切片转换·rvt
GISBox7 天前
高斯泼溅转3DTiles:GISBox高效转换全流程指南
免费·cesium·ply·3dtiles·高斯泼溅·gisbox·切片转换
王将近8 天前
Cesium 山洪流体模拟
前端·cesium
GisCoder9 天前
Cesium+Vue3学习教程系列(6)---实时显示鼠标三维坐标数据、实时显示相机姿态heading、pitch、roll数据
cesium
GIS瞧葩菜10 天前
【无标题】
开发语言·前端·javascript·cesium
GisCoder11 天前
Cesium+Vue3学习教程系列(2)---添加天地图影像、添加地形
cesium
GISBox15 天前
从PLY到3DTiles:GISBox助力三维数据格式转换全流程
免费·cesium·ply·高斯泼溅·gisbox·服务分发·gis server