• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

arc3dlab

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

私藏篇:【Cesium 学习地图】一份超全资源清单,请收好!

私藏篇:【Cesium 学习地图】一份超全资源清单,请收好! 本专栏旨在手把手带你从零开始,基于开源三维地球引擎 **Cesium** 封装一套功能完善、可复用的 **WebGIS 增强型 SDK**。内容涵盖核心封装思路、关键代码实现、常用 GIS 功能抽象,以及基于该 SDK 构建的 UI 组件库开发。

📘 专栏说明

本专栏旨在手把手带你从零开始,基于开源三维地球引擎 Cesium 封装一套功能完善、可复用的 WebGIS 增强型 SDK。内容涵盖核心封装思路、关键代码实现、常用 GIS 功能抽象,以及基于该 SDK 构建的 UI 组件库开发。如果你更关注结果而非实现过程,也可直接使用已发布的成果:

🌟 GitHub仓库 📦 NPM 包 ✨ 公众号:经纬码客(欢迎关注)

💡 建议:即便你打算直接使用 SDK,也推荐订阅本专栏 -- 理解设计思路,才能更灵活地扩展属于你自己的专属 GIS 能力!

由于作者需兼顾全职工作,更新主要安排在晚间或节假日,无法保证高频发布,但会持续迭代,直至 SDK 达到实际项目落地标准。届时将完整开源所有源码,供学习与商用(遵循许可证协议)。

大家好,我是 Cesium 酱(也可以叫我“本猿”),一名在 WebGIS 领域摸爬滚打多年的前端开发者。

在《Cesium酱の百宝箱》专栏里,我们一直在“造轮子”——封装 Viewer、设计事件系统、管理底图……

但很多读者留言问:“酱,我该从哪里开始学 Cesium?”

于是,我花了几天时间,把过去几年收藏、验证、踩坑过的学习资源,全部整理成一张 “Cesium 学习地图”。

今天,毫无保留地分享给你!

💡 文末表格省流链接均来自本猿收集项目,有GitHub参考,有在线Demo样例,有网站地址,有些仓库已经N久没更新了,但是亲测还是可用的(资料收集时间截至 2025 年 12 月)。

建议 收藏 + 转发 给需要的小伙伴!


🏛️ 一、官方资源 —— 学习的起点

一切从官方开始,最权威、最及时。

类别 资源 说明
官网 https://cesium.com/ 产品介绍、新闻、商业服务入口
API 文档 https://cesium.com/docs/cesiumjs-ref-doc/ 最全类库参考,支持搜索
官方示例 https://sandcastle.cesium.com/ 必看! 几乎涵盖所有功能的可运行 Demo
CDN 引用 链接比较长,见文末表格吧 快速引入指定版本(如 V1.136)
源码仓库 https://github.com/CesiumGS/cesium Star 30k+,深入理解原理的唯一途径

✨ 小技巧:在 Sandcastle 中修改代码后,点击 “Share” 可生成永久链接,方便团队协作调试!


🧩 二、核心技术文档 —— 深入底层

想真正掌握 Cesium,必须了解其两大基石:

  • Quantized Mesh 地形格式

    Cesium 默认地形的数据结构规范,高效压缩高程数据。

  • 3D Tiles 开放标准

    OGC 认证的三维数据分发标准,支持 BIM、点云、倾斜摄影等。

🔍 建议:即使不写底层,也应通读 3D Tiles 规范,理解 tileset.json 结构。


⛰️ 三、地形处理工具链 —— 从数据到服务

想用自己的 DEM 生成 Cesium 地形?这些工具帮你搞定:

工具 语言 简介
cesium-terrain-builder C++ 最经典的 DEM → Quantized Mesh 转换工具
Cesium-GeoserverTerrainProvider TypeScript 通过 GeoServer 发布地形服务
cesium-terrain-server Go 轻量级 TMS 地形服务端
mbtiles-terrain-server TypeScript 支持 mbtiles 格式地形发布
WCSTerrainProvider JavaScript 通过 WCS 服务加载地形

💡 推荐组合:gdal2cesium(Python)预处理 + cesium-terrain-builder 切片 + cesium-terrain-server 发布。


🧱 四、3D Tiles 转换与优化 —— 让模型“跑起来”

