【Cesium】Cesium核心类、坐标系与着色器简介

核心类:

  1. Viewer : Viewer 是 Cesium 中最基本的视图容器,用于显示地球、地图、三维场景等。它提供了创建和管理场景的功能,可以配置视图的各种属性和行为。

  2. Scene : Scene 是 Cesium 中的核心类之一,代表了一个三维场景,用于渲染地球、模型、图层等。Scene 提供了对场景中对象的控制、相机的管理、光照效果等功能。

  3. Primitive : Primitive 是 Cesium 中用于表示和渲染图元的类,包括点、线、面等。通过创建和配置 Primitive 对象,可以在场景中添加各种几何体和图形元素。

  4. Entity : Entity 是 Cesium 中用于表示和管理实体的类,可以用来表示地标、标注、模型、传感器等各种对象。Entity 提供了丰富的属性和方法,可以对实体进行控制、样式设置、位置调整等操作。

  5. Camera : Camera 是 Cesium 中用于控制相机的类,可以通过 Camera 对象调整视角、缩放、旋转等相机参数,实现对场景的观察和导航。

  6. Terrain : Terrain 是 Cesium 中用于处理地形数据的类,包括加载、渲染、裁剪等功能。Terrain 可以通过 TerrainProvider 对象加载各种地形数据源,并提供了对地形的可视化和交互操作。

  7. DataSource : DataSource 是 Cesium 中用于加载和管理数据源的类,包括地图图层、矢量数据、栅格数据等。通过 DataSource 可以加载和显示各种数据,并对数据进行样式设置、筛选、交互等操作。

  8. ImageryLayer : ImageryLayer 是 Cesium 中用于加载和管理图像图层的类,可以加载各种底图、卫星影像、地图瓦片等数据,并进行叠加、调整透明度、切换可见性等操作。

这些类和 API 提供了 Cesium 中常用的核心功能,可以用于创建、管理和控制三维场景,加载和显示各种地理数据,实现丰富的地图、地球、模型等应用。

坐标系

【3D基础】坐标转换------地理坐标投影到平面_经纬坐标转换为平面坐标-CSDN博客

Cesium中着色器

在 Cesium 中编写着色器通常涉及到使用 Cesium 提供的着色器语言 GLSL(OpenGL Shading Language)。GLSL 是一种用于编写图形渲染管线的专门语言,用于控制顶点、像素和几何着色器的行为。

复制代码
// 顶点着色器
attribute vec3 position; // 顶点位置
attribute vec3 normal; // 顶点法向量

uniform mat4 modelViewProjection; // 模型视图投影矩阵

varying vec3 vNormal; // 传递给片元着色器的法向量

void main() {
    // 计算顶点位置
    vec4 positionWC = vec4(position, 1.0);
    gl_Position = modelViewProjection * positionWC;

    // 计算法向量
    vNormal = normal;
}

// 片元着色器
precision highp float;

varying vec3 vNormal; // 接收从顶点着色器传递过来的法向量

void main() {
    // 使用法向量作为颜色输出
    gl_FragColor = vec4(normalize(vNormal), 1.0);
}

在这个示例中,顶点着色器负责将顶点的位置和法向量传递给片元着色器。片元着色器则使用法向量作为颜色输出,这样就可以在场景中根据法向量的方向显示不同的颜色。

要在 Cesium 中使用这些着色器,可以通过**Cesium.ShaderSource 类构建着色器源码** ,然后使用 Cesium.ShaderProgram将着色器源码编译成着色器程序,最后将着色器程序应用到场景中的对象

相关推荐
sunshine22 girl4 分钟前
Angular7,9,学习笔记一 创建项目,基本语法
笔记·学习
小雪崩6 分钟前
嵌入式学习 day30:minilog
linux·c语言·学习
xiaoxiangsiyan38 分钟前
现代大型虚拟化智慧园区整体架构EVPN‑VXLAN落地全解
运维·网络·学习·架构
mlidongfeng1 小时前
[AI][昇腾950]TP(Transport Layer,传输层)学习笔记
笔记·学习
小弥儿1 小时前
GPT Image 2 提示词库,把散落的生图提示词变成工程资产
开发语言·javascript·gpt·学习
汇智信科1 小时前
Java 开发汇智网络化学习系统 (E‑Learning) 技术特性与应用场景解析
人工智能·学习·架构·汇智信科·fastclaw·汇智龙虾
poiu12346572 小时前
中医执业医师考试如何选择培训课程|2026主流机构客观测评
学习
MartinYeung52 小时前
[论文学习]BadRobot:物理世界中具身大语言模型智能体的越狱攻击
人工智能·学习·语言模型
YM52e2 小时前
鸿蒙 ArkTS 实战|万能绿茶通用词汇库:20 词六大类 + 搜索筛选 + 潜台词解析
学习·华为·harmonyos
Three_ST2 小时前
沐神-动手学习深度学习-习题答案4.4模型选择,欠拟合,过拟合
人工智能·python·深度学习·学习·算法