3 weeks ago
- last edited
3 weeks ago
by
Laszlo Nagy
Roofs and slabs can be set as Load Bearing in Archicad. You can classify both as a Roof to be exported as an IfcRoof.
But when exporting a Roof to IFC, Archicad does not provide the "LoadBearing" property inside Pset_RoofCommon.
This is visible in the IFC Property mapping interface.
It is however part of the IFC4 official Roof property set by buildingSMART.
https://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2_TC1/HTML/link/pset_roofcommon.htm
I tried adding the property and a mapping rule in the IFC Translator.
This effectively creates the property, but it's set to False (even though the Structural Function is Load-Bearing).
Do I need to set up an expression for this?
3 weeks ago
- last edited
3 weeks ago
by
Laszlo Nagy
After some more testing, I set up a custom expression, which assigns True or False based on the Structural Function. And in the IFC Translator, I map this custom property to Pset_RoofCommon.LoadBearing.
That seems to work, but it's a bit of an ugly hack. However, this method may come in handy for other edge cases as well.
2 weeks ago
Interesting, I just checked in Archicad 28 INT, and the "LoadBearing" IFC Property is there under IfcRoof in IFC 4. However, it is not there in IFC 2x3.
By the way, I think the reason it could not properly map the value of the "Structural Function" parameter is that it has a "Text" Data Type, not Boolean like the "LoadBearing" IFC Property. This is why creating an Expression-based Property with a "Boolean" Data Type worked, because then, when you mapped the value of a Boolean Property to a Boolean IFC Property, Archicad could evaluate the value, and it could properly transfer it to the IFC Property.