cesium教程(二):Viewer、Scene、影像

Cesium是一款开源的、高性能的3D地球和地图可视化平台,它允许开发者创建基于Web的、交互式的地理空间应用程序。

cesium教程(二):Viewer、Scene、影像

Cesium的核心是一个WebGL驱动的引擎,能够渲染大规模的地理数据集,支持高精度的地球模型和动态数据可视化。以下是一个Cesium的详细教程,分为多个章节。

3D模型在线预览提供多种低代码平台3D模型在线预览解决方案,实现了将多种3D模型格式无缝集成到低代码业务表单中。这意味着用户可以在不离开低代码平台的情况下,直接查看和操作3D模型,极大地提升了数据可视化的效果和用户交互体验。

Viewer 类型

Viewer 是一切API的开始点,new Viewer后构造的就是我们看得见的地球对象,Viewer 有很多属性,下面表格是我们常用到的。

动画小部件调整

自定义复位按钮位置

场景 Scene

Scene 场景是所有3D图形对象的容器(HTML canvas),Scene 不是由我们直接创建,它是ViewerCesiumWidget 内部隐式创建的

在场景对象中我们可以控制:globe 椭圆体(imageryLayers 底图、terrainProvider 地形)、camera 相机、skyBox 天空盒、sun 太阳、moon 月亮、primitives 默认矢量数据层、postProcessStage 后期处理效果等。

Scene 场景渲染监听事件触发顺序:(addEventListenerremoveEventListener 进行绑定和解绑)

  • viewer.scene.preUpdate更新或呈现场景之前将引发的事件
  • viewer.Scene.postUpdate场景更新后以及渲染场景之前立即引发的事件
  • viewer.scene.preRender场景更新后以及渲染场景之前将引发的事件
  • viewer.scene.postRender渲染场景后立即引发的事件

影像图层 ImageryLayer

Cesium支持多种服务来源的高精度影像地图数据的加载和渲染。

  • 可以在 Viewer 构造时传参进行设置
  • 在地球构造后可通过 viewer.scene.imageryLayers (ImageryLayerCollection类)来控制

图层操作

图层支持排序和透明混合。每个图层的 show(显示),alpha(透明度),亮度(brightness),对比度(contrast),saturation(饱和度),hue(色调),gamma(伽马校正) 都可以动态修改。

图层是根据它们添加的顺序从下到上绘制的。图像图层集合的操作与 Cesium 中的任何其他集合一样,使用add、remove和 get等函数 。此外,层可以使用 raise(向上移动一层)、raiseToTop(移动到顶部)、lower(向下移动一层) 和 lowerToBottom(移动到底部) 重新排序 。

在特定范围内绘制图层

添加在特定范围内绘制单个图像的图层。

跨域资源共享

要将代理与图像提供程序一起使用,请在构建图像提供程序时使用代理属性。Cesium 包含一个用 Node.js 编写的 简单代理,用于开发目的

如果您要托管公共图像,我们鼓励启用 CORS,而不是使用代理。

cesium教程 - 索引

cesium教程(一):创建cesium应用

cesium教程(二):Viewer、Scene、影像

cesium教程(三):地形、坐标

cesium教程(四):相机

cesium教程(五):追踪、交互

cesium教程(六):Entity API-几何种类

cesium教程(七):Entity API-材质和轮廓

cesium教程(八):Entity API-高度和挤压,管理实体

cesium教程(九):Entity API-实体交互

NSDT场景编辑器 | NSDT 数字孪生 | GLTF在线编辑器 | 3D模型在线转换 | UnrealSynth虚幻合成数据生成器 | 3D模型自动纹理化工具
2023 power by nsdt©鄂ICP备2023000829号