首页 / Cesium / 使用示例
BIM 建筑的逐层呈现
BIM 模型自带楼层结构,最常做的操作是只看某一层或逐层展开。示例用盒体搭出八层楼,按节奏逐层显示。
源码与运行效果
这个示例在做什么
一栋八层建筑自下而上逐层出现,每层停一秒。每层用一个盒体表示, 盒体底面贴在该层的楼面高度上,八层叠起来就是整栋楼的体量。
BIM 数据在 3D Tiles 里通常带楼层元数据。想只看某一层,做法不是把整栋楼隐藏,
而是按楼层属性过滤要素,或者用裁剪平面对整栋楼做水平剖切。
示例里的「逐层出现」是最直观的一种表达,控制的是实体的 show。
关键接口
| 接口 | 作用 |
|---|---|
entity.show | 布尔开关,逐层控制显隐最省性能 |
TilesetStyle / feature.getProperty | 真实 BIM 数据里按楼层过滤 |
ClippingPlane | 用一个水平面对整栋楼做剖切 |
setTimeout | 按固定节奏推进楼层,便于观察 |
可以直接改的地方
| 位置 | 改什么 | 效果 |
|---|---|---|
floorCount = 8 | 改成 15 | 更高的楼 |
floorH = 4 | 改成 3 | 层高变化,整体变矮 |
setTimeout(next, 900) | 改成 200 | 楼层出现更快 |
palette | 换色 | 楼层配色 |
替代说明:官方示例加载 ion 上的 BIM 模型并用楼层元数据做过滤与剖切。
这里用盒体逐层搭建复现观感,show 与裁剪平面的用法可直接迁移到真实模型。