当前位置: 首页 > article >正文

vue3 + ts + vite 初始化 cesium

1. 下载并导入依赖

npm i cesium vite-plugin-cesium --save-dev
// vite.config.ts
import cesium from 'vite-plugin-cesium'

// https://vitejs.dev/config/
export default defineConfig({
    plugins: [
        vue(),
        cesium()
    ],
})

2. 编写组件

    (1)main.ts

// main.ts
declare global {
    interface Window {
        viewer: Cesium.Viewer,
    }
}

    (2)components / CesiumViewer / index.vue 

<template>

  <div id="map"></div>

</template>

<script setup lang="ts">

import {onMounted} from "vue";
import * as Cesium from "cesium";

onMounted(() => {
  initCesium()
})

/* 初始化地球 */
const initCesium = () => {
  let viewer: Cesium.Viewer = new Cesium.Viewer("map", {
    infoBox: false, // 禁用沙箱,解决控制台报错
    selectionIndicator: false, //选择指示器
    timeline: false, // 时间轴
    animation: false, // 动画小组件
    geocoder: false, // 地理编码(搜索)组件
    homeButton: false, // 首页,点击之后将视图跳转到默认视角
    sceneModePicker: false, // 投影方式,切换 2D、3D 和 Columbus View (CV) 模式。
    baseLayerPicker: false, // 底图组件,选择三维数字地球的底图(imagery and terrain)。
    navigationHelpButton: false, // 帮助按钮
    fullscreenButton: false, // 全屏按钮
    scene3DOnly: true, // 每个几何实例将只能以 3D 渲染以节省 GPU 内存
    sceneMode: 3, // 初始场景模式 1 2D模式 2 2D循环模式 3 3D模式  Cesium.SceneMode
  })
  let logo = viewer.cesiumWidget.creditContainer as HTMLElement
  logo.style.display = "none"; // 隐藏 logo 版权
  viewer.scene.skyBox.show = false;
  viewer.scene.backgroundColor = new Cesium.Color(0, 0, 0, 0);
  window.viewer = viewer // 挂载到全局
}

</script>

<style>

#map {
  width: 100vw;
  height: 100vh;
}

</style>

3. 在页面中导入并使用上述组件即可,最终效果如下:


http://www.kler.cn/a/318927.html

相关文章:

  • Oracle 单机及 RAC 环境 db_files 参数修改
  • CSS回顾-长度单位汇总详解
  • 【算法一周目】双指针(2)
  • 今日 AI 简报 | 开源 RAG 文本分块库、AI代理自动化软件开发框架、多模态统一生成框架、在线图像背景移除等
  • SpringCloud学习笔记
  • 限流算法(令牌通漏桶计数器)
  • 携手SelectDB,观测云实现性能与成本的双重飞跃
  • STM32CubeIDE | 使用HAL库的ADC读取内部传感器温度
  • 基于springboot垃圾分类网站
  • 这样做PPT也太酷了吧,27.9kstar,适合开发者的ppt工具推荐
  • Spring Boot 点餐系统:提升您的餐饮体验
  • Cannot solve model: no CPLEX runtime found.【macOS系统下问题解决】
  • c# 将调试信息到VS输出窗口
  • 飞驰云联FTP替代方案:安全高效文件传输的新选择
  • 机器学习_神经网络_深度学习
  • 如何在银河麒麟操作系统中关闭IPv6
  • 解决mac下 Android Studio gradle 下载很慢,如何手动配置
  • linux安装solr
  • 配网缺陷检测无人机航拍图像数据集(不规范绑扎,螺栓销钉缺失)数据集总共3000张左右,标注为voc格式
  • 【RabbitMQ】消息分发、事务
  • 二级C语言2023-3易错题
  • 【伺服】Servo入坑学习记录①
  • 02DSP学习-了解syscfg
  • C语言从头学63—学习头文件stdlib.h(二)
  • PyQt5 导入ui文件报错 AttributeError: type object ‘Qt‘ has no attribute
  • Spring Boot在心理辅导领域的创新应用