BlenderBIM Add-on Changelog

From Wiki.OSArch

v0.0.190905

  • Supports writing IFC4 files first and foremost.
  • Lots of clever reuse of representations to create efficient and small IFC files and you have full control over exactly how you optimise the IFC file, including generating products from parametric arrays and object group instances
  • Supports the spatial tree including multiple buildings, multiple sites, and so on
  • Create product compositions including extremely granular breakdowns
  • Create project libraries, not just projects
  • Quantity take-off calculations
  • Property sets
  • Modeling abilities are completely separate from BIM data. In contrast to other tools where the type of object governs how you can model it, in Blender it is totally separate and you can instantly convert an object from one type to another, change its aggregation, change its spatial location such as changing floors, etc without any fear or breaking your model
  • Export with/without quantities, or with/without representations (hint: an export without geometry retains all of the useful BIM data but is extremely fast to export, and creates a tiny IFC filesize!)
  • Blender’s native Python API allows you to script it heavily doing bulk IFC data management very easily
  • Obviously you get immediate access to all of Blender’s amazing features like modeling in real-time rendered view like a game engine. Beautiful visuals. Animation. File linking. Proxy objects. Virtual reality. Light simulation, CFD analysis, energy modeling. Huge ecosystem of addons. The list just goes on and on.

v0.0.190910

  • Improved support of project libraries, so you can have multiple project libraries, and easily relate/unrelate them to projects
  • Property sets now detect data types from the property set templates, so you can define your own property set templates, and it will read them that to allow you to enter in data quickly. I am not aware of other vendors using property set templates, so this is exciting news!
  • Implement IFC georeferencing through map conversions and target CRS definitions. This makes three vendors that I am aware of that do this properly: ArchiCAD, FreeCAD, and now Blender.
  • Allow you to export 2D / 3D wireframe geometry, this allows some very efficient filesize savings where a full solid representation is not required.
  • Export basic material colours and rendering styles including transparency.
  • Allow export of an externally defined material, such as a .blend file, .vrmat file, or even .mat Radiance file for lighting simulation!
  • Units are no longer hardcoded, and now support different types of metric units which can be set through the Blender UI, so you can choose to work in metres, millimetres, etc.
  • Allow property sets to be assigned to types, and have object property sets override type property sets.
  • Some optimisations and bugfixes

v0.0.190914

  • Objects and types can now be associated with external documents, such as plans, brochures, specifications, warranties, etc.
  • Objects and types can now be classified using classifications such as Uniclass / Omniclass / anything you choose.
  • Objects and types can now record qualitative constraints in the form of objectives. This can help record design intentions and health and safety strategies, among other things like code compliance requirements.

v0.0.190921

  • Documents and classifications are related to the project itself.
  • Support for multiple representations are created. Previously, only a ‘Body’ representation was created. Now, you can add or remove multiple representations, some of which may be automatically generated from the ‘Body’ representation, and some which you have full custom control over their content. The supported representations are: Body Axis Clearance Footprint Reference Box CoG
  • Although Blender has first-class support for manipulating breps, you can now choose to export simple extrusions of any angle (i.e. not necessarily normal to the profile curve) as a SweptSolid, giving the first steps towards supporting IFC roundtripping with programs like Revit which support these types of geometries but not other types.

v0.0.190930

  • You can now create nested element relationships: for hosted objects and nested components.
  • Material layer sets can be defined
  • Material constituent sets can be defined
  • Predefined door attributes can now be defined and assigned to door types
  • Predefined window attributes can now be defined and assigned to window types
  • It’s now packaged for more end-user testing! See below:

