Blender now supports IFC export

This forum section is only for IFC-related issues
User avatar
bitacovir
Veteran
Posts: 1570
Joined: Sat Apr 19, 2014 6:23 am
Contact:

Re: Blender now supports IFC export

Post by bitacovir »

Great work, @Moult!!!
::bitacovir::
==================
One must be absolutely modern.
Arthur Rimbaud (A Season in Hell -1873)

Canal Youtube Grupo Telegram de FreeCAD Español

My personal web site
My GitHub repository
Mini Airflow Tunnel Project
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: Blender now supports IFC export

Post by triplus »

Nice!
User avatar
bitacovir
Veteran
Posts: 1570
Joined: Sat Apr 19, 2014 6:23 am
Contact:

Re: Blender now supports IFC export

Post by bitacovir »

Moult wrote: Mon Oct 14, 2019 8:20 pm More new features!
I am testing this great add/on. Here some preliminary feedback.
If you change the scale of a object in Object Mode (blender) the exported IFC file does not save this change.
You must Apply Scale previously: Select - Crtl+A - Scale (to set XYZ scale to 1.00)
Object Mode -scale transformation (noApply Scale)
Object Mode -scale transformation (noApply Scale)
blender_423sZxnRx0.png (382.08 KiB) Viewed 2509 times
exported IFC file
exported IFC file
SimpleViewerExampleQt_V2N4KFwZXu.png (46.88 KiB) Viewed 2509 times
::bitacovir::
==================
One must be absolutely modern.
Arthur Rimbaud (A Season in Hell -1873)

Canal Youtube Grupo Telegram de FreeCAD Español

My personal web site
My GitHub repository
Mini Airflow Tunnel Project
User avatar
Moult
Posts: 321
Joined: Sat Jan 05, 2019 11:46 am
Contact:

Re: Blender now supports IFC export

Post by Moult »

bitacovir wrote: Tue Nov 19, 2019 5:48 pm If you change the scale of a object in Object Mode (blender) the exported IFC file does not save this change.
You must Apply Scale previously: Select - Crtl+A - Scale (to set XYZ scale to 1.00)
Thanks! This was fixed 3 days ago (IFC scaling is very weird) https://github.com/IfcOpenShell/IfcOpen ... 3dc3820936 and the fix will be available in the next build (or, you can just replace the python files live from the repo - keep in mind that the plugin name changed too)

Would love to hear more feedback!
I also blog about 3D rendering, architecture, software and other on thinkMoult.com. RSS / Atom feed available for your convenience.
User avatar
bitacovir
Veteran
Posts: 1570
Joined: Sat Apr 19, 2014 6:23 am
Contact:

Re: Blender now supports IFC export

Post by bitacovir »

Moult wrote: Tue Nov 19, 2019 8:06 pm
Would love to hear more feedback!
Here some more...
1) Archipack uses Modifiers, but you must apply these Modifiers before exporting a IFC file.
2) In Scene - Building Information Modeling panel, the "Select IFC Class" button works fine, but "Select IFC Type" doesn't highlight anything.

I want to provide more feedback but I don't know how to use the rest of features. What is Property Sets? How to use Aggregattes?
A more complete tutorial would be good.

I am using blender28-bim-191108-win.zip
::bitacovir::
==================
One must be absolutely modern.
Arthur Rimbaud (A Season in Hell -1873)

Canal Youtube Grupo Telegram de FreeCAD Español

My personal web site
My GitHub repository
Mini Airflow Tunnel Project
User avatar
Moult
Posts: 321
Joined: Sat Jan 05, 2019 11:46 am
Contact:

Re: Blender now supports IFC export

Post by Moult »

bitacovir wrote: Wed Nov 20, 2019 12:13 pm 1) Archipack uses Modifiers, but you must apply these Modifiers before exporting a IFC file.
2) In Scene - Building Information Modeling panel, the "Select IFC Class" button works fine, but "Select IFC Type" doesn't highlight anything.
Select IFC type fixed in https://github.com/IfcOpenShell/IfcOpen ... 81320eff69

A new build was released which fixes both your issues :)

Archipack uses a model structure that has a few issues to translate directly into an IFC at the moment. I am working with Stephen Leger, the creator of Archipack to fix these. He has already built updates into Archipack to allow BlenderBIM to work with Archipack objects, but I don't know if he has published these updates yet or whether you have access to them :) But yes, we are working on this! Stephen recently helped write a bunch of code for BlenderBIM and also helped implement opening elements (for doors and windows)!

