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>
相关推荐
二狗哈7 小时前
Cesium快速入门1:打造第一个Cesium应用
webgl·cesium
AndrewHZ20 小时前
【GIS数据处理】什么是Cesium?从零入门Web端三维地理可视化工具
javascript·gis·web开发·cesium·gis前端·三维地理可视化
GIS遥遥3 天前
2025Cesium进阶教程(5)| webgis智慧城市开发,大屏可视化行政区高亮
javascript·cesium·gis开发·三维gis·webgis开发
map_3d_vis4 天前
JSAPIThree 加载 Cesium 数据学习笔记:使用 Cesium 地形和影像服务
学习笔记·cesium·地形·初学者·terrain·mapvthree·jsapithree·cesiumterraintileprovider
LiuMingXin4 天前
CESIUM JS 学习笔记 (持续更新)
前端·cesium
GIS好难学5 天前
Cesium进阶教程:Shader与三维GIS可视化实战
cesium·gis开发·webgis
一个有理想的摸鱼选手5 天前
CesiumLite-一行代码让你在Cesium中实现标绘测量
前端·gis·cesium
YAY_tyy6 天前
基于矩形区域的相机自动定位与飞行控制实现
前端·javascript·3d·cesium
一个有理想的摸鱼选手6 天前
CesiumLite-在三维地图中绘制3D图形变得游刃有余
前端·gis·cesium
goodName8 天前
如何实现精准操控?Cesium模型移动旋转控件实现
webgl·cesium