v0.0.191010

  • You can now create nested element relationships: for hosted objects and nested components.
  • Material layer sets can be defined
  • Material constituent sets can be defined
  • Predefined door attributes can now be defined and assigned to door types
  • Predefined window attributes can now be defined and assigned to window types
  • It’s now packaged for more end-user testing! See below:
  • The QA module includes a feature to allow applying a temporary colourscheme to the model based of a property. For now, the interface allows you to colour it by IfcClass, but you could theoretically colour by anything (fire ratings, acoustic ratings, any property …). Here is an example, showing walls, doors, columns, slabs, and some floating building element proxies:
  • You can bulk approve or reject classifications and keep track of what elements you’ve audited for various properties. Any IFC property auditing will get tracked in plaintext format in Gherkin syntax, so it reads like English:

v0.0.191019

  • You can now select objects by GlobalId
  • New basic UI for georeferencing data
  • Custom psets are now supported - it can also support complex data types and you can load in your own pset templates too!
  • New UI for adding in attributes, with drop down selection of possible attributes taken from the spec. Now everyone can easily add attributes!
  • New UI for adding / removing property sets (and you can set them in bulk!)
  • New quick project setup button to add site / building / storeys.
  • Bugfixes for importing, assigning classes, and roundtripping geometry with Revit (Revit seems to expect normalised direction vectors, even though the IFC spec doesn’t require this)
  • Now supports assigning surface colours directly to object representations via styled items, as well as assigning surface colours via materials - and as the user, you have the choice which way you want to do it. To my knowledge no other BIM authoring tool supports this feature!
  • New BIMTester tool is now packaged and available for Windows 11. It audits your BIM file to customised rules, and generates HTML reports!
  • New UI to explicitly assign how swept solids are represented, to make it easy to round trip with Revit.
  • New UI to assign externally defined materials - more on how this allows people to create incredibly detailed CG rendering workflows soon!
  • IFC import has been somewhat rewritten in preparation to start supporting the ability to import this data too, not just geometry and basic materials and ID. The importer has been merged with the exporter and packaged as a single package to make it easy to install.

v0.0.191106

  • Importing IFCs now have improved mesh reuse and optimisations on shape creation leading to much faster imports! Also some bugfixes thanks to @Hans_Lammerts
  • New interface to assign documents to IFC objects
  • New interface to assign classification systems (Uniclass / Omniclass) to IFC objects
  • IFC importing now also imports object attributes
  • Bugfix in BIMTester to run and re-run multiple test suites
  • IFC COBie packaged with minor bugfixes
  • Experimental gbXML export now supports creating openings, as well as some bugfixes
  • New IFC Diff tool (basically git diff for IFC files) - this allows you to take two different IFC files and it will compare them and tell you what changed. It will tell you if geometry has changed, or
  • utes, and also the previous value of the attribute and the new value of the attribute. It writes it out to a json file which can be visualised with BlenderBIM so you can overlay changed models.
  • New experimental sectioning tool to create construction documentation. You can cut sections direct from IFC files and create view hatching / line weight stylesheets with CSS which can be mass applied across objects. Objects are smart vectors, so unlike other documentation tools, 2D documentation have SVG classes applied so each object knows the IFC GlobalId, material, and IFC class.
  • New interface to create, edit, and save IFC aggregates
  • Import now supports curves, so you can import survey point geometry that might come from 12D, for example.
  • Export now supports Blender curve objects, not just mesh objects, so you can do profile extrusions along vector curves and export them
  • A whole bunch of geometry processing fixes in the underlying IfcOpenShell library by @aothms (which are quite technical but it looks like a great job!)