你的 OBJ、OSGB、LAS 数据如何变成 3D Tiles?试试这些:

工具 语言 亮点
3dtiles (fanvanzh) C++ 号称“世界最快”,支持 LAS/BIN 点云
objTo3d-tiles JavaScript Node.js 工具,基于 obj2gltf
Cesium3DTilesConverter C++ 支持 OSGB、Shp、GDAL 多源转换
3d-tiles-tools TypeScript 官方出品!转换、优化、分析一体化
3d-tiles-validator TypeScript 验证 Tileset 合规性,上线前必备

🚀 进阶玩家可关注:py3dtiles(Python)、pg2b3dm(PostGIS 直接输出)。


🌍 五、开源示例与扩展库 —— 站在巨人肩膀上

别重复造轮子!这些高质量项目值得学习:

🧪 功能扩展

  • cesium-extends(2025-04)
  • cesium-navigation

    添加指南针、缩放控件、比例尺

  • CesiumVectorTile

    实现小数据量矢量动态切片 & 贴地

🎨 行业应用

  • 3dcitydb-web-map(2024-09)

    基于 Cesium 的 3D 城市数据库查看器

  • cesium-draw(2024-07)

    Vue + Cesium 绘制标记、多边形、多段线

  • 3D-Wind-Field(2025-02)

    全球风场可视化

  • czml-editor(2025-08)

    CZML/KML 可视化编辑器

🧱 国产生态

  • cesium-map(2025-05)

    支持天地图、高德、百度等国内地图底图

  • webgis-demo(2025-03)

    Vue + 自定义曲面示例

❤️ 特别推荐:cesium-extends 和 cesium-map,中文开发者福音!


🖥️ 六、优秀应用案例 —— 看别人怎么做

灵感来源于实践。这些线上应用展示了 Cesium 的无限可能:

  • replay.flights:航班轨迹回放
  • radio.garden:全球电台地理分布
  • www.3drotterdam.nl:鹿特丹城市数字孪生
  • spaceaware.io:太空态势感知
  • maris.iaea.org:海洋放射性监测
  • map.geo.admin.ch:瑞士官方地理平台

👀 建议:打开控制台,观察它们如何组织数据、优化性能。


🧰 七、部分 SDK 与平台 —— 更贴近本土需求

如果你在国内开发,这些平台能省下大量时间:

Mars3D、DC.DVGIS、Converse3D

⚠️ 注意:部分平台为商业产品,也有开源的,不多解释,自行评估授权成本。


📖 八、学习材料与教程

最后,送上几份优质学习资料:

  • Awesome Cesium:精选资源集合
  • CesiumJS-tutorial:中文入门教程
  • CesiumJsSamples(2025-06):最新样例库
  • vue3-use-cesium(2025-08):Vue3 组件封装

💌 写在最后:学习,是一场共建之旅

这份清单,不是终点,而是起点。

Cesium 生态每天都在生长,新的工具、新的项目不断涌现。

欢迎你在评论区补充:

  • 你用过哪些好用的工具?
  • 有没有踩过什么大坑?
  • 最想看到哪类教程?

我会定期更新这份“学习地图”,让它成为 中文 Cesium 开发者的共同知识库。

愿你在三维世界的探索中,少走弯路,多见风景 🌍✨


🌟 项目开源,欢迎Star✨!

GitHub:https://github.com/jianlei-wang/Arc3DLab_SDK

NPM:https://www.npmjs.com/package/arc3dlab


🥰表格整理,速速取走