You are absolutely right, a tutorial is _really_ needed. I will create one soon, but first I have cleaned up the website: https://blenderbim.org/

As a start, I made this tutorial: https://blenderbim.org/install-blenderbim.html - it's not useful for you, since you have already installed BlenderBIM, but it's a start for me :) I will make more and keep you posted!
I also blog about 3D rendering, architecture, software and other on thinkMoult.com. RSS / Atom feed available for your convenience.
stephen-l
Posts: 2
Joined: Sun May 14, 2017 1:19 pm

Re: Blender now supports IFC export

Post by stephen-l »

Hi,
Yes i'm working on archipack's side to be able to export ifc through blenderBIM.
Building an extended exporter using blenderBIM code under the hood to pre-process archipack's geometry and manage booleans automatically - so code logic for the exporter is not spread into both addons.

This will probably allow kind of incremental dynamic export through json, providing an archipack to freecad pipeline.

At this time it is possible to export without any scene change other than strictly required by blenderBIM.
Operators to automatically create naming convention and collection structure are available in current release.

All changes done will be available in next release (release once a month usually).
User avatar
bitacovir
Veteran
Posts: 1570
Joined: Sat Apr 19, 2014 6:23 am
Contact:

Re: Blender now supports IFC export

Post by bitacovir »

Moult wrote: Thu Nov 21, 2019 12:09 pm A new build was released which fixes both your issues
I just tested it in Windows 10 Blender 2.81 and is working fine. Well done.
stephen-l wrote: Thu Nov 21, 2019 9:28 pm Hi,
Yes i'm working on archipack's side to be able to export ifc through blenderBIM.
Great addon this archipack. Congratulations.
::bitacovir::
==================
One must be absolutely modern.
Arthur Rimbaud (A Season in Hell -1873)

Canal Youtube Grupo Telegram de FreeCAD Español

My personal web site
My GitHub repository
Mini Airflow Tunnel Project
User avatar
Moult
Posts: 321
Joined: Sat Jan 05, 2019 11:46 am
Contact:

Re: Blender now supports IFC export

Post by Moult »

First things first ... new Blender version 2.81 has been released! See the changelog. This one focused a lot on improved sculping tools. The retopo tools are really important to bring in scanned geometry into high quality meshes. The built-in bulk rename is nice, although it already existed as an add-on for a while, and the improved snapping is great. Faster renders and improved denoising is awesome!

Update time!

- Bugfix for IFC locations of objects which have a parent relationship or constraints in Blender
- Plugin renamed to BlenderBIM
- Version number now shows on the add-on
- Objects can now be arbitrarily scaled in any axis
- Under the hood code clean-up and PEP8 improvements
- You can now specify an IFC Diff and do an incremental import. No need to reimport an entire file, just import the things which have changed!
- Bugfix for BIMTester to prevent overwriting existing feature files
- Optimisation for the "select audited elements" function. Much faster.
- Add support for element voids and fill elements relationship. You can now properly do doors in walls and stuff like that.
- Bugfix for IFC "select by type" function which wasn't working.
- Implement support for IFC library (not project library, which already existed - this new feature lets you specify if your project is on a BIM server, such as Git)
- A couple new sentences added to the BIMTester vocabulary to mark elements as exempt from testing
- Bugfix when shape representations are reused in their mapped item entity.
- Support for parametric mirroring of geometry (aka the mirror modifier in Blender) to export out to IFC - it can halve your modeling time and export filesizes for symmetrical portions of your building!
- New dropdown for audit class in the audit panel, instead of having to navigate to other panels to approve or reject IFC classes.

Also - brand new BlenderBIM.org website design! Cleaner layout, mobile friendly.

https://blenderbim.org/

Now comes with new tutorial articles on:

- How to install BlenderBIM
- BlenderBIM beginners tutorial - my first BIM project

Also started a new series of articles to help upskill people on OpenBIM:

- Why bother providing an OpenBIM model
- Why types of BIM data are there?
- The importance of the IFC GlobalId attribute

Related tools like Archipack also now have the ability to split and merge walls:

https://twitter.com/pitiwazou/status/11 ... 9214527488
I also blog about 3D rendering, architecture, software and other on thinkMoult.com. RSS / Atom feed available for your convenience.
User avatar
Moult
Posts: 321
Joined: Sat Jan 05, 2019 11:46 am
Contact:

Re: Blender now supports IFC export

Post by Moult »

Just a cross-post about a new BlenderBIM update folks here could be interested in. Please view the original thread for more pictures: https://forums.buildingsmart.org/t/pres ... ol/1791/65
docexample.PNG
docexample.PNG (225.69 KiB) Viewed 2161 times
- Imports now support styled item colours, and differentiates between material surface colours and object surface colours
- Support a "material passport", essentially you store externally defined surface styles, and Blender can detect if any Cycles or Eevee shaders exist in it, and will load them. This allows for IFC models with complex textures and materials for CG renderings. No other BIM program can do this.
- New IFC Clash utility, to perform clash detection, with a specified dimensional tolerance. This data can be exported into JSON so you can visualise clash results and analyse them. Clash detection is done directly on the IFC so you can run it on your BIM server. Can run from command line. This replicates functionality from Navisworks or Solibri.
- You can proxy one shape for another using associated documents. If you associate another mesh object, Blender can replace the IFC shape representation with another Blender native file format. This way you can have low-fidelity models in the IFC file but retain higher polygon models elsewhere.
- Import now supports document associations
- New UI to choose exactly what geometric representation contexts to export.
- IFC diff utility can now run from command line input so that it is easier to run from a BIM server.
- New support for construction documentation. More on this below.
- Bunch of under the hood fixes with IfcOpenShell thanks to @aothms and other IfcOpenShell contributors like AdriScho and mieszk

I wanted to highlight one of the most important changes in this release is the ability to do construction documentation. A BIM model is only half the story, documentation is the "map" to help navigate your way through the data and direct your attention to portions of interest in the BIM model. So having open-data standards for OpenBIM is not enough, we need to have open-data standards for documentation.

This documentation is generated (i.e. section cut) from the IFC file directly (so you can headlessly publish it on your BIM sever!) and supports any direction of cut (plan, section, RCP, elevation), with clipping plane options and your typical slew of annotative objects. All sheets and output is in SVG, as it is an open-standard for vector data with wide support, and there is no viewer for the IFC annotation objects. Managing views on sheets is done with Inkscape, another free and open source vector tool. A standard web browser can view the output too. The technical lettering font is also completely open-source thanks to the LibreCAD community who has a nice collection.

We are currently using a 100% free and open-source pipeline to perform certain jobs on live commercial projects. The IFC file is used as a native format, Git is used for versioning, and construction documentation is also 100% open-source.

If you'd like a copy of the PDF to see the full scale output please send me a message.

The output supports dimension strings (rotated and orthogonal), text with multiline and different alignment supports, section and plan level annotations, and different hatching styles, line thicknesses, leader markers (e.g. architectural tick dimensions v.s. engineering arrow dimensions), grids (from IfcGrid) and so on. I've set a bunch of presets to get people started with typical 2.5, 3.5mm 5mm, etc sizes that are standards in Australia. Dimensions are all calculated based on the model. This documentation is also semantic, as it includes SVG classes, so all annotation styles are applied at run-time using CSS, so you can re-use the same plan multiple times and turn on and off visibility or change the display for different users. It can also therefore be interactively queried on a web-browser.

The model is detailed to fabrication level and and have manipulations such as unfolding to create the steel lasercut net as shown at the bottom right of the sheet.

Annotation can be viewed in 3D - there are plans to store this in the IFC file too - but it may prove a little tricky since a lot of IFC entities related to annotation were removed by buildingSMART. It would be good to discuss options to restore some of these.

Sheet revisions are picked up from the active Git repository - so it would tag the current HEAD^ location of the version control system that forms the backbone of your BIM server using Git. No more manual versioning.

Many thanks to Thomas Paviot and Martin Siggel who are supporting Python-OCC which helps makes all this possible.

Oh, also, with BlenderBIM we can integrate with OpenStreetMaps GIS data to get an IFC output from the City of Sydney. Here it is viewed in XBim, taken originally from BlenderGIS add-on. There are roads, but they are coplanar with the ground, so you can't really see them clearly since XBim doesn't render it that way.
I also blog about 3D rendering, architecture, software and other on thinkMoult.com. RSS / Atom feed available for your convenience.
Post Reply