v0.0.191116

  • New support for importing and exporting imperial units, and you can choose your primary LENGTHUNIT.
  • You can create geometry specifically for the PLAN geometric representation context now, and choose the TARGET_VIEW enum to do plans, sections, RCPs …
  • New export options to export materials as styled items. This is useful for exporting to Revit (and a few others), which seems to completely ignore IfcMaterial, but instead treats the styled item name as the material name, and ignores any colours assigned via IfcMaterial. Ideally, this should be fixed on their end, but is a workaround.
  • New import options to import 2D curve elements
  • Parametrically generated geometry from Blender now maintain their GlobalId value, even if you generate less or more of the geometry.
  • New import option to ignore site locations, so that non-geolocated IFC2X3 files or incorrectly geolocated IFC4 files (almost every single Revit export that we come across) can import with a sensible project origin.
  • New UI and improved support for specifying multiple swept solid extrusions per object, for geometric round-tripping with programs like Revit
  • Stephen Leger from Archipack has started contributing code! He has done some neat cleanups and optimisations on the Blender UI.
  • IFC BIMTester now has a feature where you can choose to purge tests for elements which have been since deleted since you wrote your test suite.
  • You can now specify IfcPerson and IfcOrganization details including postal and telecom addresses for export.
  • As usual, bugfixes, most notably for the export location of swept solids and parented Blender objects.

v0.0.191129

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

v0.0.191219

  • 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

v0.0.200109

  • Be less strict about requiring BIM objects to be selected when exporting, to make it more user-friendly. Now you can just bulk select everything.
  • New workaround for importing materials from Revit, since Revit has a funny way of storing materials. Models being imported from Revit will now be much more colourful!
  • You can now create geometry and export spatial elements, such as an IfcSpace.
  • BIMTester now has a variety of new unit tests, including:
  • * all IfcFoo elements have a name matching a particular pattern - useful to check whether the BIM author has followed a naming scheme in your BIM execution plans.
  • * all IfcFoo elements have a particular shape representation - useful to check if the BIM author has their geometry in a representation that you can edit, for round-tripping between Blender, FreeCAD, Revit, and others.
  • * all IfcFoo elements have a particular attribute - useful to check if BIM authors have correctly filled out an attribute
  • * all IfcFoo elements have a particular property / property matching a pattern - useful to check if BIM authors have correctly filled out a property in a pset that you need for your exchange requirements
  • * all IfcFoo elements have a particular quantity - useful to check if BIM authors have filled out sensible quantity values for something you need to quantify
  • BIMTester can be run now both as a standalone CLI app in your BIMServer, or as a library, and allow you to set custom unit testing parameters for greater testing control
  • Have a “force recut” feature to regenerate a new section / view of a model in construction documentation.
  • New experimental collection of 50 hatch types for construction documentation, including various drafting standards
  • New interface to select a person and organisation to properly set ownership history, with detailed information like addresses and so on
  • New interface to quickly create a new view / section of the model
  • Each view / section now stores its own view scale, instead of it being an export-time setting for convenience
  • New UI to easily switch between views / sections
  • IFC Diff utility, to compare the difference between two IFC files is now packaged for Windows as a standalone executable
  • The IFC Diff utility has also been packaged within BlenderBIM, so you can run it from the Blender interface to compare files
  • Application and IFC header metadata is now (almost) properly filled out, just to be neat.
  • Importing now specially treats aggregations and displays them as aggregates
  • Opening elements are now stored in an import in their own collection for you to do with them what you please
  • New feature to explode aggregations into parts
  • Cleaner geometric representation context UI
  • New interface to quickly assign any representation to a particular context, subcontext, or target view.
  • Automatic vendor hack mode is enabled by default: it detects a particular vendor when importing and auto applies various workarounds for their quirks in their IFC files. Currently enabled for Revit’s lack of IFC geolocation and funny materials. This should help a lot of people who aren’t aware that these workarounds need to be applied and would otherwise get a bad impression of IFC files and BlenderBIM.
  • Bunch of under the hood bug fixes for more reliable importing.

