Cesium是全世界使用最广泛的3D WebGIS引擎。国内有若干个GIS厂家的3D GIS引擎也是基于Cesium进行开发。随着国家“新基建、数字化”战略的不断发展深化,越来越多的城市数字化项目需要用上3D GIS引擎,对Web端而言,Cesium几乎是不二的选择。但开源的项目,一般门槛都会高一点,没有商业的技术支持服务,遇到问题只能自己解决。下面就个人这几年使用Cesium的经验,总结一下如何快速入门Cesium,上手二次开发。

首先是知识储备:

  1. Javascript语言基础

  1. WebGL基础(包括矩阵变化、图形构造、渲染方面的基础知识)

  1. GIS基础(包括坐标系、WebGIS等)

工具、开发环境准备。

  1. VisualStudio Code

  1. NodeJS

准备好以上条件后,快速入门的最佳办法是编译、调试及运行Cesium的源代码及案例。

第一步,首先上github,下载Cesium最新源代码,目前最新版本是1.102.(网址:https://github.com/CesiumGS/cesium)

下载Cesium1.102源代码后,执行“npm install”,安装相关依赖库后,再执行“npm start”就可以运行Cesium的Demo集合,也叫“Sandcastle”,如下图所示。

浏览器打开“http://localhost:8080/”,在页面上点击“Sandcastle”,打开案例集合。

深入了解Cesium的一个重要手段是调试、跟踪源代码。如果想要调试源码,在Chrome浏览器下,只要按快捷键F12就可以调出调试窗口。

个人研究比较多的案例是:

通过这几个案例,可以快速掌握Cesium使用频率最高的几个类及API的使用方法,例如Viewer、Scene、Primitive、Matrix3/4、Cartisian3/4、Cesium3DTileset等。掌握这几个接口的使用原理,实现在3D场景的模型数据的各种平移、旋转、缩放交互就没什么问题了。

其实搭建3D WebGIS平台,还有一部分是多源3D地理数据的预处理及集成。由于Cesium采用3dtiles数据格式标准(1.90版本后又提出了“3dtiles next”),3d来源数据,不管是倾斜摄影、3d模型还是BIM数据,都要统一转换程3dtiles才能集成到一个平台。所以,数据的预处理是3D GIS平台开发的很重要环境。后续章节再记录分享多源数据处理集成的方法和踩过的坑。

Cesium快速入门相关推荐

  1. Shiro第一个程序:官方快速入门程序Qucickstart详解教程

    目录 一.下载解压 二.第一个Shiro程序 1. 导入依赖 2. 配置shiro配置文件 3. Quickstart.java 4. 启动测试 三.shiro.ini分析 四.Quickstart. ...

  2. 计算机入门新人必学,异世修真人怎么玩?新手快速入门必备技巧

    异世修真人怎么快速入门?最近新出来的一款文字修仙游戏,很多萌新不知道怎么玩?进小编给大家带来了游戏新手快速入门技巧攻略,希望可以帮到大家. 新手快速入门攻略 1.开局出来往下找婆婆,交互给点钱,旁边有 ...

  3. Spring Boot 2 快速教程:WebFlux 快速入门(二)

    2019独角兽企业重金招聘Python工程师标准>>> 摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘 ...

  4. Apache Hive 快速入门 (CentOS 7.3 + Hadoop-2.8 + Hive-2.1.1)

    2019独角兽企业重金招聘Python工程师标准>>> 本文节选自<Netkiller Database 手札> 第 63 章 Apache Hive 目录 63.1. ...

  5. 《iOS9开发快速入门》——导读

    本节书摘来自异步社区<iOS9开发快速入门>一书中的目录,作者 刘丽霞 , 邱晓华,更多章节内容可以访问云栖社区"异步社区"公众号查看 目 录 前 言 第1章 iOS ...

  6. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 序

    BIML 101 - BIML 快速入门教程 做大数据的项目,最花时间的就是数据清洗. 没有一个相对可靠的数据,数据分析就是无木之舟,无水之源. 如果你已经进了ETL这个坑,而且预算有限,并且有大量的 ...

  7. python scrapy菜鸟教程_scrapy学习笔记(一)快速入门

    安装Scrapy Scrapy是一个高级的Python爬虫框架,它不仅包含了爬虫的特性,还可以方便的将爬虫数据保存到csv.json等文件中. 首先我们安装Scrapy. pip install sc ...

  8. OpenStack快速入门

    OpenStack云计算快速入门(1) 该教程基于Ubuntu12.04版,它将帮助读者建立起一份OpenStack最小化安装.我是五岳之巅,翻译中多采用意译法,所以个别词与原版有出入,请大家谅解.我 ...

  9. Expression Blend实例中文教程(2) - 界面快速入门

    上一篇主要介绍Expression系列产品,另外概述了Blend的强大功能,本篇将用Blend 3创建一个新Silverlight项目,通过创建的过程,对Blend进行快速入门学习. 在开始使用Ble ...

最新文章

  1. APK签名导出向导 - Use the Export Wizard
  2. PAT 1038. 统计同成绩学生
  3. 第 3 章 第 2 题 求级数问题 递归法实现
  4. php仿微信上传图片压缩,PHP仿微信多图片预览上传实例代码
  5. 【多题合集】高精度加减乘除
  6. Java程序猿修炼之道 之 Logging(3/3) - 怎么分析Log
  7. EDI系统-AS2传输常见问题
  8. O2OA开源企业办公开发平台:使用Vue-CLI开发O2应用
  9. Chrome浏览器如何清除浏览器缓存快捷键
  10. 可视化作品欣赏 | 简单的设计往往就是最好的~~
  11. PHP生成缩略图、加水印
  12. linux环境使用c语言获取系统时间,并拼接成字符串
  13. c语言面向对象:队列 (先进先出,后进先出)
  14. 构造函数this指向
  15. CSS中的常见单位(px,%,em,rem,vw,vh,vmax,vmin,calc)
  16. OpenGl学习之glRotate函数
  17. CPU告急,EOS网络拥堵该如何解决?
  18. alter database命令
  19. html5绘制圣诞树,【Html5】JavaScript和html5实现3D圣诞树的代码
  20. 女人为什么要嫁人?(转)

热门文章

  1. 百度人脸 检测 识别 python3.5 APIV3版本
  2. 央视315曝光名单2014版看点解读
  3. Java基础 - 网络编程 - InetAddress类、Socket(TCP)举例使用
  4. 串口传输 波特率 延时时间的设置
  5. 头戴式蓝牙耳机哪款音质比较好?2020最受欢迎五款高清音质蓝牙耳机分享
  6. MySQL 真·常用函数
  7. 迷宫找路(从起点找到终点)
  8. ECharts 3.0底层zrender 3.x源码分析1-总体架构
  9. 厦门集美大学的计算机专业,2017集美大学各专业录取分数线
  10. Terraformation启动全球首个专注于生物多样性的碳融资森林加速器,以创建更多的全球土地恢复项目