0

我试图用 IfcSlab 创建一个平屋顶。IfcRoof 应该由 IfcSlab 分解。我用 ShapeRepresentation 创建了板并给了它坐标。BuidlingSMART 是说,当楼板已经有了 ShapeRespresentation 时,我的屋顶不需要 ShapeRespresentation。但是当我运行我的应用程序并尝试在 Xplorer 中查看我的模型时,它显然不起作用。屋顶不存在,但是当我为屋顶创建自己的 ShapeRepresentation 时,它可以工作。

这就是我想用板创建屋顶的方式:

var aggregation = model.Instances.New<IfcRelAggregates>();
                aggregation.RelatingObject = slabRoof;
                aggregation.RelatedObjects.Add(roof);

有没有一种方法可以在没有额外的 ShapeRepresentation 的情况下创建这个屋顶,就像它在 buildingSMART 中所写的那样?

4

1 回答 1

0

您可能已经反转了聚合关系。对于IfcRelAggregatesRelatingObject边应指整体(即IfcRoof),RelatedObjects边应指部分(即IfcSlab)。如果你反其道而行之,观察者将找不到屋顶的任何具有几何形状的部分,并且什么也没有显示。

于 2021-07-25T05:31:51.357 回答