diff --git a/packages/core/src/ifc/IfcRelationsIndexer/index.ts b/packages/core/src/ifc/IfcRelationsIndexer/index.ts index 057572512..1659c425f 100644 --- a/packages/core/src/ifc/IfcRelationsIndexer/index.ts +++ b/packages/core/src/ifc/IfcRelationsIndexer/index.ts @@ -76,6 +76,11 @@ export class IfcRelationsIndexer extends Component implements Disposable { "ConnectedTo", "ConnectedFrom", "ReferencedBy", + "Declares", + "HasContext", + "Controls", + "IsNestedBy", + "Nests", ]; private _ifcRels: IfcRelations = [ @@ -90,6 +95,9 @@ export class IfcRelationsIndexer extends Component implements Disposable { WEBIFC.IFCRELFLOWCONTROLELEMENTS, WEBIFC.IFCRELCONNECTSELEMENTS, WEBIFC.IFCRELASSIGNSTOPRODUCT, + WEBIFC.IFCRELDECLARES, + WEBIFC.IFCRELASSIGNSTOCONTROL, + WEBIFC.IFCRELNESTS, ]; constructor(components: Components) { diff --git a/packages/core/src/ifc/IfcRelationsIndexer/src/relToAttributesMap.ts b/packages/core/src/ifc/IfcRelationsIndexer/src/relToAttributesMap.ts index ced30f586..c435923a9 100644 --- a/packages/core/src/ifc/IfcRelationsIndexer/src/relToAttributesMap.ts +++ b/packages/core/src/ifc/IfcRelationsIndexer/src/relToAttributesMap.ts @@ -83,4 +83,25 @@ export const relToAttributesMap = new Map< forRelating: "ReferencedBy", }, ], + [ + WEBIFC.IFCRELDECLARES, + { + forRelated: "HasContext", + forRelating: "Declares", + }, + ], + [ + WEBIFC.IFCRELASSIGNSTOCONTROL, + { + forRelated: "HasAssignments", + forRelating: "Controls", + }, + ], + [ + WEBIFC.IFCRELNESTS, + { + forRelated: "Nests", + forRelating: "IsNestedBy", + }, + ], ]); diff --git a/packages/core/src/ifc/IfcRelationsIndexer/src/types.ts b/packages/core/src/ifc/IfcRelationsIndexer/src/types.ts index 34c3f4ff7..3a0e33ab6 100644 --- a/packages/core/src/ifc/IfcRelationsIndexer/src/types.ts +++ b/packages/core/src/ifc/IfcRelationsIndexer/src/types.ts @@ -29,6 +29,11 @@ export type InverseAttributes = [ "ConnectedTo", "ConnectedFrom", "ReferencedBy", + "Declares", + "HasContext", + "Controls", + "IsNestedBy", + "Nests", ]; export type InverseAttribute = InverseAttributes[number]; @@ -48,6 +53,9 @@ export type IfcRelations = [ typeof WEBIFC.IFCRELFLOWCONTROLELEMENTS, typeof WEBIFC.IFCRELCONNECTSELEMENTS, typeof WEBIFC.IFCRELASSIGNSTOPRODUCT, + typeof WEBIFC.IFCRELDECLARES, + typeof WEBIFC.IFCRELASSIGNSTOCONTROL, + typeof WEBIFC.IFCRELNESTS, ]; export type IfcRelation = IfcRelations[number];