FreeCAD BIM update 17

Here is what I did with FreeCAD, BIM and NativeIFC this week!

screenshot of UI improvements in the BIM workbench

BIM views dialog improvements

We got a nice pull request earlier this week that adds several improvements to the BIM Views tool: Buildings, levels and working plane proxies now appear stacked, and you can directly edit their level there.

I added a few more things after that: The dialog is now dockable together with the other FreeCAD dock widgets like the tree or task views, and will remember where you docked it last time, so it reappears at the same place next time you open FreeCAD. I'm growing fond of having a "BIM" panel there, there is certainly much more that we can do there. But the idea generally is to have a kind of "simplified" view of the tree, where it's easy to see which level is the active container, where your next objects will be located.

I also added support for NativeIFC objects there (commit pending), and bettered the display of icons in the BIM Views toolbar.


BIM status bar tools UI improvements

The BIM tool buttons in the status bar have also been reworked so they look smaller and nicer and show on/off status. I also added extended the system so NativeIFC buttons can be added.


Lock system

The main thing I've been working on, though, is the forthcoming lock system of the NativeIFC module. It is basically ready, but I'm waiting for a pending commit against the main FreeCAD repo to publish the new NativeIFC code. So you'll have to wait a few more days to test.

Basically the idea here is that the whole question of working with IFC objects only (locked), or allowing other FreeCAD, non-IFC objects (unlocked), should be transparent and unobtrusive. In most cases, this is set automatically for you, for example when you open an IFC file you are always in locked mode (IFC objects only), and when you start a normal FreeCAD file you are not locked (unless you set in the preferences that you want to always start in locked mode).

But you have a "lock" button in the status bar, that indicate if your file is currently locked or not, and you can always, at any time, lock or unlock the current file.

I'm quite happy with the tool, it is simple and intuitive, it works, and locking/unlocking is undoable. I like both modes, I usually like a lot to have all kinds of non-BIM stuff in my FreeCAD files together with the BIM model, that's IMHO a strength of FreeCAD, but when working in locked mode, you literally turn FreeCAD into a "straight" IFC editor with all the data and only the data.

One little corner case is still not covered by this tool, which is if you want to turn part of your FreeCAD file into a NativeIFC object. That is easy enough to do by exporting something and reinserting the IFC file, but we could think of a more steamlined way.

With the lock system complete, we are close to finishing the first chapter of our new roadmap.

That's it for this week! Next week we should have the lock tool ready and I'll explain more of how it works. As usual, thank you to everybody who sponsors this effort on Patreon, LiberaPay or GitHub!