问题描述
当我运行下面的代码以使用 Ifc4 文件和 Xbim.Ifc4 接口获取 ifcWindow 区域数量时,它运行良好。
但是,当我尝试在与 Ifc2x3 文件相同的架构上运行并使用 Xbim.Ifc2x3 接口时,它无法识别 RelatingPropertyDeFinition 属性并执行以下错误: error
谢谢
解决方法
xbim Toolkit 中的 IFC 2x3 模式实现实现了 IFC4 接口,以保持代码向后兼容并能够为两种模式编写一个代码库。但是 IFC4 没有实现 IFC2x3 接口。 public Progression(Digit digit) {
this.digit = digit;
int n = digit.getNumber();
this.numbers = LongStream.iterate(n,current -> current * 10 + n)
.limit(digit.getTimes()).boxed()
.collect(Collectors.toList());
}
是 IFC4 中的新增功能,因此您必须重新构建代码。但我想,如果您使用 IFC2x3 接口,它将仅适用于 IFC2x3 文件。如果您使用 IFC4 接口,它将适用于两种模式版本。事实上,我们计划将来永远只有一套接口,以避免混淆。