前言

cesium 是一款开源的 webgis 开发框架,她支持 2D 2.5D 3D 的地理信息展示,基于 webgl 运行在浏览器,通过 cesium 你可以做出很多酷炫的应用,当然 cesium 不仅用于展示,在实际应用中 cesium 也有很大的作用。

地位

cesium 是一款世界级的开源框架,基于Apache2.0 许可的开源,所以可以免费的用于商业和非商业用途。在同类型的框架中cesium不论在性能还是使用便利性上都是优秀的。国内有很多公司 针对cesium进行二次开发,形成自己的产品,像"超图"、“火星科技"等,目前这些二次开发的产品在市场上应用也很广泛。

迭代

cesium的迭代速度特别快,基本上每周一个小版本,每月一个大版本更新,提出的issue也能很快解决,所以不用担心cesium会突然不更新。

正确认知

官网 上有这么一句话Cesium is the open platform for software applications designed to unleash the power of 3D data.,大致意思是说cesium是为了更好的展示 3D 数据,这句话我也是学了arcgis才明白的,相对于专业性比较强的arcgis来说cesium在实用性和专业性上差了不少。这并不是说cesium做出来的东西不专业,只是在对数据要求比较严格的行业,例如地震,气象,建筑等领域,cesium要想达到专业精度的数据展示比较麻烦。在我有限的认知中,截止到现在cesium主要被用于数据可视化领域较多,专业的gis领域还是老大哥arcgis

如何学习

  • 基础地理知识

    • 坐标
    • 投影
  • 基础的前端知识

    • js
    • es6
    • npm
    • webpack

虽然cesium也能做 2D,但既然选择了cesium我相信还是做 3D 的比较多的,二维的完全可以使用openlayer或者leaflet更方便。既然做 3D 最好要对 3 维的知识有一点理解,上面我说的东西很简单,只要你有基本的前端基础,在查下资料很容易就能理解坐标和投影的概念。

坚定信念

有很多人问我,身为一个前端却投向了webgis这么一个小众的方向,而且gis还有这么多的知识需要学习,真的值得吗?往往这个时候我就会告诉他,webgis大有可为,这句话绝对是有的放矢,现在这个市场上有很多前端一直写着静态页面,也有很多前端一直在写增删改查,这样的工作我觉得一点意思也没有。在现在这个前端市场,音视频方向 webgl方向 全栈方向 混合开发方向这几个领域的技术是很有挑战性的,我们可以尽量往这方面靠,而webgis正是属于webgl方向的一个小分支,只要我们耐下心来,认真学习钻研,一定会有所成就

学习资源

  • 官网 https://cesium.com/

    官网的文章是最理解cesium的,当然也是最不容易让人理解的地方

  • cesium 中文网 http://cesium.xin/

    国内最早接触cesium的一批人创建的博客,一部分文章收费了,一些基础的知识可以看看

  • cesium实验室 http://www.cesiumlab.com/

    cesiumlab数据处理分发软件,并开源earthSDK基于cesium二次开发包

  • 超图 https://www.supermap.com/

    超图开发平台,基于cesium的二次开发框架以及示例展示

  • 火星科技 http://mars3d.cn/

    基于cesium的二次开发的框架 mars3d,加密包开源,源码收费,有例子可以参考例子

闲谈

闲来无事逛了逛了 QQ,看到关于cesium的群里面的人已经很多了,想到当初自己刚接触cesium的时候,网络上资料少的可怜,自己英语又不好,为了实现某种效果头发一把一把的掉,看到现在学习这个框架的人越来越多,资料也是越来越丰富,感到很高兴,不由得生出自己也尽一份力的念头,所以就把自己使用cesium以来总结的知识点分享出来,大家共同学习共同进步。

我也是菜鸟一个,文章旨在分享