v0.0.200123

  • Documentation added for the context panel
  • Site objects are now imported
  • Bugfix to export different types of curve objects
  • All non-polygonal extrusions now have an Axis representation exported
  • Material properties are now exported (like density, youngs modulus, etc)
  • New sample attributes for doors and windows shipped with the add-on
  • Point clouds now can be exported to IFC
  • IFC structural objects are now exported
  • UI improvement to only show predefined types and userdefined types if it is possible
  • Structural objects now export a topological reference representation
  • Parametric material profiles are now supported (rectangular, circular, I-Beam, etc)
  • New UI to manage material attributes
  • New UI to change material assignment (single / layer / constituent / profile set)
  • New UI to create a property set override instead of having to write properties in separate CSV files
  • BIMTester now includes model setup vocabulary, drafted in collaboration with BuildingSMART Australasia co-founder @john.mitchell - it tests basic project attributes and geolocation for both IFC2X3 and IFC4.
  • BIMTester now allows custom JUnit directories for better cloud integration
  • Bugfix where some context representations were not exported now fixed
  • UI to specify structural boundary conditions
  • New UI to specify structural member connections
  • Can export a group of structural objects into a Structural Analysis Model
  • Importing now has a progress bar and more consistent logging
  • Documentation for BlenderBIM and IfcOpenShell merged and restructured
  • New workaround for Revit incorrect geolocation being placed on the building object - enabled by default
  • Assigning product types is now done by a property instead of the Blender parent relationship to allow it to scale on large files
  • New experimental script to convert IFC into Code_Aster input for 100% free and open source structural analysis

v0.0.200228

  • 12D files, which usually have absolute coordinates, are now imported into Blender with an offset to allow you to work in local coordinates for vertical BIM
  • The BIM audit panel now allows you to select a particular BIMTester feature, and write tests directly from the UI instead of needing a text editor
  • Your spatial tree can now have geometric representations (most importantly, this allows you to export an IfcSite terrain)
  • Quick project setup button now sets up spatial objects too
  • Sites can now export a reference long/lat attribute
  • When importing, it now remembers what IFC file the data came from (in preparation for partial writes)
  • Minor bugfixes related to missing items in dropdown menus, curve orientations upon export
  • Import now associates type products
  • Bugfix allowing you to import multiple spatial structure elements with identical names
  • New option to toggle import of opening elements
  • Improved IFC-to-Code_Aster script
  • Preset render settings for creating documentation and diagrams
  • Create dimension annotations in 3D from any orientation instead of for a particular view
  • New support for IFC projection elements (opposite of void elements)
  • Allow you to create other types of leaders and section levels from any orientation instead of for a particular view
  • IfcPolygonalFaceSets are now imported with the correct units (useful for sites and terrains)
  • Extra checks to ensure exports don’t create GlobalId collisions
  • Allow duplicate names for both mesh and curve data
  • New option allowing people to maintain parametric behaviour to generate multiple IFC objects, or to bake the results into a single IFC object
  • New IFCPatch tool, allowing you to patch the data in an IFC file based on a series of preloaded “recipes”. These allow you to workaround various limitations in other IFC authoring exports in a safe way without breaking the rest of the IFC data. Recipies include:
  • * Reset spatial element object placement locations
  • * Offset from absolute coordinates to a local system
  • * Remove representations from sites
  • * Offset IfcBuildingStorey elevations
  • * Set reference elevation
  • BIMTester now shows test results with a percentage success rate
  • IFC import now imports pset data
  • 2D grids are now imported even though curve data isn’t enabled, given the importance of grids. Support added for IfcGrid and IfcGridAxis
  • New ability to search for IFC objects by their attribute or pset property values with a case insensitive string, with support for regex for super advanced searching
  • You can select any IFC attribute or pset property and colour code the model by the value for a visual cue when auditing IFC data
  • Minor UI clean-up to hide panels by default
  • New import option to toggle import of IfcSpace objects
  • Handle import coordinate offsetting of IFC2X3 files created from Tekla which are poorly geolocated
  • Version bump to the latest IfcOpenShell library, which includes fixes for more stable geometry import

