FreeCAD BIM development news - October/November 2019

Hi all!

Here we are for (finally) another update about the development of BIM tools for FreeCAD.

First, I'm terribly sorry to have let you guys down last month. I basically didn't have a minute for FreeCAD during almost all this time (mountains of work plus other things you might hear about soon ), didn't want to write an update here without having enough content to share, etc... Sorry about that.

Funny that last year the exact same thing happened at the exact same time... Are we seeing a pattern?

Anyway, getting back to FreeCAD now, started working on a new FreeCAD project with OpeningDETAIL, the sister project we have with OpeningDesign, and, as always, working on a real job with FreeCAD is by far the best way to get a lot of bugs fixed and many new features into it.

Thanks a million to everyone of you who started supporting me or still supports me through Patreon or Liberapay even after I let you down last month My gratitude is immense, and will do my best to make for it!

The video

As I don't have too many exciting new features to share right now, I thought I'd make a video that I've wanted to do for some time, showing a bit of the general open-source-based BIM workflow I use here. Hope you'll like!

FreeCAD exporter for Blender

I've a first draft of a FreeCAD exporter for Blender working, that you can test by grabbing it here, saving it as a .py file and adding it as an addon in Blender 2.80+. You need FreeCAD installed on your machine too (with same Python version as Blender).

Basically, you select the objects you want to export, click File -> Export -> FreeCAD .FCStd file, and bam, you get a FreeCAD file where the Blender objects are Part shapes.

Of course it is already easy to export Blender models to FreeCAD, via OBJ or DAE (Collada) file formats. These import well into FreeCAD and if objects are well modelled in Blender they are easy to convert to solid shapes. But this is an extra operation, that is done directly within the exporter (it creates shapes from the mesh geometry, there is no conversion step). So it's much faster.

Don't expect miracles just yet, the exporter exports valid shapes, solid if the objects are closed and non-manifold, and joins coplanar facets into clean faces. There is already partial support for colors too (only objects with one single material or color at the moment)

The algorithm that extracts coplanar regions from a mesh is still awfully slow (something tells me there should be something in the Blender API to do that already, but couldn't find it..). So the exporter works reasonably fast for simple, flat objects, but still very slowly for a simple sphere, for example, where there are a lot of coplanar regions to sort out.

Anyway, this is a start, and it already works. The idea, once we have these corners ironed, is to expand it so cool Blender addons like Sverchok or Archipack could make use of it to directly produce FreeCAD files.

Default camera altitude

When you save a FreeCAD file, the view position is saved with the file, and next time you open it, you will be taken back to the saved view position. However, one annoying thing when working with BIM models in FreeCAD is when you start a new file. The camera is positioned at a few millimeters above the ground plane, which always forces you to zoom out to a better level.

Now, in the BIM Setup screen, you have an option to set the camera altitude to be used when creating new files.

Better IfcOpenShell detection and documentation

When trying to export or import a model to/from an IFC file, FreeCAD will now do a better job to tell you if anything is wrong with the underlying IfcOpenShell (a separate open-source project, which provides an interface to the IFC file format, that FreeCAD -and others- use to manipulate IFC files). It will redirect you to the documentation page which has also been extended to provide better information to obtain and install IfcOpenShell.

BCF support

In september ended the Google Summer of Code program, and FreeCAD got, from june to august, 4 students working full-time on FreeCAD, sponsored by Google, each of them developing a project on their own. From these 4, two worked on projects directly related to BIM: Suraj worked on extending the Rebar tool, and Patrick worked on implementing a BCF viewer.

Both these projects succeeded, and their resuls are available to you. The Rebar improvements have been merged into the Rebar addon, that you can install from the Addons manager in FreeCAD, and the BCF viewer is anew addon that you can install the same way.

BCF files are "companion" files for a BIM model, which can be saved in any format, being IFC or any other format such as Revit or FreeCAD. BCF files contain issues, that one would one to pinpoint on a model. With an issue one can add comments, screenshots, and mark them as solved. The idea is to pass the BCF file together with the model to other people who work on the project.

The BCF viewer of FreeCAD allows to open o create BCF files, review or create issues, add comments, view and add screenshots, etc, more or less all you expect from similar BCF applications available out there.

That's it for this month, sorry for the meagre contents, I'll do my best to make up for it next month!

Cheers

Yorik