New website looks great! Everything else Incredible!
@Moult just fyi, this page doesn't tell you what version you are downloading:
New website looks great! Everything else Incredible!
@Moult just fyi, this page doesn't tell you what version you are downloading:
@Ace good point! Fixed.
BlenderBIM Add-on v0.0.230107 has been released with 201 new features and fixes. It's our built environment, help support the BlenderBIM Add-on: 100% free and open source software that lets you author and document BIM data fully to ISO standards. It's built by the AEC community, for the AEC community. Get it today: https://blenderbim.org/
Release base rabbit image AI-generated by Farfadet46.
Warning, this release is primarily aimed at developers, with not many user-facing changes but lots of software upgrades, experimental code, and documentation. As usual, the BlenderBIM Add-on is alpha software, but this release may be significantly more alpha than usual.
Thanks to the incredible work by Martina Jakubowska in the Google Summer of Code programme 2022, we now have a prototype implementation of IfcSverchok. Buildings modeled using visual Sverchok nodes can now be converted parametrically into IFC models. Like the rest of the BlenderBIM Add-on, IfcSverchok is a native IFC visual node programming environment. 15 basic nodes have been implemented so far, ranging from creating entities, adding properties, converting Sverchok geometry, converting Blender geometry, and filtering by type.
In addition, there is now experimental Sverchok integration for parametric IFC element. Any IFC element can now be defined via a Sverchok graph and modified parametrically across IFC round trips.
The BCF library has been rewritten almost completely from scratch by Andrea Ghensi (sanzoghenzo). This new library has significantly improved performance and can be used to create much larger BCF topic collections. Unfortunately, these have not yet been implemented in end-user utilities like the BlenderBIM Add-on or IfcClash so users wishing to use those functions should use an older version as breakage will occur.
Major bugs with Asta PowerProject imports have been resolved. A huge amount of work by Yassine Oualid means you can also now easily select nested task outputs, display number of resources used by a task, display scheduled resource usage within the resource tree, and see total task assignments for elements. You can also now customise 4D animation colours, and add a visual task bar with customised colours.
The existing stair generator can now be used to modify IFC stair flights, and also now supports individual stair treads (such as for steel or wood stairs) instead of monolithic concrete stairs. The results are parametric and can be regenerated after an IFC round-trip.
Cold rolled Australian Cees and Zeds have now been added to the steel library. In addition, 150 new furniture have been added based on Australian and metric Neufert dimensions, such as beds, tables, chairs, sofas, sanitary fixtures, and more.
For developers, a new ShapeBuilder class makes it easy to programmatically generate IFC representations made out of 2D profiles and 3D extrusions.
Almost an entire book's worth of documentation has been written for the hundreds of functions for the IfcOpenShell API. Documentation is incredibly detailed, featuring well commented code examples dealing with real life design and construction situations. For any developer new to Python, IfcOpenShell, or IFC, this is a critical resource to help you pick up the skills you need. Check out the IfcOpenShell API docs in particular.
Thanks to work by core developer Thomas Krijnen, IfcOpenShell can now be combined with Pyodide to be used on the web. When you build IFC web applications with IfcOpenShell, you benefit from the decades of careful battle testing and extensive native IFC authoring API support provided by IfcOpenShell-Python. Proof of concepts have been released for native authoring of point-and-click IFC walls right in your browser. See the code.
Continuing on the quantity take off function lists from the last release, Massimo Fabbro has been hard at work mapping many quantity take off definitions to these functions. IfcOpenShell is now also available for Python 3.11. IFC validation now also supports express rule checking, which means that it is now even easier to guarantee high quality valid IFC models. Derived attributes are now supported in IfcOpenShell. Thanks to Cyril Waechter, IfcPatch now works with IFCZIP and IFCXML, various fixes for energy boundaries, and a stable AUR package is now available for Arch Linux.
The consolidated branding and fundraising drive between the IfcOpenShell and BlenderBIM Add-on websites have helped raise enough funds to allow for continuous funding of part time development for the entirety of 2023.
A huge thanks to the growing volume of new contributors who are joining the team and changing the industry. You can too!
All changes can view the directly via the Git logs here:
https://github.com/IfcOpenShell/IfcOpenShell/commits/v0.7.0?since=2022-11-05&until=2023-01-07
Credits for this release (in order of commits via git shortlog -sn --since "2022-11-06"
):
66 Dion Moult
33 Martyna Jakubowska
23 Thomas Krijnen
19 CyrilWaechter
18 Sigma Dimensions
16 Massimo Fabbro
14 Andrej730
5 Ryan Schultz
2 Kristoffer Andersen
1 Andrea Ghensi
1 Erik Abrahamsson
1 Otso Alho
1 Vukas Pajic
1 fbpyr
A few notes from current usage of latest BlenderBIM. Any explanations and tips would be appreciated.
First, a suggestion: Hitting Ctl+S in Blender on a file on which an IFC file has been loaded should bring up a pop-up prompting that you have an associated IFC file loaded with the file and if asking you would like to save that too. Click OK and both the Blender file and the IFC file get saved.
I've had it happen to me where all the furniture elements I had placed on a plan were indicting 'IFC element not found' and were not appearing in the generated 2d drawings, after I had closed and re-opened the file. I had to unlink and re-assign the IFC classes to each furniture element before they showed up in the generated drawing in inkscape again. Any idea what could have broken the initial link? What to avoid? I'll cry if it happens on a bigger file and I have to unlink and relink every single bit of annotation.
I'm having an occurrence where if I move a window out of a wall, generate a 2d drawing and then undo the move, the displaced window will stay displaced in the generated 2d drawing, even after saving both Blender and IFC files, like a ghost that won't go away. Regenerating the wall or window does not fix it. Also regeneration does not heal a wall after deleting a window from it (throws an error- 'runtime error: #3,598 not found'). Would like to understand the best way to handle repositioning elements in walls based on this experience.
How to manage scale of text and arrows in dimensions lines?
Thanks!
@DADA_universe - just a quick check, you're aware that the IFC is the native model, right? So saving the Blend file without saving the IFC will cause breakage like you've described in point 2. Otherwise, it's a bug.
In general, I'm very unhappy with the stability of the drawing system right now, and it needs a huge amount of work still done on it. Unfortunately the only advice I can give is "wait a bit, or test using simple examples and provide bugreports" :( sorry.
@Moult said:
@DADA_universe - just a quick check, you're aware that the IFC is the native model, right? So saving the Blend file without saving the IFC will cause breakage like you've described in point 2. Otherwise, it's a bug.
Yes I'm aware to save the IFC. Unfortunately I can't say what else I could have done that caused the issue. I guess I'll use it some more and see.
In general, I'm very unhappy with the stability of the drawing system right now, and it needs a huge amount of work still done on it. Unfortunately the only advice I can give is "wait a bit, or test using simple examples and provide bugreports" :( sorry.
Noted and perfectly understood. Great work so far. I'll tinker some more and offer feedback or bug reports where I can.
@DADA_universe said:
- I've had it happen to me where all the furniture elements I had placed on a plan were indicting 'IFC element not found' and were not appearing in the generated 2d drawings, after I had closed and re-opened the file. I had to unlink and re-assign the IFC classes to each furniture element before they showed up in the generated drawing in inkscape again. Any idea what could have broken the initial link? What to avoid? I'll cry if it happens on a bigger file and I have to unlink and relink every single bit of annotation.
I think for this you can hit update representation in the object data properties and it might fix that issue
- I'm having an occurrence where if I move a window out of a wall, generate a 2d drawing and then undo the move, the displaced window will stay displaced in the generated 2d drawing, even after saving both Blender and IFC files, like a ghost that won't go away. Regenerating the wall or window does not fix it. Also regeneration does not heal a wall after deleting a window from it (throws an error- 'runtime error: #3,598 not found'). Would like to understand the best way to handle repositioning elements in walls based on this experience.
For 3d I am not sure but in 2d again it could be you need to 'update representation' otherwise you might have duplicate representations, in which case you might need to delete them, they could be found here (select object/object properties/IfcGeometry/IfcRepresentations:
- How to manage scale of text and arrows in dimensions lines?
This is currently done in CSS, I am making a video about how to manage this and lineweights, should be out soon :)
Thanks @Ace
None of those suggestions fix the issue in this particular instance, though it's useful to know about them. It seems the coordination between BIM data and its representation in Blender is just still sensitive. Moving a window out of sync like I described and then trying to generate a 2D drawing makes Blender freeze. When you then restart Blender and try to resave the IFC file, you might get errors, or if trying to save. Like BlenderBIM is having a tough time dealing with changes to any element in the IFC once changed, or at least is too fault intolerant to how such changes are made. I expect anyone using it currently as is has already figured out what gotchas to avoid.
On the video for working with CSS for annotations, great, I look forward to it.
Concerning the save in blender - save in ifc problematic, I'd go as far as saying saving the blend file should be disabled when working with ifc, and only the ifc file should be saved, not the blend file, because this will lead to inconsistencies down the line. This would further reinforce the fact that blender is an interface to ifcopenshell and not the place where the actual data creation / edition happens. Of course it's seemingly counterintuitive for newcomers. But the way it works now leads to a lot of bug reports in my opinion, which are caused by this sync problem.
I personally almost always work with a brand new blend file, import the ifc, and only save the ifc file from then on. Of course, to each their own workflow, but that tends to limit the out of sync errors on my end.
BlenderBIM Add-on v0.0.230304 has been released with 413 new features and fixes. It's our built environment, help support the BlenderBIM Add-on: 100% free and open source software that lets you author and document BIM data fully to ISO standards. It's built by the AEC community, for the AEC community. Get it today: https://blenderbim.org/
Aligning parametric walls now takes into account axis offsets, and it's easier to extend beams to walls, or walls to roofs. Insulation batting hatches are now generated and you can customise the width. Drawing text now has more customisation over their CSS styles.
The BIM tool is now generic to any parametric element, which means parametric vertical layers are not limited to walls, or parametric profiles are not limited to structural elements. This decoupling of geometry and IFC class is critical for flexible modeling.
Objects with same materials have their drawing hatches merged, sites now have a default thick line cut, and fill regions are now auto-dissolved, a significant step forward in readability and compliance of professional drafting standards. Drawings can now be duplicated. Drawings are now loaded on demand instead of all at once at project load. 2D annotations can now be superimposed on top of 3D body geometry in drawings, such as for window opening direction symbols.
You can now generate parametric doors and windows! Rather than relying on libraries created from others, this lets you add simple and common door and window types to your model.
Doors support for double and single doors and parameters for door panel and lining dimensions. Windows also support single panels, horizontal and vertical panels, and parameters for panel and lining dimensions. Openings are now shared across all windows. This means you can easily customize window openings in bulk for all window occurrences.
You can now generate hipped roofs automatically from a roof footprint thanks to the integration the battle-tested bpypolyskel library.
In one click, also easily generate spaces from room-bounding objects like walls. You can also now add fixed space types and manage them in the type manager, such as parking spaces.
There has been accelerating rate of bugreports due to the increased popularity of IfcOpenShell and the BlenderBIM Add-on. It is literally a mountain of bugs to keep up with. We've placed a huge emphasis on fixing and classifying bugs resulting in a net decrease in open bugs for the second time. Despite 160 or so new bugreports, the number of open bugs is down by 57 compared to the last release.
The impacts of these bugfixes are too numerous to list, but highlights include more intuitive classification assignment, orphaned openings can no longer be created, fixed viewport clipping bugs for drawings on sheets, a critical bug in drawings where certain objects would appear see through, a critical bug where viewport annotations didn't display on MacOS, and many more.
The BCF interface has been completely updated to use the BCF library from the previous release. Similarly, the BCF export from IfcClash is now working with the latest BCF library.
Built-in documentation, property set templates, and entity type mappings have now been introduced for IFC4X3. These are critical fundamentals required for those who want to start authoring and editing IFC4X3 models.
Cost schedules can now be exported to CSV, ODS, and XLSX. Tasks in work schedules can now be duplicated.
Viewing collision results from IfcClash now supports federated models. New shape utility library for programmatic quantity take off for developers. IFC validation of express rules for advanced users are now bundled in the interface. IfcTester can now output compliance reports in ODS format. IfcCSV now supports ODS and XLSX. IfcFM has been cleaned up a bit to help people adapt it to their needs easier. The profile manager now has cross section thumbnails. Material set and material set item properties can now be assigned and edited. Improved styling in documentation and new documentation for all IfcPatch recipes and IfcClash.
A huge thanks to the growing volume of new contributors who are joining the team and changing the industry. You can too!
Also a huge thanks to the growing volume of new donors who have helped is raise funds here: https://opencollective.com/opensourcebim - thanks to you, we were able to hire a part time developer and delivering many of the features you have just read about would not have been possible to do in this timeframe without your help. Thank you!
All changes can view the directly via the Git logs here:
https://github.com/IfcOpenShell/IfcOpenShell/commits/v0.7.0?since=2023-01-07&until=2023-03-04
Credits for this release (in order of commits via git shortlog -sn --since "2023-01-07"
):
194 Dion Moult
80 Andrej730
53 Sigma Dimensions
48 Thomas Krijnen
10 Massimo Fabbro
7 Vukas Pajic
5 CyrilWaechter
5 Kristoffer Andersen
4 Ryan Schultz
3 Andrea Ghensi
1 Einar Raknes
1 Jesusbill
1 Li1506
1 Martyna Jakubowska
Donors since the last release:
PlaniBIM SA
Cyril Waechter BIM Insight
Daniel
Dion Moult
Aether Engineering s.a.s. (Aether Engineering)
Clemens Rieth
Matthew Fuller
Losepacific
Julio
Frode Lund Tharaldsen
Sven Amiet
Muhammad Ichsan
James Krueger
StefStap
Jonny Knopp
Johnson Bankole
Leon ten Brinke
bitenergie
Marin Ljuban
Madars Siksna
Carlis
Kristoffer Hunnestad Andersen
bimage
louistrue
Alexander Kleemann
Udo
Stephen Cremin
Carlos Dias
Incognito
Lukas Alberts
cvillagrasa
carlopav
casiovadal
bclmnt
Ari Pikkarainen
Benny
Fabian Emanuel Kitzberger
Dirk Olbrich
Miguel
Yijie Wu
Katleen
Leandro
Wow, some huge progress in this release! Will test it out later.
I think I already raised as a feature request in github but it would be great to sync viewport visibility with drawing filters applied to that drawing/camera. I started looking to add it to the operator of the drawing activation button but got lost in the modules. Anychance of adding this for the next release?
Great news, how do I generate spaces from room-bounding objects?
I don't think there's any UI buttons yet for it, but you can type in the command...
As you can see, the regeneration of the spaces is a little buggy.
@theoryshaw it's working as intended, but not very intuitive. When you regenerate a room, you still need to place the cursor in the "interior" of the room. It doesn't "remember" where the interior point is (yet).
@Max there is sort of a UI button for it. If you have any IfcSpaceTypes, activate the BIM tool, then you can press Shift-G to generate (and you'll see the corresponding button / hotkey in the toolbar). You need to also place your cursor in the interior of the intended room, and also ensure your active collection is the building storey that you want to calculate the room for.
@ChubbyQuark yes, that will come :)
Hey @Moult Amazing work! the bug fixes and changes and new tools are really polishing up the BlenderBim experience!
Just a quick Q how does one go about using the hip roof generator from footprint?
@Ace thanks! There's no UI for it (yet, planned for next release), so simply draw the footprint as a closed set of edges with no faces, then F3 and generate hipped roof. There are some hidden commands that let you pick between ridge height mode vs fall angle mode but nothing is exposed in the UI so that requires you to type in the commands in the console: bpy.ops.bim.generate_hipped_roof(mode="ANGLE", angle=10)
or bpy.ops.bim.generate_hipped_roof(mode="HEIGHT", height=1)
.
Thanks @Moult ! a very cool tool!
Just a heads up this page of the website still lists the previous stable version (230107):
When you download it it does download the most recent stable version though
@Ace said:
Thanks @Moult ! a very cool tool!
@Ace you'll have to show us the 'generate hipped roof' tool in action :)
Creating spaces is a feature I have really been looking forward to but unfortunately it have not been able to make it work during this weekend. I have a simple IFC-model exported from Revit (it is the demo model) with and without spaces and I am trying to recreate the spaces without access to Revit in BlenderBIM and wonder if anybody could describe the steps needed? The models can be found at https://github.com/maxtillberg/ICEBridge/raw/main/spacetest.zip
/Max
@Max the space tool is very new and still needs a lot of polish, I found it didn't work very well on that model, as many spaces are not bounded by walls. I'll use it as an opportunity to improve the space tool.
Thanks, these zones are kind of tricky with large curtain wall elements and sloping roofs.
@Nigel Indeed I will ahhaha:
I'll use it in a proper tutorial aswell, but for now
Awesome video as usual @Ace ! Fun fact, all historic builds are available here https://blenderbim.org/builds/ .
BTW for the inset window you can just adjust the lining offset parameter. See a diagram of what the parameters mean here:
As this suite of tutorials by @Ace are turning into a comprehensive beginners course, I think it makes sense to include it in the documentation and / or linked to on the website. What do you think @Ace?
Hey @Moult thanks! and very cool! That's a bit of history right there. Good to know about the window insets! thanks that's very informative! I'm super keen for it to be included, What do you need from me?
Hi! I am trying out v230310 to test the roof generator (wow!), but I couldn't figure out what happened to the materials... when I try to create a new type from an empty with MaterialLayerSet I don't find the IFC Object Material in the menu anymore. Was it moved?
Login or Register to reply.