"C" profiles
Hello everyone.
I'm having trouble importing the ifc from sap2000 into bonsai. The elements with a "C" type profile don't appear correctly. Apparently the problem must be with the IFCCSHAPEPROFILEDEF function. Does anyone know how to solve it?
Thanks!
Tagged:
Comments
Can you upload a stripped down, or parred down .ifc file that exhibits the problem?
Ok. Thank you for your attention.
In the image, as you can see, the elements with "C" profiles only appear as lines.
The ifc is attached.
@Guioliveira Hi! You can run validation on IFC file - those profiles are invalid, see https://wiki.osarch.org/index.php?title=BlenderBIM_Add-on/BlenderBIM_Add-on_FAQ#How_to_validate_IFC_file_for_issues_.3F
And what to do in case those profiles (and a bunch of other stuff) are invalid. I have a ton of issues apparently with the IFC model of mine displayed in the System Console, so what's normally the course of action?
Best course of action is to identify why it got invalid in the first place and fix the root cause. Otherwise you'll need to fix the file yourself - either by editing it manually or using some other tool, depends on the issues.
It looks like the model was created from SAP2000, have you tried reaching out to their support and report a bug?
The Ground Floor at some point got messed up when I was working on the other storeys. All the Ground Floor Objects somehow moved to the Ground Floor's IfcBuildingStorey empty's object location and rotated to face the global X axis. As I had the .ifc file saved in OneDrive I managed to recover to an earlier version with Ground Floor being intact and merged (Patch -> MergeProject) this .ifc file with the one I had with the updated upper storeys. This merge messed up IfcSystem, and other Ifc object unique identifiers, so now I have a bunch of duplicates.


But back to the C-Profiles.
I generated my C-Profiles with IfcCShapeProfileDef, but in the preview it already looked corrupt/mangled.
Anyways I assigned it to the IfcBeam and initially it looked fine, but once I reopened the .ifc file in question all the IfcBeam assigned this IfcCShapeProfileDef profile reverted to simple stick paths edges.
So I remade the profile with IfcArbitraryClosedProfileDef and now it works fine.
From what I observed this IfcCShapeProfileDef mangling occurs for small C-Profiles, mine is:
Depth: 45 mm
Width: 40 mm
WallThickness: 1 mm
Girth: 7 mm
InternalFilletRadius: 1 mm
Hi @Andrej730!

Thanks for your help.
In this case, the C profiles are invalid for the Bonsai. In USBIM I can see C profiles normally.
Hi @Moult!
I haven't sent the issue to sap2000 support yet, but I will do so.
Hi @Armatura
Thanks for your help.
I'll do the same thing you did. I'll create new profiles with fcArbitraryClosedProfileDef for this project. And I will study the problem further.
But they're invalid in IFC in general, not just for Bonsai - they're using 0 values for attributes that suppose to have only positive numbers (IfcPositiveLengthMeasure).
@Andrej730
Yes, this is one of the problems that I will discuss with SAP2000 support, because for "U" type profiles, IFC is presenting the "IfcCShapeProfileDef" function with zero "lip" instead of using the "IFCUSHAPEPROFILEDEF" function.
But this problem is in the SAP2000 modeler, because it does not have the "U" profile for cold formed profiles.
@Andrej730
Completing...
This new attached ifc only has "C" profiles and the display problem is the same. Note that no errors occurred in Debug.
Kind of similar issue to https://github.com/IfcOpenShell/IfcOpenShell/issues/5824 - usually Bonsai prioritizes Model/Body/MODEL_VIEW representation but in case of this model there are no bdetailed subcontexts and all representations are just assigned to Model context and Bonsai loads whatever comes first.

Currently as a workaround you can switch representation to sweptsolid manually.
Yeah that's another problem to discuss with SAP2000 - basically they are not correctly assigning geometric contexts. I believe in the work being done in the validator it'll soon be reporting this as invalid too (i.e. assigning to context directly, as well as having multiple representations in the same context).
There isn't anything to fix in Bonsai in this case, what happens is just luck of the draw.