v0.0.200328

  • Latest IfcOpenShell version, with various stability fixes to import more files!
  • BIMTester can now just generate reports if required
  • BIMTester can run a single test instead of the entire test suite
  • Fix import bug with some IFC object types aren’t related correctly
  • New BIMTester test to check if an element doesn’t exist
  • Improved support for IFC2X3 materials without transparency
  • Fix import bug where IFC spaces with the same name might not be in the right location in the spatial tree
  • New import option to auto-merge geometry by IFC class
  • New import option to auto-merge geometry by IFC material
  • New import option to disable element aggregation
  • Hidden lines in construction documentation may now be in 3D, useful for showing exploded axonometric views
  • New IFCCSV tool allows querying an IFC file and exporting attributes and psets and reimporting an updated CSV to the IFC model
  • IFCCSV tool allows querying using IFC class, attribute, pset, and qto filters, with multiple operators, AND and OR statements
  • Export fix where sometimes you could create an abstract IFC class
  • All IfcSpatialElements are now supported including obscure ones like IfcSpatialZone and IfcExternalSpatialElement
  • IFC exports now support multiple materials on a single object
  • Fix export bug where some aggregates don’t export
  • Fix import bug where some objects inside a space won’t import
  • New import feature to automatically clean meshes to get nicer topologies
  • New export feature to export objects inside spaces and any spatial element
  • New import feature to record the spatial relationship of objects inside spaces (with ability to scale for large projects)
  • New import feature where quantity take-off quantities are imported
  • New export feature where you can manually fill out quantities and export them
  • Fix import bug where materials may be on multiple shape representations
  • New support for BCF XML 2.1!
  • View list of BCF topics in the UI, showing basic metadata about each topic
  • New button to uninstall add-on, to improve the upgrade process
  • See multiple viewpoints for each BCF topic and launch a camera view for each viewpoint
  • Any type of curve object is now supported for construction documentation annotation objects
  • Spatial containers are auto-detected when exporting making it more convenient for users to do quick exports
  • Support for BCF topic comments
  • BCF topic reference links, BIM snippets, document references, and related topics are supported with buttons to quickly open both external and internal references
  • New buttons to quickly view BlenderBIM Add-on homepage, docs, wiki, and forum
  • Documentation titleblock and view templates heavily optimised to a fraction of the filesize - mere kilobytes!
  • New UI feature to add new sheets and add views to sheets
  • New UI features to quickly open sheets and views in external SVG programs / viewers
  • Views now store view scale in their vector output - in an indsutry where our vector output is non-semantic, which really changes things!
  • Fix IfcPatch bug for broken ResetAbsoluteCoordinates recipe
  • New feature to publish sheets with automatic view titles, scales, view numbers, and sheet names

v0.0.200413

  • New feature to validate the syntax of IFC files, in case you receive a broken IFC file
  • New support for viewing and overlaying BCF snapshot images on top of the model to compare issues
  • More stabilisation fixes on multicore IFC import
  • Support added for BCF header files
  • IFC import now supports multiple materials for a single object
  • More robust material imports for BIM authoring tools that still use the deprecated IfcPresentationStyleAssignment or have missing styles (yes, Revit, that’s you!)
  • Experimental multicore support added to IFCClash
  • The IFC2CA project has joined the IfcOpenShell umbrella!
  • BIMTester now bundles test definitions so you get tests out of the box!
  • IFCDiff now checks inverse relationships for changes too
  • IFCDiff lets you specify filters for checking specific inverse relationships
  • BCF snapshots with varying aspect ratios are now supported
  • The IfcProject entity is now a real object in Blender, which can be queried and exported with all of its metadata
  • BIMTester now supports the full Project setup MicroMVD definition
  • New optional GUI in BIMTester for people who don’t like command line
  • IFCCOBie has various fixes for strange formatting on wrapped data
  • BlenderBIM Add-on dependencies repackaged inside add-on, to allow for native Blender install and uninstall procedures
  • BlenderBIM Add-on Uninstall feature removed, as it is now obsolete in favour of native Blender uninstall process
  • IFC spatial elements without any geometric representation are now imported
  • Invalid Psets without any properties (as created by Solidworks) are now imported
  • Diff import support has now been upgraded to the non-legacy import mechanism
  • Rebar is now treated specially to prevent BREP faceting, so it retains its parametric swept disk solid behaviour, and is easier to edit, imports 10 times faster and is 10 times smaller in terms of filesize
  • IFC import has an optimised spatial tree processing algorithm to handle files which have hundreds of sites and buildings for precinct BIM models
  • Psets and Qtos can be selected from a filtered list for easy user discoverability instead of having to know the IFC spec
  • New IfcExportSettings factory to let the BlenderBIM Add-on be integrated with other Blender add-ons like ArchiPack
  • Improved ArchiPack compatibility - export parametric IFC objects from Archipack!
  • Repository code cleanup of old experimental files
  • Fix for potential infinite loop during export
  • Fixed some invalid schema exports related to void/fill/projection relationships, and material assignment related to linked duplicate objects
  • New support for import and export of the IFCZIP format
  • New support for BCF component visibility settings, colouring options, and selection sets when viewing BCF topics
  • New support for BCF orthogonal camera scale factor

