Contains IFC Entity relations which are specific for the IFC. The IFC Entities are represented by their GlobalId.
typedef struct { GS::HashTable<API_Guid, API_Guid> containmentTable; GS::HashTable<API_Guid, API_Guid> relFillsTable; GS::HashTable<API_Guid, API_Guid> relVoidsTable; GS::HashSet<GS::Pair<API_Guid, API_Guid>> assignmentTable; GS::HashTable<API_Guid, API_Guid> typeProductTable; } API_IFCRelationshipData
Members
- containmentTable
- IFC containment tree in “child->parent” format.
- relFillsTable
- Relationships between openings (Doors/Windows/Skylights) and IfcOpeningElements (voids).
- relVoidsTable
- Relationships between IfcOpeningElements (voids) and their parent IfcWall or IfcSlab.
- assignmentTable
- IFC Assigment links, IfcGroup, IfcZone, IfcSystem, IfcRelAssignsToGroup and IfcRelServicesBuildings.
- typeProductTable
- IFC Type Products tree.
Remarks
This structure is used in API_IFCDifferenceGeneratorState, ACAPI_MarkUp_ImportFromBCF and APIDo_SaveID.
The IFC containment tree (containmentTable
) is in “child -> parent” format. Example:
- IfcBuilding -> IfcProject
- IfcSite -> IfcBuilding
- IfcBuildingStorey -> IfcBuilding
- IfcWall -> IfcBuildingStorey
- IfcBuildingElementPart -> IfcWall.
The IFC assignmentTable set (assignmentTable
) is in “child -> parent” format. Example:
- IfcWall -> IfcRelAssignsToGroup
- IfcRelAssignsToGroup -> IfcGroup.
The IFC Type Products (typeProductTable
) is in “child -> parent” format. Example:
- IfcWall -> IfcWallType.
Requirements
- Version: API 23 or later
- Header: APIdefs_Goodies.h