to edit properties you can do it from the Project Setup > Property Set Templates (I think)
not sure it's possible to sort or reorder them
units? please explain, but in case you need quantities there is a specific set for that but need to see your elements first
about units:
I also included some screenshot from the LOI Tool BIMQ to showing the unit selection UI showing the two unit types I know of IFC has:
Datatypen and Einheitentypen (sorry for the german words - I dont know the tech translation so I kept it as it is in the UI).
Project Setup > Property Set Templates was a good tip ... although I dont understand yet the exact logic behind it but I guess I have to sleep over it :D
thanks a lot.
I opened your model, it's IFC4, since you work with railway track (me too) maybe IFC 4x3 could be better, there you have specific spatial elements (IfcRailway) and element classes like IfcCourse.BALLASTBED (your Oberbauschotter?) or IfcRail.RAIL for instance.
by using Blender Quantity Take off (QTO) engine you can easily get your quantities accordingly and compliant with IFC Qto, like
all sleepers (IfcTrackElement.SLEEPER) and rails are IfcBuildingElementProxy, they do not have a type, did you try to use Bonsai to model it?
The non-templated property sets use inference of what type the property based on what you put in the value field. By default it is IFCLABEL, if its an integer it's IFCINTEGER, a decimal is IFCREAL, and so on. Not sure it can infer all types, which is part of why it is better to use proper templates where you can select the exact type you want.
As far as I'm aware the units will be whatever the project is setup with:
@steverugi i think this is globally for the project, but I'd like to define it for every property seperatly. Like the example in the IfcOpenShell docs below ... but reading it to the end now I see that this function can't overide units for properties at the moment:
@steverugi said:
I opened your model, it's IFC4, since you work with railway track (me too) maybe IFC 4x3 could be better, there you have specific spatial elements (IfcRailway) and element classes like IfcCourse.BALLASTBED (your Oberbauschotter?) or IfcRail.RAIL for instance.
by using Blender Quantity Take off (QTO) engine you can easily get your quantities accordingly and compliant with IFC Qto, like
all sleepers (IfcTrackElement.SLEEPER) and rails are IfcBuildingElementProxy, they do not have a type, did you try to use Bonsai to model it?
IfcCourse.BALLASTBED = Oberbauschotter, yes
How did you change to IFC4x3?
Our engineers use ProVI, an addon for BricsCAD / Autocad. a very very very strong tool for rail infrastructure here in DACH region, BUT it lacks a huge part in openBIM features, like all is IfcBuildingElementProxy, no GUIDs (change with every export because it is highly parametric, no IfcElementAssembly,etc.), all data-editing must be done after IFC export. some use simpleBIM, Desite or other tools.
I am curious how far blender can be used to enhance these IFCs (or - my hidden agenda ;) - is to find out to what extend rail infrastructure can be done in Blender / Bonsai completely)
yes, that seems like it - we have similar situation - we plan to use IFC to hand over quadrillions of property data to our rail infrastructure maintenance system - and therefor we want to define as soon as possible in the process what unit_type and each property has.
thanks!
I am curious how far blender can be used to enhance these IFCs (or - my hidden agenda ;) - is to find out to what extend rail infrastructure can be done in Blender / Bonsai completely)
To the best of my knowledge as of now Bonsai cannot be used at the same level as, for instance, Civil3D for alignment and profile, generation of sections, volume calculation and so on, there is some ongoing development but it's a work in progress still.
If you need to get familiar with openBIM in your workflow my impression is that Bonsai is the best free open source tool available.
From the little I know about other software once you need to step out of their cage is a real pain, and quite expensive to use them in the first place.
I mainly use Bonsai to convert delivered 2D drawings of bridges, culverts, station buildings, canopies, etc to IFC4x3 models for quantity extraction, it works like a charm and I found it an excellent training ground to understand and implement IFC.
I know other railway people in a similar situation, we should team up :)
Comments
@FlorianWra
can you share your .ifc?
to edit properties you can do it from the Project Setup > Property Set Templates (I think)
not sure it's possible to sort or reorder them
units? please explain, but in case you need quantities there is a specific set for that but need to see your elements first
here the ifc - Test_04
about units:




I also included some screenshot from the LOI Tool BIMQ to showing the unit selection UI showing the two unit types I know of IFC has:
Datatypen and Einheitentypen (sorry for the german words - I dont know the tech translation so I kept it as it is in the UI).
I want to define that the new Property "Länge_RC2" is in IfcLengthMeasure and in m (Meter) not km or something else.
Project Setup > Property Set Templates was a good tip ... although I dont understand yet the exact logic behind it but I guess I have to sleep over it :D
thanks a lot.
wow, that tool really has potential!
I opened your model, it's IFC4, since you work with railway track (me too) maybe IFC 4x3 could be better, there you have specific spatial elements (IfcRailway) and element classes like IfcCourse.BALLASTBED (your Oberbauschotter?) or IfcRail.RAIL for instance.
by using Blender Quantity Take off (QTO) engine you can easily get your quantities accordingly and compliant with IFC Qto, like
all sleepers (IfcTrackElement.SLEEPER) and rails are IfcBuildingElementProxy, they do not have a type, did you try to use Bonsai to model it?
The non-templated property sets use inference of what type the property based on what you put in the value field. By default it is IFCLABEL, if its an integer it's IFCINTEGER, a decimal is IFCREAL, and so on. Not sure it can infer all types, which is part of why it is better to use proper templates where you can select the exact type you want.

As far as I'm aware the units will be whatever the project is setup with:
@Florian
I played a bit with your model, converted to IFC4x3, assigned classes and spatial elements
and extracted some quantities
I also used profiles for rail and sleeper creating their own IfcRailType/rail and IfcTrackElement/sleeper
7.88MB now vs original 42.9MB, I didn't use IfcElementAssembly.TRACKPANEL or array, it could have probably saved more space
are you looking for this function: https://docs.ifcopenshell.org/autoapi/ifcopenshell/api/unit/assign_unit/index.html
I think there is no UI in bonsai yet
I had the same question ... https://community.osarch.org/discussion/comment/25069#Comment_25069
@Rio
to set units? maybe this? (you need to turn on the rhombus/diamond on the right to make it default)
@steverugi i think this is globally for the project, but I'd like to define it for every property seperatly. Like the example in the IfcOpenShell docs below ... but reading it to the end now I see that this function can't overide units for properties at the moment:
IfcCourse.BALLASTBED = Oberbauschotter, yes
How did you change to IFC4x3?
Our engineers use ProVI, an addon for BricsCAD / Autocad. a very very very strong tool for rail infrastructure here in DACH region, BUT it lacks a huge part in openBIM features, like all is IfcBuildingElementProxy, no GUIDs (change with every export because it is highly parametric, no IfcElementAssembly,etc.), all data-editing must be done after IFC export. some use simpleBIM, Desite or other tools.
I am curious how far blender can be used to enhance these IFCs (or - my hidden agenda ;) - is to find out to what extend rail infrastructure can be done in Blender / Bonsai completely)
thanks for your reply!
yes, that seems like it - we have similar situation - we plan to use IFC to hand over quadrillions of property data to our rail infrastructure maintenance system - and therefor we want to define as soon as possible in the process what unit_type and each property has.
thanks!
@FlorianWra
to create a new IFC4X3 model:

to update an IFC4 model to IFC4X3:

To the best of my knowledge as of now Bonsai cannot be used at the same level as, for instance, Civil3D for alignment and profile, generation of sections, volume calculation and so on, there is some ongoing development but it's a work in progress still.
If you need to get familiar with openBIM in your workflow my impression is that Bonsai is the best free open source tool available.
From the little I know about other software once you need to step out of their cage is a real pain, and quite expensive to use them in the first place.
I mainly use Bonsai to convert delivered 2D drawings of bridges, culverts, station buildings, canopies, etc to IFC4x3 models for quantity extraction, it works like a charm and I found it an excellent training ground to understand and implement IFC.
I know other railway people in a similar situation, we should team up :)