v0.0.200428

  • IFC export now supports assigning objects to CAD presentation layers
  • Fix for incorrect grid placement in some scenarios
  • IFC group objects are now imported
  • Rebar profiles now share instances if it has the same radius to optimise rebar imports
  • Attributes or pset values can now be copied across to objects in bulk
  • IfcDiff now checks model precision when determining tolerances
  • IfcPatch now has a recipe to offset and rotate an entire model
  • Graphisoft XMLs can now be parsed into IFC, now maintained by OSArch
  • New hierarchical classification system interface, which can read IFC files as input
  • Uniclass and Omniclass are now bundled with the BlenderBIM Add-on, but a repository is provided to download many more classification systems
  • IFC files for property set templates can now be loaded and viewed
  • You can now author property set definitions and property templates in Blender and export them
  • New workaround for importing Civil 3D files with absolute coordinates
  • Old CSV-based pset definitions deprecated in favour of IFC template definitions
  • New feature to create/remove a section plane in real time
  • Support for as many section planes as you want at any angle
  • Section planes can be applied to a subset of objects, not all objects
  • Crash fix to IFCCSV when exporting non-existant attributes
  • IFCCSV is now able to be loaded as a library to be used in other applications
  • BlenderBIM now has a built-in UI to export and import from IFC and CSV
  • IFCCSV now supports exporting IfcClass as a data column
  • IFCCSV now supports querying inverse spatial and type relationships (e.g. all objects in this container, or all objects of this type)
  • Import workaround for vendors like DDS-CAD who create widely duplicated style items
  • UI to visually select objects to be exported to CSV
  • Section plane colour can now be changed
  • Support for viewing BCF line annotations
  • Support for viewing BCF clipping planes
  • Support for viewing BCF bitmaps
  • IfcDiff panel now prompts for export folder if you haven’t set one already
  • New feature to reload an existing IFC file

v0.0.200511

