BlenderBIM Add-on new release!

16791112

Comments

  • The Ifc demo Library is really helpful. Can we add some ifc materials samples like brick concrete etc linked with demo wall objects

  • @swathi great idea! The new Australian library that is a work in progress now contains more materials.

  • BlenderBIM Add-on v0.0.220516 has been released with 352 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/

    Support for Blender 3.1!

    Blender moves fast, and we've got new builds available. Did you know the BlenderBIM Add-on supports all Blender versions from version 2.8 onwards? There are now official builds for Python 3.7, 3.9, and 3.10.

    Basic drawing generation is now available

    A huge amount of work was done on 2D drawings with over 50 fixes. Almost all drawing data (notable exclusions include rendering styles) are
    now part of the Native IFC dataset, and so most of the drawing and sheet features which were broken in previous releases are now working again. If you wanted to test drawings, now is the time! The UI also got a refresh, distinguishing between drawing types and linking drawings and
    schedules into sheets. It is now easier to create new drawings with preset directions for project N/S/E/W.

    You can now specify custom stylesheets, smart tags are now linked in IFC, new angular, radius, and diameter dimensions, fills, and custom tags on built-in annotation types (such as when annotating levels). Schedules are also now implemented as associated IFC documents. 2D annotation now also has support for Z index so you can change the draw order of linework.

    Drawings now also have automatic reference generation. So instead of having to draw annotations manually for objects like grids, sections, and elevations, these annotation symbols are now auto generated and synchronised when the base object is updated. So if you move a grid, the grid on all drawings are also updated. These references keep track of drawing names and sheet numbers, so if you change sheets or reshuffle drawings, the references will also update.

    A brand new CAD module allows 2D CAD drafting, especially useful when drawing details. Standard features like trim, extend, intersect, fillet, arc by 2 points, arc by 3 points, and offset are available with hotkeys for rapid editing.

    Updates on Information Delivery Specification

    BuildingSMART has been developing a new technology known as Information Delivery Specification. This is a standardised approach to auditing IFC models. For example, you can check whether or not properties are assigned, or materials exist. Originally, IfcOpenShell provided support for it during a previous Google Summer of Code project. However, IDS has evolved since then and the IfcOpenShell codebase has been recently updated with a comprehensive test suite that addresses many of the ambiguities in IDS. This addresses many concerns like inheritance,
    overrides, and filtering by classifications, properties, attributes, materials, and more.

    Unfortunately, IDS is not yet ready for end-users, so this code is only available for developers who want to explore this standard. When stable, this will likely supersede BIMTester.

    New documentation for users and developers

    Lack of documentation has always been a problem. This release sees a new documentation website with the basics documented for both users and developers.

    Users can access the new documentation here: https://blenderbim.org/docs/

    Enough docs are written to give users a guide of how to explore models. The docs are still horrendously incomplete, but at least this sets a standard of documentation expected and a structure for how to present it.

    Developers can access the new documentation here: https://blenderbim.org/docs-python/

    This addresses long-time concerns that many of the IfcOpenShell utilities and API were hidden, which is a shame as IfcOpenShell actually has a crazy number of features. Check out the API docs here: https://blenderbim.org/docs-python/autoapi/index.html

    Support for distribution ports

    For MEP modeling, all distribution elements (like ducts, pipes, equipment) have connection ports to allow them to connect within a distribution system (chilled water, supply air, etc). Many IFC viewers do not show these distribution ports, which is a shame, because they are critical to ensuring the correct connectivity and topology of a distribution system.

    New features involve showing ports, hiding ports, and basic port editing. You can now move, copy, add new ports, or delete existing ports. You can change the location of ports, and the attributes of a port. You can also connect, disconnect, or set the flow direction of ports.

    Of course, editing ports by itself is not enough for complete MEP modeling, but it is a critical step in the right direction. Very minimal features have been implemented to do with automatically drawing ductwork from parametric widths and heights, but it is still too early to be productive with.

    Construction sequencing improvements

    You can now export schedules to Microsoft Project. Importing from MS Project is also improved with a number of critical bugs that broke importing (including calendar and duration calculation) fixed. A number of critical import bugs were also fixed for P6 XML versions <8.1. For those using IFC to XML conversions with IfcConvert, schedule, task, and calendar data is now also converted thanks to Christian Martínez de la Rosa!

    Date calculations have been improved, handling cases where tasks are edited without enough date information, infinite loops in invalid calendars, recursive calendar removal, or editing start times with no finish. Date calculations now follow working days, and handle a 9-5pm day as a 1 day durection, instead of calculating from midnight.

    Gantt chart presentation is also now much better, showing ISO durations and task captions on the chart bars.

    Support for rendering styles and textures

    The BlenderBIM Add-on now suports rendering styles and (certain types of) textures. The colours you see in a BIM model are typically the on-screen basic shading colours. However, IFC also stores rendering materials, rendering colours, and textures. These materials (i.e. lighting modes or rendering modes) are actually compatible with glTF and X3D. This means that modern physically based materials are supported. Textures like diffuse, normal, metallic, emissive, are also supported.

    With better support for rendering, this gives BIM authors more control over basic model presentation, and with support for texturing, this can be used instead of previous hacks where textures were represented as unnecessary geometry (especially for models which tesselate text, signage symbols, or things like grilles and grates).

    New material and style manager

    A critical part of managing a BIM model is seeing the materials and styles used. The new material and style manager lets you see a list of these, filter by material or style, delete, add, and see where it is used. Hopefully, this will lead to improved data quality in BIM models where materials can be better managed and audited, and then linked to life cycle analysis.

    Styles are also more than colours. The new style manager exposes styles like fill area styles, curve styles, and text styles. Managing these styles are critical for drawing support.

    Improved document manager

    The UX for managing document and document references have now be improved. Attach and associate documents such as drawings, schedules, and specifications with objects, and add subdocuments or superseded documents. Support for relative paths make it easier to transport associated external documents with IFC models.

    New support for actors

    BIM isn't just about geometry ... or properties ... or tasks, resources, cost items, materials, analytical models ... and so on. BIM is also about actors! Actors are people and organisations, including liable engineers and architects, clients and operators, occupants and lessees, manufacturers, warranty providers, and suppliers. These critical relationships betwene objects and "actors" can now be managed. People, organisations, and people within organisations can be designated actor roles and associated with objects, and the UX has been refreshed based on this usecase. This has large implications for facility management.

    So much more

    A few critical bugs were fixed for coordinate offsets in projects using map coordinates, the selector utility now has support for chaining and "not" filters, basic usability tweaks here and there, such as the save and save as distinction when saving projects, file browsing for URI reference properties, a number of bugfixes related to IFC2X3 authoring, and increased geometry stability when importing. The test suites have now also passed the 1,500 test milestone to guarantee the ongoing stability of the add-on.

    A huge thanks to the growing volume of new contributors who are joining the team and changing the industry. You can too!

    All changes

    All changes can view the directly via the Git logs here:

    https://github.com/IfcOpenShell/IfcOpenShell/commits/v0.7.0?since=2022-01-31&until=2022-05-16

    Credits for this release (in order of commits via git shortlog -sn --since "2022-01-31"):

       256  Dion Moult
        37  Thomas Krijnen
        10  Christian Martínez de la Rosa
         9  ArturTomczak
         7  Dushyant Basson
         6  Massimo Fabbro
         5  Adrien SCHVALBERG
         4  Gorgious56
         3  Bruno Postle
         3  Henri J. Norden
         2  Boris Brangeon
         2  Cyril Waechter
         2  dependabot[bot]
         2  renjianqiang
         1  Bruno Perdigão
         1  Emad Aghajani
         1  Jesusbill
         1  Ryan Schultz
         1  ssg
    
    chunchkMassimoBimlooserlukasakseltCoenMartinRomanCarpgianeDSCyriltheoryshawand 15 others.
  • BlenderBIM Add-on v0.0.221105 has been released with 775 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/

    It has been 6 months since the last release, so fasten your seatbelts.

    Support for Conda, PyPI, Docker, Apple M1, and Chocolatey

    IfcOpenShell is now available in significantly more distribution channels. By far the most popular requests were the ability to install on Conda, PyPI, and support Apple M1 devices. Installing IfcOpenShell for Python can now be as simple as pip install ifcopenshell. For Windows users, daily builds are available on the Chocolatey package manager. Apple M1 support was generously provided by donations from our userbase, and we currently have funding to provide just over a year of regular Apple M1 builds. If you want to support us please help donate here.

    Load large federated models

    You can now set up models to load 1GB of federated IFC data in as little as 10 seconds, and walk around your models in real time. This makes the BlenderBIM Add-on the fastest IFC authoring platform available in the industry.

    This is now possible thanks to a series of upgrades in the partial IFC loading process: you can now merge objects from large models to keep object counts low. A new coordination mode disables loading types. Openings are now not loaded for speed. You can now set limits and offsets when loading large object counts. Model loading can also be done headlessly so you can automate it using a server.

    New wall, slab, profile, and stair editing tools

    Modeling tools received a significant upgrade. Parametric IFC walls now support intelligent connections at start, end, and along the wall axis path. This means that moving walls that are attached to other walls will allow walls to auto extend and trim to the new locations. It's now also easy to edit the wall length, height, and slope angle using parameters. Walls can also extend up to simple flat roofs. Walls now support all layer usage parameters, including axis offset and direction.

    The profile manager now lets you create end edit arbitrary custom profiles. These profiles can be reused across multiple elements, like columns, beams, and structural members. Profiled elements now support 3D butt and mitre joints, especially useful for steel detailing.

    Slab profiles can now be edit parametrically with a new profile editor. This shows a 2D profile in space which supports snapping to other elements in the 3D scene. The 2D profile also supports true parametric arcs, inner profiles, and true parametric circles where you can set the radius. There is also a prototype integration with CAD Sketcher to allow for constraint based profile editing.

    A new opening system lets you hide and show openings, or create custom profiled openings for door and windows. Doors, windows, and walls can be flipped independently, and host and child elements can either be moved independently or together using the new decomposition selection tool.

    A new array feature lets you create N-dimensional arrayed copies of parent objects. This is the start for creating commonly repeated objects such as beams, structural bays, or column grids.

    A new monolithic stair tool is available to replace the previous "dumb stair" tool. This generates a standard concrete stair and is the start of a series of new parametric object generators.

    Altogether the new parametric modeling tools are also significantly more stable, handling many permutations of smart connections, changing types, profile parameters, and layer thicknesses.

    Thumbnail support and type manager

    The BIM Authoring Tool comes with a much improved UI: parameters can now be easily access either through buttons, sliders, or via hotkeys for fast editing. A thumbnail displays the active asset, and supports showing profile and wall layer cross sections to quickly identify different layer-based and profile-based types.

    You can also launch a new type manager which will show all your IFC library assets. You can easily add new types based on templates, duplicate existing types, or delete types.

    European and Australian standard steel profiles

    Most proprietary software come with an asset library. There has been a renewed interest in the BOLTS project, a technical database of structural standards that is shared between OpenSCAD, FreeCAD, and now has new support for IFC-based software. To begin with, there is WIP support for hundreds of standard European and Australian standard steel profiles, and data is being collected for a number of architectural standard or typical nominal dimensions.

    We believe this will be the largest and most comprehensive open source technical database available in the industry, representing a huge leap forward in standardisation and automation for costing, life cycle analysis, structural analysis, feasibility studies, AI datasets, and more.

    Faster faster faster

    Almost every release sees speed optimisations and this release is no different. Users on Blender 3.3 will see model loading to be 50% faster, with the improvements being greater for larger models.

    There is also now a native mesh processing option, if models include heavy mesh data with large polycounts, this allows those meshes to be loaded very quickly.

    IfcDiff is also now twice as fast in comparing models. More configuration options in IfcDiff also let you choose whether or not geometry or simple attributes are compared. Results are also more accurate.

    For those watching the progress in the console during model loading, progress reporting is now more accurate and detailed so you can tell what's happening.

    Tooltips and online documentation

    Native IFC authoring requires knowledge of the classifications, data types and relationships that IFC offers. A perhaps hidden new feature but with great significance is the ability to hover over almost any IFC related name and see a tooltip of the ISO-standardised definition. You can also right click to access the IFC documentation website. Documentation is provided for both IFC2X3 and IFC4. This makes the BlenderBIM Add-on the perfect tool for academia and those new to learning IFC.

    Documentation is provided for IFC classes, predefined types, all attributes, property sets, quantity sets, properties, quantities, and user-defined custom property templates too.

    New website design

    The BlenderBIM Add-on website has now been redesigned to better reflect the full scope of capabilities, as well as have a new branding that connects with the upstream IfcOpenShell umbrella website (which will soon also have a redesign released).

    The documentation also has a number of new guides written, including guides for dealing with large models, and handling georeferencing.

    IDS support

    Continuing on from the early prototypes of IDS support, there is now a new IfcTester library, CLI application and web app that allows you to view, edit, and audit models using the brand new IDS standard. This standard is fully validated against the IDS specification. Reports can be generated as CLI output, JSON, or HTML. You can also run audits using the BlenderBIM Add-on.

    The IfcTester application is being increasingly battle tested in large commercial projects to make sure that it is appropriate for use.

    New library of quantity take-off functions

    There are now a series of 20 new quantity take of utility functions for use for developers in writing custom quantity take off rules. These are slowly being mapped to the buildingSMART standardised quantity take-off definitions to replace the older quantity system which was very basic.

    A new release management strategy

    As the number of contributors to IfcOpenShell and the BlenderBIM Add-on grows, we've now started a Kanban project based approach to collaborating between developers and communicating to users what's on the roadmap. A "development theme" will be chosen to help decide what to focus on for each release, and instead of releasing "whenever Moult feels like it" we now have a 2-month release cycle.

    Users and developers can now plan for the "next release" and the "release after next". Tasks that are not complete will shift to the next release. This was tested for 2 weeks leading up to this release, where 4 developers completed 24 out of 37 tasks. Thanks to your donations, we have now enough funding to hire part time development, which has lead to a number of features in this latest release. With your continued funding, we can accelerate development even further!

    So much more

    There is now support for loading an updated IFC model incrementally. A critical bug was fixed for upgrading schemas. IFC2X3 document reference support added. Diffuse colours specified as ratios are now supported. The IFC validator has had significant improvements with in progress support for "where rules", and a number of validation fixes were made in BlenderBIM Add-on generated content. You can now add booleans to geometry, including support for half space solid clipping. Fixed fatal crashes in CAD tool for filleting and extending, and a new 2D CAD offset tool has been implemented which gives more reliable results compared to the 3D offset tool. A new pach is available to fix bugs in Autodesk Revit when converting TINS from 12D to Revit. Rebar is now exported from native Blender beveled curves. Classifications can be added to cost items and materials. Resource level classifications are now supported. Spatial zones are now supported. You can now reference spatial structures, so things like multi-story columns or doors, stairs, dampers, and so on can reference a "to" and "from" space. The OBJ2IFC script now has a Meshlab implementation and supports different schema versions. OffsetObjectPlacement patching now supports 3D rotations, especially useful when fixing IFCs from Solidworks. MergeDuplicatesTypes patch now can work on any attribute. Support for nested IfcGroups. New IfcSelector module to graphically create selection sets. Cyclic task dependencies are now handled for CPM analysis. Basic IFC4X3 support is now enabled, although geometry is not supported, there is support for schema entities. Long dropdowns and enumerations can be filtered for improved UX. Pset templates now support enumeration properties where the user can select multiple possible values.

    A huge thanks to the growing volume of new contributors who are joining the team and changing the industry. You can too!

    All changes

    All changes can view the directly via the Git logs here:

    https://github.com/IfcOpenShell/IfcOpenShell/commits/v0.7.0?since=2022-05-17&until=2022-11-05

    Credits for this release (in order of commits via git shortlog -sn --since "2022-05-17"):

       407  Dion Moult
       114  Thomas Krijnen
        57  Vukas Pajic
        38  Gorgious56
        31  Carlos Villagrasa
        24  Gorgious
        19  Sigma Dimensions
        13  Andrej730
        10  Kristoffer Andersen
        10  Ryan Schultz
        10  Massimo Fabbro
         6  krande
         5  Martin15135215
         5  fbpyr
         4  Bruno Postle
         3  luz paz
         2  Boris Brangeon
         2  Dirk Olbrich
         2  Esteban Dugueperoux
         2  dependabot[bot]
         1  AToradaIBIM
         1  Amoki
         1  ArturTomczak
         1  Bruno Perdigão
         1  Christian Kimmig
         1  Christian Martínez de la Rosa
         1  Dmitry Sedov
         1  GisSpace
         1  befr
         1  bimworld
         1  garylzimmer
    
    CoenBedsonJohannes990GorgioushtlcnnCyrilBimlooservbertranbasweinvinnividivicciand 11 others.
  • edited November 2022

    @Moult and everony else involved
    Absoluteley amazing! Great work!!!

    MoultAceJesusbillDADA_universecondur
  • What are the modeling 'Smart Connections'? Are they custom snaps which could perhaps be used on pipe fittings for quick placement?

  • @Coen thanks! @Bedson axis-based things (like walls, columns, beams, members, etc) now know if they are connected (e.g. butt/mitre) at the end/start/along the path of the axis. So if two walls are connected, and you move one of the walls, the other wall will extend/trim to follow.

    BedsonhtlcnnAcebitacovirCoen
  • AceAce
    edited November 2022

    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.

    Ace
  • 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.

    Experimental IfcSverchok release

    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.

    New BCF library

    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.

    4D improvements

    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.

    Stair, steel and Australian furniture library

    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.

    Extensive API documentation

    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.

    IfcOpenShell for the web (WASM)

    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.

    So much more

    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

    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
    
    peperiberaBimlooserCyriltlangAceJesusbillBedsonlukasbasweinMartin156131and 8 others.
  • 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.

  • AceAce
    edited January 2023

    @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 :)

    Bedson
  • 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.

  • edited January 2023

    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.

    theoryshawbrunopostleCoenNigelVDobranovAcevictorklixtoDADA_universe
  • 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/

    Improved drawing and modeling

    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.

    Parametric doors and windows

    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.

    Generate roofs and rooms

    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.

    Bug fixes galore

    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.

    BCF interfaces updated

    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.

    IFC4X3 progress

    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.

    4D/5D improvements

    Cost schedules can now be exported to CSV, ODS, and XLSX. Tasks in work schedules can now be duplicated.

    So much more

    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

    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
    
    brunopostleCyriltheoryshawChubbyQuarkJanFpeperiberahtlcnnbasweinbitacovirNigeland 10 others.
  • 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?

    peperiberaAce
  • 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...
    https://www.dropbox.com/s/rwnxo1bd5pxpp4e/2023-03-04_15-02-18_KeyShowView_Carnac.mp4?dl=0
    As you can see, the regeneration of the spaces is a little buggy.

    CoenAceArv
  • edited March 2023

    @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 :)

    CoenAce
  • 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).

    theoryshawAce
  • 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 :)

    CoenAce
  • 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

    CoenbrunopostletheoryshawMartin156131CyrilMaxNigelNaxelavpajicDADA_universeand 3 others.
Sign In or Register to comment.