文档最后更新时间:2025-11-29
官方网站
https://cesium.com/
官方 API 文档
https://cesium.com/docs/cesiumjs-ref-doc/
官方示例
https://sandcastle.cesium.com/
官方 CDN(https://cesium.com/downloads/cesiumjs/releases)
++/(Version)/Build/Cesium/Cesium.js
++//(Version)/Build/CesiumUnminified/Cesium.js
++/(Version)/Build/Cesium/Widgets/widgets.css
https://sandcastle.cesium.com/Sandcastle-header.js
https://sandcastle.cesium.com/templates/bucket.css
源存储库
https://github.com/CesiumGS/cesium
技术文档
https://github.com/CesiumGS/quantized-mesh
https://github.com/CesiumGS/3d-tiles
地形
https://github.com/geo-data/cesium-terrain-builder
https://github.com/kaktus40/Cesium-GeoserverTerrainProvider
https://github.com/geo-data/cesium-terrain-server
https://github.com/geo-data/cesium-terrain-builder
https://github.com/heremaps/quantized-mesh-viewer
https://github.com/giohappy/gdal2cesium
https://github.com/xlhomme/WCSTerrainProvider
https://github.com/TNOCS/mbtiles-terrain-server
3D Tiles
https://github.com/fanvanzh/3dtiles
https://github.com/PrincessGod/objTo3d-tiles
https://github.com/scially/Cesium3DTilesConverter
https://github.com/CesiumGS/3d-tiles-validator
https://github.com/CesiumGS/3d-tiles-tools
https://github.com/Geodan/pg2b3dm
https://github.com/OpenDroneMap/Obj2Tiles
https://github.com/mfbonfigli/gocesiumtiler
https://github.com/Oslandia/py3dtilers
https://github.com/Oslandia/py3dtiles
https://github.com/mattshax/cesium_pnt_generator
https://github.com/tum-gis/cesium-point-cloud-generator
https://github.com/nxddsnc/gltf-to-3dtiles
https://github.com/xuzhusheng/gltf-to-3d-tiles
https://github.com/daniel-hilton/gltf-b3dm-convertor
https://github.com/Construkted-Reality/3DTG
https://github.com/saharilarshad/gltf-to-3dtiles
https://github.com/saharilarshad/citygml-to-3dtiles
开源示例
https://github.com/NASA-AMMOS/3DTilesRendererJS
https://github.com/TerriaJS/terriajs
https://github.com/MikesWei/CesiumMeshVisualizer
https://github.com/zhangti0708/cesium-examples
https://github.com/CesiumChina/cesium-map
https://github.com/RaymanNg/3D-Wind-Field
https://github.com/MikesWei/CesiumVectorTile
https://github.com/3dcitydb/3dcitydb-web-map
https://github.com/zhengjie9510/webgis-demo
https://github.com/Flowm/satvis
https://github.com/xtfge/cesium-draw
https://github.com/alberto-acevedo/cesium-navigation
https://github.com/hongfaqiu/cesium-extends
https://github.com/MapGIS/WebClient-JavaScript
https://github.com/NichijouCC/cesium_demos
https://github.com/manuelnas/CesiumHeatmap
https://github.com/adventureXPH/drawForCesium
https://github.com/NICTA/cesium-vr
https://github.com/3DGISKing/CesiumJsSamples
https://github.com/KhaledSharif/cesium-satellites
https://github.com/AlbertEjiestein/Wind-Field-Cesium
https://github.com/3DGISKing/CesiumJsTerrainCutVolumeMeasurer
https://github.com/EndPointCorp/czml-editor
https://github.com/Hxy1992/vue3-use-cesium
https://github.com/z2586300277/three-cesium-examples?tab=readme-ov-file
应用
https://app.4dmapper.com/app/projects
https://app.luucy.ch/
https://app.luucy.ch/Celerina_digial_Celerina/projects
https://cici.lab.asu.edu/polarglobe/
https://lasp.colorado.edu/maven/sdc/public/pages/maven3d/
https://map.geo.admin.ch
https://maris.iaea.org/explore/type/1
https://panevezys.lt/3d/
https://replay.flights/
https://radio.garden/
https://skylineglobe.com/sg/TerraExplorerweb/
https://spaceaware.io/
https://wayfinder.privateer.com/
https://www.3drotterdam.nl/#/
https://www.pointerra.com/
https://www.virtualcitymap.de/
基于Cesium的SDK
http://mars3d.cn/example.html
https://dc.dvgis.cn/#/examples
http://www.converse3d.com/
材料
https://github.com/YanzheZhang/Cesium.HPUZYZ.Demo
https://github.com/hujiulin/CesiumJS-tutorial
https://github.com/ZhiminXu/AwesomeCesium
https://github.com/AJJackGIS/learning_cesium

Cesium 酱の百宝箱 · 学习特辑

资料因分享而增值,技术因交流而精进。

2026 年,一起学无止境!

posted on 2026-01-17 18:04  Arc3DLab  阅读(1)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3