1、 动态创建组合场景
2、 加载后的楼层和建筑对齐
3、 预知未知加载场景的物体结构
对于一些大型的3D可视化场景,使用 CampusBuilder 直接制作会比较困难,直接加载也存在性能、加载时间等问题。
解决这个问题首先在CampusBuilder 中可以分成多个工程进行搭建,比如园区和所有建筑的外立面使用一个独立的工程进行搭建,每栋建筑的室内分别使用其他独立工程进行搭建。但是在搭建过程中需要注意每个工程里的物体命名必须保证唯一。
1、动态创建组合场景
例如,我按如下步骤来搭建3D可视化园区并开发应用。
1、搭建一个3D可视化园区,园区内有一个建筑,我会分成两个工程进行搭建,分别是“XX工业园区”、“XX工业园区-办公楼室内”。
2、分别导出各个工程,并同步到 ThingJS 平台;
3、在 ThingJS 先加载"XX工业园区",该园区中包含建筑,但该建筑只有外立面。
4、使用事件,可重新注册进入建筑的响应函数,事件回调内使用 app.create() ,动态加载“XX工业园区-办公楼室内”这个园区工程。
5、使用代码,获取“办公楼TMP”这个3D可视化园区物体的建筑,将其下的“办公楼楼层一”,“办公楼楼层二”,添加到本来只有外立面的“办公楼”对象身上。再将“XX工业园区-办公楼室内”和“办公楼TMP”这些临时对象删掉。