Features:

  • Artists now have an option to merge aggregates into a single object to easier object manipulation
  • Metadata about aggregates themselves are imported, including attributes, psets, and relationships
  • New option to select all objects of the same object type
  • Classification hierarchies are now imported and can be browsed in a tree viewer
  • Element classification references are now imported
  • All document metadata is now imported, not just location
  • Document information metadata can now be authored and exported
  • Document information metadata can now be imported
  • Documents that are not related to objects can now be imported and managed in a UI
  • New feature to relate document information and reference entities
  • Classifications maintain their hierarchy and do not flatten upon export, allowing for richer (i.e. semi-lightweight) classification exports
  • Users can specify a list of IFC files to be cut in a section / plan / view
  • Exclude rooms from being cut by default in a section
  • New style preset for creating construction documentation graphics
  • Grid annotations now work in 3D
  • IFC metadata (like materials) is now cached when doing a section cut to improve performance
  • New UI to add annotation objects to a view like dimensions, leaders, text, levels, etc
  • New font size support for text sizes 1.8, 2.5, 3.5, 5, and 7.
  • Rebar is more efficiently created without the need for distinct circle profile objects
  • Background renders can be cached when doing a section cut to improve performance, if you are only changing annotation
  • Users can now specify a symbol for text annotation, like a label box
  • Text annotation now supports variables to extract data from IFC files
  • Geometric representation context and subcontext definitions are now imported
  • Relevant types are now auto-selected for export for convenience
  • Export feature is now more granular to export only specific contexts
  • 2D axis representations (i.e. not 3D) are now also supported from both meshes and curves
  • Authoring and exporting footprint geomset geometry contexts is now supported
  • Authoring and exporting 2D and 3D annotation geometry contexts is now supported
  • Authoring and exporting 3D profile geometry contexts is now supported
  • Text annotations with variables can have functions applied to them - e.g. to concatenate data, format data, or anything, for example to round text annotation to the nearest decimal point, or force uppercase formatting
  • BlenderBIM Add-on importing and exporting can now be done headlessly on a server, to allow for remote server processing of BIM data. There is now a BlenderBIM Add-on continuous integration server, to process IFC test cases: https://ci.blenderbim.org/
  • You can now bulk-add smart annotations to many objects at once
  • You can now manage the geometric representation contexts per object or object type, to switch, lazy-load representations from an IFC, and create new contexts
  • IFC unit settings are now preserved on import, instead of using your Blender settings
  • You can now export _just_ a single representation to an IFC file, leaving the rest of the IFC data untouched
  • Type representations are now imported as well instead of just elements, with support for mapped geometries
  • IfcDoorStyle and IfcWindowStyle metadata (attributes, etc) from IFC2X3 are now imported
  • Annotation objects are recognised in the section cutting procedure, and not processed for a boolean cut for a more optimised cut
  • Solid line annotation objects are now supported (previously only hidden lines were supported)
  • A list of contexts are now imported for each object, and you can switch between them with a new UI
  • Section / plan / documentation cuts now recognise annotation objects, and will draw them as 2D linework
  • Stair annotations now work in 3D
  • New hatch patterns! Sexy.
  • New door tag symbol support.
  • New breakline annotation.
  • IfcAnnotation entities are now supported, to be used as you see fit.
  • Documentation sections / plans / views are now exported into IFC as groups
  • Text annotation is now exported as IfcAnnotation, with new support for IfcTextLiteralWithExtents
  • All other annotation objects (dimensions / leaders / levels / symbols / etc) are now created and exported into IfcAnnotation by default.

Fixes:

  • Fix section planes sometimes not cutting through aggregates and appearing at the cursor
  • Bug where poor material data may cause a bad section cut fixed
  • Lat/longs are now converted to decimal degrees from DMS format
  • Materials are re-used on subsequent imports if they already exist to prevent material duplication

v0.0.200525

