Aligning the FreeCAD UI with IFC nomenclature

This forum section is only for IFC-related issues
User avatar
Posts: 37
Joined: Sat Jan 05, 2019 11:46 am

Aligning the FreeCAD UI with IFC nomenclature

Postby Moult » Sat Jan 12, 2019 11:17 pm

I am curious what the community's stance is on making FreeCAD let IFC take the lead on how to think about buildings. I'll give a few examples, and please let me know if I have missed something as I am brand new to FreeCAD:

- In FreeCAD, you create a slab by creating a Structure object. In IFC, you create an IfcSlab object. Should we therefore have a button specifically which creates an IfcSlab?
- In FreeCAD, you create a roof by creating a Roof object. In IFC, a roof is a type of IfcSlab, namely IfcSlab.ROOF. Should we therefore aim to eliminate the Roof FreeCAD button? From a cursory look, the UI inconsistently refers to IfcSlab as the "Ifc Role" (which is misleading as there is such as thing as an IfcRole), as well as an "Ifc type" (in the BIM workbench export settings) which is also misleading as it should be called perhaps something like IFC Product (e.g. IfcSlab) + Ifc Type (e.g. ROOF enum).
- In FreeCAD, a you have a Levels manager. In IFC, they are referred to as IfcBuildingStorey. Should we adopt their nomenclature and call it a "Building storey" in the UI?

Personally, I believe if we want FreeCAD to be the most compliant IFC program out there, we should start adopting IFC's uh, "world view"? Of course, this doesn't mean creating a separate button to each of the many IfcElements out there, because that would make an unusable UI (personally, I find the huge dropdown menu in the Ifc Role property quite hard to navigate). I am also aware that any shape can be any IFC object, so perhaps the UI should be structured around creating different shapes, and then a separate UI for classifying them into different IFC Products which will then preload the appropriate property sets.

Just wondering what the community feel was on this? Do you keep FreeCAD as its own thing, and then treat IFC purely as an export, or do we want to treat IFC as a native and start adopting their logic where it makes sense?
I also blog about 3D rendering, architecture, software and other on RSS / Atom feed available for your convenience.
User avatar
Site Admin
Posts: 10469
Joined: Tue Feb 17, 2009 9:16 pm
Location: São Paulo, Brazil

Re: Aligning the FreeCAD UI with IFC nomenclature

Postby yorik » Mon Jan 14, 2019 3:04 pm

Personally I am quite opposed to "reflecting" the IFC structure in FreeCAD. The idea in FreeCAD is freedom, that you bascially be able to model anything you want, the way you want, and the idea behind IFC is strictness, that everything must happen in a very defined structure. The fact that in FreeCAD we have, for example, one structural object, that can be a beam, a column, a slab, or anything else, as opposed to separate objects in IFC is a good illustration. In IFC, you don't turn a beam into a column. In FreeCAD, you can.

This is something precious to me, that you can build your own nomenclature and building structure. And there are things I really don't like in IFC (and very likely directly inspired by autodesk software), for example all objects must be part of a building storey, that it would be a pity to limit FreeCAD with.

Now I agree with you that there are many inconsistencies that could easily be solved. Ex, Ifc Role could/should be renamed to Ifc Type. Levels could indeed be called storeys, and many other things like that.