首页 / Cesium / 使用示例
内容格式:模型与点云
3D Tiles 的瓦片可以装不同格式的内容:模型、实例、点云。认清格式,才知道该用哪套渲染参数。
源码与运行效果
这个示例在做什么
左边是一个实体模型,右边是一片点云,分别对应 3D Tiles 里最常见的两种内容载体:
glb(含 b3dm 的几何部分)与 pnts。
点云用 PointPrimitiveCollection 批量绘制四万个点会力不从心,
示例取了四千个点保证流畅,真实点云由瓦片按需加载。
3D Tiles 的内容格式各有分工:b3dm 是带批表的建筑模型,
i3dm 是同一模型的多实例(树木、路灯),pnts 是点云,
glb 是 3D Tiles 1.1 起可直接使用的内容格式。
瓦片内容与 tileset.json 的分离,让同一个数据集能混用多种格式。
关键接口
| 接口 | 作用 |
|---|---|
Cesium3DTileset.fromUrl(url) | 按 tileset.json 加载任意内容格式 |
PointPrimitiveCollection | 轻量点云渲染,适合几千到几万个点 |
Model.fromGltfAsync | 直接加载单个 glb,用于模型级调试 |
tileset.style | 对 pnts 同样生效,可做点云着色 |
可以直接改的地方
| 位置 | 改什么 | 效果 |
|---|---|---|
i < 4000 | 改成 20000 | 点更密,注意帧率 |
pixelSize: 2.5 | 改成 1 | 点更细,接近激光点云 |
rnd() * 34 | 改成 60 | 点云更高 |
boxGlb(22, 34, 18, …) | 改尺寸 | 模型体量 |
替代说明:官方示例展示 b3dm、i3dm、pnts 等格式的实际数据集,全部来自 ion。
这里用 GLB 模型与 PointPrimitiveCollection 复现两种内容形态的观感,
加载入口仍是 Cesium3DTileset.fromUrl。