Features:

  • New feature to convert from local to global (georeferenced) coordinates
  • Custom Qto definitions can now be exported
  • IfcClash can now patch global coordinates to aid in accuracy of clashes
  • IfcClash can now be used standalone or as a library in any project
  • IfcClash is now bundled with the BlenderBIM Add-on for Windows and Linux (any Mac volunteers who want to build it?)
  • Exporting two IfcProjects will now merge them into a single IFC project
  • Experimental IFCXML can now be imported
  • The relative placements of the spatial hierarchy are now imported and exported
  • IfcClash now supports clashing many-to-many / multiple IFC files at once
  • IfcClash now lets users configure clash tolerance
  • IfcClash now reports the worst-case distance clash in the case of multiple clashes with the same two objects
  • IfcOpenShell now has a utility module to let you conveniently do geolocation, element filtering, and getting element properties
  • IfcClash now supports element filtering, with filter rules, and/or statements, inclusion and exclusion rules
  • IfcClash now supports internal collision checks - to check for collisions within a single group of objects
  • IfcClash now supports clash sets to be defined so you don't need to setup the rules again each time
  • The BlenderBIM Add-on has a new UI to create and run clash sets with IfcClash
  • The BlenderBIM Add-on now has a feature to export and import clash sets
  • Simple integration with cove.tool for basic energy and daylight analysis
  • You can now export experimentally to IFCJSON format (Thanks Ioannis!)
  • BIMTester updated to latest MicroMVD syntax specification
  • BlenderBIM Add-on now allows you to specific relationship checks during IFC Diff execution
  • When importing the same file or updated files twice, existing rooted elements (spatial elements, objects, types, etc) are reused instead of duplicating
  • You can now export psets related to spatial elements
  • Users can now switch easily between IFC4 and IFC2X3 when exporting
  • New feature to select / highlight all clash results in your current 3D viewport

Fixes:

  • Rewrite IfcClash system to drastically increase quality of clash detection results
  • Fix bug where monetary units can cause an import to fail
  • Fix bug where an IFC without a subcontext can cause an import to fail
  • Fix bug when exporting / round-tripping IFC2X3 to IFC4 classifications
  • Fix broken export when object names are too long
  • Fix bug where importing mapped type representations may accidentally reuse other meshes
  • More lenient parsing to skip invalid representations and not stop halfway (as discovered in ArchiCAD-produced files)

v0.0.200621

Features:

  • A project is now setup automatically at export-time if you haven't done so already
  • cove.tool integration now supports submitting custom geometry for bespoke designs
  • cove.tool integration now reads north angle from project geolocation
  • Improved stability on multiprocessing import, for much faster importing, give it a spin!
  • Both materials and style overrides are retains on import, so you can see the full hierarchy of materials and styles
  • IFC geometry type is stored on import
  • IFC4 georeferencing data is now imported
  • Users are now prompted to assign a class before accessing IFC metadata
  • UI panel names are now a bit more standardised
  • Rebar is now imported without needing to enable curve import
  • New user option to enable native element geometry processing on import
  • Not just rebar, but all generic IfcSweptDiskSolid is now processed as native geometry
  • Extrusions which use IfcArbitraryClosedProfileDef is now imported as native geometry instead of being meshed
  • Extrusions which use IfcRectangleProfileDef is now imported as native geometry instead of being meshed
  • Bundled latest IfcOpenShell which a ton of new improvements
  • Native geometry now supports surface styles
  • The division between distinct representation items is now stored on import for native elements
  • It is now possible for opening elements to create a boolean relationship on import
  • Support partial importing, with whitelisting and blacklisting using IFC query / selector syntax
  • Native elements now have multiprocessing support
  • New IFCPatch recipe to split up an IFC file by building storey without data loss
  • Mesh cleaning is now disabled for large files for optimising import times
  • Optimise the creation of material slots to prevent duplicates, especially for BIM programs which abuse surface styles like Revit
  • Big optimisations to importing files - like, much, much faster
  • Faceted BREPs are now imported as native geometry instead of being meshed
  • Components of a representation, like an extrusion profile or direction are now stored on import
  • Export of extrusions are now supported, allowing native geometry round-tripping

Fixes:

  • Objects without any placements can now be imported
  • Switching contexts are now more tolerant of invalid IFC files
  • Fix bug where types can be incorrectly assigned on export if names aren't unique
  • Disable limited dissolve during mesh cleaning, which can lead to invalid material assignments
  • Fix crash when doing an "undo" operation after adding annotations
  • Fix invalid materials being potentially created when using the temporary section plane tool
  • Don't fail importing case insensitive file extensions
  • Fix issue where IfcGroup subclasses can be imported as the wrong class