IfcApi
IfcLoader
IfcViewerApi

IfcLoader.createSubset

此方法用于从IFC模型中创建一个特定的子集。可以根据需要,选择不同的子集并使用它们进行可视化。

方法原型:

createSubset(ifcModel, subsetType, options);

参数介绍:

  • ifcModel: Required。 如果cif模型是通过IfcLoader.load方法加载的,则必须将其传递给此方法。
  • subsetType: Required。 表示要创建的子集类型的字符串。 目前支持以下类型:'floors','walls','windows','doors','beams','columns'和'all'。 'all'表示IFC模型的完整数据集。
  • options: Optional。 此参数是一个对象,其中包含用于创建子集的选项。 可以包含以下属性:
    • id: 如果提供了此选项,则返回的对象将具有此ID。
    • constructionId: 只选择而不是属性助理元素的'constructionId'(建筑ID)。
    • elevation: 如果为“true”,则每个对象将具有其全局高程组件的属性,该属性是其位置向量的第三个分量(默认值为false)。
    • exclude: 要排除的IFC对象的ID列表。

示例代码:

以下是创建IFC模型中所有类型为“walls”的子集,并将其从IfcLoader返回的对象中返回的示例代码。

var options = {
    exclude: ['3nB00jjv14mRXnW80ujKBs', '7A$DsvgJn8yyAo2QHheZL7']
};

var wallsSubset = IfcLoader.createSubset(ifcModel, 'walls', options);