Cesium是一款基于 Web 的开源虚拟地球平台,是一个跨平台、跨浏览器的用于展示三维地球和地图的JavaScript 库,支持 2D、2.5D、3D 形式的地图数据展示,用户可以利用 Cesium 绘制各种几何图形、高亮区域,甚至三维模型等多种数据可视化展示。
Cesium 的强大之处在于其出色的渲染引擎和高性能的地球数据可视化能力,通过 Cesium,用户可以查看地球表面的各种信息、细节。
山海鲸将这一强大的虚拟地球技术融入到可视化系统中——即山海鲸 Cesium,用户就可以轻松访问 Cesium 提供的各种地球数据。山海鲸也开放了整合 CesiumJS 的接口,只需要开启反向相机同步,即可无缝的将 CesiumJS 代码迁移过来。
山海鲸 Cesium可以呈现高度逼真的三维地球模型,包括地形、建筑物、植被等,让用户身临其境,还支持多种数据源的融合,包括卫星影像、地理信息数据、传感器数据等,用户可以将不同数据源的信息整合在一起进行综合分析和展示。感兴趣的朋友可以自行体验一下效果,放个地址:山海鲸 Cesium。
在山海鲸可视化软件中,除了内置的相机外还有一个Cesium 相机按钮,开启后可以通过鼠标进行控制和操作 GIS 场景。Cesium 相机控制着场景中的景象,且有许多方法可以操作 Cesium 相机,例如旋转、缩放、平移和飞向目标。
且山海鲸还将大气散射和空气透视的效果也整合到了 CesiumJS 之上,山海鲸为 CesiumJS 实现了Aerial Perspective LUT;将瑞利散射、米氏散射引入 CesiumJS 视效中,大幅提升大场景真实度。
真实感渲染除了大气部分,还有体积云和高度雾。
山海鲸采用Perlin-Worley 噪声结合Perlin 噪声实现 CesiumJS 内嵌体积云的动态建模,同时结合大气散射实现基于物理的体积云光照。并使用Temporal Reprojection和Bilateral Upsample 技术大幅提升体积云渲染的性能。
山海鲸为 CesiumJS 提供两层指数高度雾设置作为大气雾的补充设置,同时实现雾色随大气散射颜色和太阳光颜色自动调节。
除此之外,山海鲸为 CesiumJS 添加了真实感水体渲染能力,实现水面波纹、反射、FlowMap、白沫、焦散等等视觉元素。
在天气系统方面,山海鲸为 CesiumJS 添加下雨、下雪和大雾的天气效果,一键可实现更加真实的雨水和降雪的地面覆盖。
在山海鲸可视化的二次开发中,用户可以用自己熟悉的 JS 语言和 CesiumJS 接口来控制 Cesium 相机来实现更精细的操作和定制化需求,之前的 CesiumJS 项目甚至都不需要改什么代码就可以一键迁移——用户可以根据具体需求来编写自定义的代码,实现更复杂和精确的相机控制功能。
山海鲸与 Cesium 结合之后,地球数据的可视化变得更加直观、交互更加丰富。用户可以通过交互式操作,自由旋转、缩放和平移地球,也可以选择感兴趣的区域,获取详细的地理信息和数据,山海鲸可视化为用户提供了无限探索和可视化地球数据的可能性。