Cesium学习第一章 安装下载 基于vue3引入Cesium项目开发

Cesium 是一个非常流行的开源 JavaScript 库,由 Cesium Systems 开发,用于在网页上创建三维地球和地图。它基于 WebGL 技术,可以显示全球范围内的地理空间数据。

首先 cesium怎么读?

ˈsiːziəm 读音类似:C z m/ cz母

首先 Cesium是什么?

Cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎。Cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区域,并提供良好的触摸支持,且支持绝大多数的浏览器和mobile。

它本来的样子长这样

这样。。

以及这样。。地图展开后

好了 那我们上面的例子 已经看完了 下面我们学习一下 怎么安装它 我们基于vue3 开发 还是本地开发都需要安装nodejs

下载nodejs: https://nodejs.org/en/download

根据你的系统版本 选择下载对应版本的nodejs

下载完成后。安装完成后,在你的开发工具里面 输入 node -v 查看 出现版本号码 就说明安装成功了。如下:

接下来 我们下载 cesiumjs

下载地址 https://cesium.com/platform/cesiumjs/

使用npm 下载 和 直径点击 下载按钮 都可以下载

直接点击下载按钮,会跳转到如下页面

再直接点击下载按钮 会调转到 github下载地址,国内访问 很可能是这样,访问不通,这样建议多刷新几遍页面,会下载下来

下载后解压缩文件夹里面的长这样

打开Build 文件夹 将里面的Cesium 文件夹 复制到 我们的项目里

我的项目结构如下:将Cesium 放到 public 文件里面

index.html 页面里修改如下:将css,js代码引入到项目里

html 复制代码
<!doctype html>
<html lang="">
  <head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width,initial-scale=1.0" />
    <link rel="icon" href="<%= BASE_URL %>favicon.ico" />

    //引用cesium的css
    <link rel="stylesheet" href="Cesium/Widgets/widgets.css" />
    <title><%= htmlWebpackPlugin.options.title %></title>
  </head>
  <body>
    <noscript>
      <strong
        >We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without
        JavaScript enabled. Please enable it to continue.</strong
      >
    </noscript>
    <div id="app"></div>
  </body>

  //引用cesium的js
  <script type="text/javascript" src="Cesium/Cesium.js"></script>
</html>

在html 的body 里面

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

在页面的js 里面

javascript 复制代码
 Cesium.Ion.defaultAccessToken =
    '你申请的tokens'
  // 初始化Cesium Viewer
  const viewer = new Cesium.Viewer('cesiumContainer', {
    
  })

tokens 的申请在cesium 网站 需要注册登录后 创建,个人和非商业项目是免费的~~

然后把token 复制替换

javascript 复制代码
Cesium.Ion.defaultAccessToken =
    'eyJqdGkiOiI1ODQ5MDM2MS0xY2JmLTRhYmUtODYyZC1iNDViMzk2ZDdkZGUiLCJpZCI6MzczNjc0LCJpYXQiOjE3NjcwODE3NjV9.LuYkwE7AwGf01zlwLT9GOo2h5oERVIayz5F0nXwoxAU'

注意我上面的token是假的 不能直接使用!!!!!一定要换成你自己申请的tokens.否则可能出现地图展示不出来,加载错误等等。

然后运行dome 就出来啦

基于vue3框架下载使用下面的下载方式

vue3和tyjs 会强制校验类型引入对象等,要是用上面的方法引入到项目里,也能用,但是typejs 会提示有错误信息 例如 :

所以我们要用

javascript 复制代码
npm install cesium

安装完上面的cesium后 还要安装下面的插件 否则 运行会报错

javascript 复制代码
npm install vite-plugin-cesium -D

安装完成后 修改tsconfig.ts 文件,注意注释的新增2条 一个improt cesium 一个在 plugins里面的 cesium()

javascript 复制代码
import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import vueDevTools from 'vite-plugin-vue-devtools'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
import cesium from 'vite-plugin-cesium' // 新增引入 cesium
// https://vite.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    vueJsx(),
    vueDevTools(),
    cesium(), // 新增
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [ElementPlusResolver()],
    }),
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url)),
    },
  },
})

最后 在你需要 展示地球的页面顶部 引入

javascript 复制代码
import { Ion, Terrain, Viewer } from 'cesium'
import 'cesium/Build/Cesium/Widgets/widgets.css'

页面挂载后:

javascript 复制代码
onMounted(async () => {
  Ion.defaultAccessToken =
    '你的tokens'
  // 初始化Cesium Viewer
  const viewer = new Viewer('cesiumContainer', {
    terrain: Terrain.fromWorldTerrain(),
  })
})

注意 一点要在页面挂在后 在创建实例,否则会报错,因为在页面挂在前,页面里面还不存在,id为cesiumContainer的 div 元素

最后的最后 我们就完成第一个任务啦 下载安装运行 vue cesium ,放一张截图:

今天是2025年12月31日,25年的最后一天,祝大家26年新年快乐!

相关推荐
雨季mo浅忆27 分钟前
首个Vue3项目边写边学边记
前端·vue3
这里是杨杨吖3 小时前
SpringBoot+Vue高校在线考试系统 附带详细运行指导视频
vue·在线考试·springboot
li-xun6 小时前
我的在线工具箱继续升级:新增 Token 计算器、AI 提示词生成器和开发者格式化工具
javascript·django·html5
wuxia211810 小时前
在5种环境中编写点击元素改变内容和颜色的JavaScript程序
javascript·微信小程序·vue·jquery·react
Sweet锦10 小时前
Vue3 集成 ApexCharts 避坑指南:从动画失效到自定义指令的完美解决方案
vue·echarts
#麻辣小龙虾#1 天前
基于vue3.0开发一款【固废与废气运维管理系统】(支持源码)
前端·vue.js·vue3
王小王-1231 天前
基于深度学习的个性化音乐推荐系统的设计与开发
人工智能·深度学习·mysql·vue·推荐算法·个性化音乐推荐系统·音乐预测
alexander0681 天前
使用vite脚手架,快速创建一个vue3的项目
vue
星辰徐哥2 天前
工具推荐:HTML5+AI开发必备的前端调试工具
前端·人工智能·html5
星辰徐哥2 天前
技能提升:自然语言处理在HTML5前端的应用
前端·自然语言处理·html5