CesiumJS

用于世界级3D地球仪和地图的开源JavaScript库。(An open-source JavaScript library for world-class 3D globes and maps. )

Github星跟踪图

Cesium 是一个JavaScript库,用于在没有插件的Web浏览器中创建3D地球仪和2D地图。 它使用WebGL进行硬件加速的图形,并且是跨平台、跨浏览器和调整动态数据可视化。

安装(use the npm module):

npm install cesium

Cesium 特性:

动态地理空间可视化
  • 使用3D Tiles流式传输,风格化和与异构3D数据交互,包括摄影测量模型,3D建筑,CAD和BIM外部和内部和点云。
  • 可视化高分辨率全球地形。可选地夸张地形。
  • 来自多个来源的图层图像,包括WMS,TMS,具有时间动态图像的WMTS,Bing Maps,Mapbox,GEE,OpenStreetMap,ArcGIS MapServer,标准图像文件和自定义平铺方案。每个层可以与其下面的层进行alpha混合,其亮度,对比度,伽玛,色相和饱和度可以动态地改变。两层可以跨屏幕分割。
  • 使用旧版Google Earth Enterprise地形和图像。
  • 行业标准矢量格式,如KML,GeoJSON和TopoJSON,包括地形夹紧。
  • 使用glTF绘制动画和皮肤的3D模型。将模型夹在地形上并突出显示其轮廓。使用在线转换器将COLLADA和OBJ转换为glTF。使用KHR_binary_glTF和WEB3D_quantized_attributes扩展来减少文件大小。
  • 使用CZML创建数据驱动的时间动态场景。
  • 绘制和绘制各种几何形状:
    • 折线和折线
    • 广告牌
    • 标签
    • 绘制,夹紧地形,拉伸多边形,多边形孔,矩形,圆形和椭圆形
    • 盒子,球体,椭圆体和圆柱体
    • 走廊,折线和墙壁
  • 创建视觉效果,包括:
    • 阴影,包括自阴影和软阴影的地形,3D模型和几何,基于太阳的位置。
    • 大气,雾,太阳,太阳照明,月亮,星星和水。
    • 颗粒系统的影响,如烟,火和火花。
  • 单个物体的选择和地形的选择。
  • 用鼠标和触摸处理器进行旋转、缩放、平移、惯性、飞行、自由外观和地形碰撞检测的摄像机导航。
  • 针对性能进行批处理,剔除,JavaScript和GPU优化。
  • 精确处理大视距(避免z战斗)和大世界坐标(避免抖动)。
  • 具有相同API的3D地球仪,2D地图和哥伦布视图(2.5D)。 3D视图可以使用透视或正投影像。
  • 显示军事符号系统,如MIL-STD-2525和STANAG APP6,通过与milsymbol集成。
  • 集群点,标签和广告牌。
小工具
  • 控制模拟时间的时间线和动画小部件。
  • 用于选择图像和地形的基层选择器小部件。
  • 选择和信息框小部件,用于突出显示对象和显示信息。
  • 地理编码小部件,用于飞往地址和地标。
  • 家庭视图小部件飞到默认相机视图。
  • 3D模式,2D模式和哥伦布视野之间的场景模式选择器小部件。
  • 全屏幕小部件用于切换全屏模式。
  • 导航帮助小部件提供鼠标和触摸指令。
  • 性能监视器用于监视帧速率。
  • Inspector小部件用于高级图形调试。
  • WebVR小部件用于使用VR卡,如Google Cardboard查看铯。
  • 高精度数学和时间
  • 参考框架,如世界大地测量系统(WGS84),国际天体参考框架(ICRF)和东北向上。
  • 等距圆柱和墨卡托2D地图投影。
  • 转换,如经度/纬度/高度到笛卡尔坐标。
  • 快速笛卡尔,球形,制图,矩阵和四元数类型。
  • 儒略历,闰秒,UTC和TAI时间标准。
灵活部署
  • 使用Cesium作为单个.js文件(加上.css和web-workers .js文件)或异步模块定义(AMD)仅包括您使用的内容。
  • 使用Cesium和电子创建跨平台桌面应用程序。
  • 用Cesium和Cordova创建移动应用程序

主要指标

概览
名称与所有者CesiumGS/cesium
主编程语言JavaScript
编程语言CSS (语言数: 7)
平台Linux, Mac, Windows
许可证Apache License 2.0
所有者活动
创建于2012-03-02 22:27:14
推送于2025-04-18 21:02:36
最后一次提交2022-04-25 09:59:18
发布数195
最新版本名称1.128 (发布于 2025-04-01 16:25:30)
第一版名称b5 (发布于 2012-05-17 14:45:30)
用户参与
星数13.6k
关注者数472
派生数3.6k
提交数41.7k
已启用问题?
问题数6125
打开的问题数1418
拉请求数5575
打开的拉请求数28
关闭的拉请求数773
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?

Build Status 
Docs Greenkeeper badge

CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin. It uses WebGL for hardware-accelerated graphics, and is cross-platform, cross-browser, and tuned for dynamic-data visualization.

CesiumJS Homepage

CesiumJS Features Checklist

:rocket: Get Started

Visit the Downloads page or use the npm module:

npm install cesium

Have questions? Ask them on the forum.

Interested in contributing? See CONTRIBUTING.md. :heart:

:snowflake: Mission

Our mission is to create the leading 3D globe and map for static and time-dynamic content, with the best possible performance, precision, visual quality, platform support, community, and ease of use.

:green_book: License

Apache 2.0. CesiumJS is free for both commercial and non-commercial use.

:earth_americas: Where Does the 3D Content Come From?

CesiumJS can stream 3D content such as terrain, imagery, and 3D Tiles from the commercial Cesium ion
platform and other content sources. You are free to use any combination of content sources with CesiumJS that you please.
Using Cesium ion helps support CesiumJS development. :heart: