我目前正在开展一个项目,以从存储在 Opensource BIMserver 中的 IFC 文件中获取所有详细信息,例如 IfcBuilding、IfcDistributionControlElement 等。使用 Java 客户端库,我设法获取了楼层列表并打印了它们的名称。
List<IfcBuildingStorey> storeys = model.getAllWithSubTypes(IfcBuildingStorey.class));
for (IfcBuildingStorey storey : storeys) {
System.out.println(storey.getName());
}
电流输出:
Level 1
Level 2
Level 3
Level 4
我想要的是每一层,例如第 2 层,获取位于该层的所有房间,然后以分层方式在这些房间内获取 IfcProduct 类型的所有实体,例如火灾探测器。
预期输出:
Level 2
Room 1: entity 1, entity 2, entity 3, entity 4
Room 2: entity 1, entity 2, entity 3, entity 4
Room 3: entity 1, entity 2, entity 3, entity 4