IfcApi
IfcLoader
IfcViewerApi

IfcApi.CreateIfcGuidToExpressIdMapping

简介

IfcApi是一个JavaScript库,用于将IFC(Industry Foundation Classes)文件解析为可用于Web或其他应用程序的格式。其中CreateIfcGuidToExpressIdMapping方法可用于创建IFC GUID(全球唯一标识符)到Express ID(IFC实体的唯一标识符)的映射表。

方法原型

IfcApi.CreateIfcGuidToExpressIdMapping(ifcData);

参数

  • ifcData:一个包含IFC数据的JavaScript对象。

参数介绍

ifcData

ifcData是一个JavaScript对象,其中包含IFC文件的所有数据,包括IFC实体和属性。

该对象的结构按照IFC文件的层次结构进行组织。每个IFC实体都是一个JavaScript对象,其中包括以下属性:

  • __ifcType:IFC实体的类型名称,例如"IfcWall"。
  • __guid:IFC实体的全局唯一标识符(GUID)。
  • 其他IFC实体属性:例如IFC实体的名称、描述、位置等。这些属性按照IFC表格中的顺序排列,使用其相应的属性名称。例如,如果IFC表格中对于"IfcWall"实体的第一个属性为"GlobalId",那么JavaScript对象中的属性名也为"GlobalId"。

示例代码

const ifcData = {
  "IfcProject": {
    "__ifcType": "IfcProject",
    "__guid": "1cL$dAA$f1wvucn_mcUiW8",
    "Name": "Project 01"
  },
  "IfcSite": {
    "__ifcType": "IfcSite",
    "__guid": "1cL$dAA$f1wvucn_rcUiW8",
    "Name": "Site 01"
  },
  "IfcBuilding": {
    "__ifcType": "IfcBuilding",
    "__guid": "1cL$dAA$f1wvucn_scUiW8",
    "Name": "Building 01"
  },
  // ...其他IFC实体
};

const guidToExpressIdMapping = IfcApi.CreateIfcGuidToExpressIdMapping(ifcData);
console.log(guidToExpressIdMapping);

上述代码创建了一个包含IFC数据的JavaScript对象,并使用CreateIfcGuidToExpressIdMapping方法将GUID和Express ID之间的映射表存储在guidToExpressIdMapping变量中,最后将其输出到控制台。输出结果应为:

{
  "1cL$dAA$f1wvucn_mcUiW8": "IfcProject",
  "1cL$dAA$f1wvucn_rcUiW8": "IfcSite",
  "1cL$dAA$f1wvucn_scUiW8": "IfcBuilding",
  // ...其他IFC实体和其对应的Express ID
}

该表格显示了每个IFC实体的GUID和其相应的Express ID。