Blocks in Grasshopper for Rhino 8 have been greatly improved and are now full citizens.
It would be nice to have options available during IFC import in Rhino as a preset in Grasshopper, without a big script and complicated configuration. It would also be nice if it was possible to save different IFC import settings in the Rhino GUI. However, using components in Grasshopper gives a lot of freedom in defining the import exactly, and that’s what interests me the most.
It all comes down to getting the object geometry in World Origin right to create Block Definitions and their transformations, which will be used to place Block Instances. You also need to get information about which element is hosted in which.
Rhino currently does not have a good Scene Browser, so placing such small elements as Curtain Wall elements in its Block Definition makes navigation much easier and can optimize the size and speed of the file.
GG Rhino IFC Import (2 files) = 96 Block Definitions total
Rhino IFC Imported.3dm (1.2 MB)
My Grasshopper Revit import (2 Files) = 133 Block Definitions total
The difference in the number probably results from some differences between IFC and direct import from Revit. From what I see, more Curtain Wall elements are created as unique Block Definitions in Revit than when importing from IFC.
It is not crucial for me.
The challenge for me is to create such a script in Grasshopper using GeometryGym that would import IFC files and create Block Definitions and Instances just like I did with the direct import from Revit.
Grasshopper Revit-Rhino import of 2 projects
Revit - Rhino Nested Blocks Example.3dm (4.1 MB)
test model - revit to nested blocks.gh (35.7 KB)
I am posting a Grasshopper script to import elements from Revit. I would like to achieve exactly the same, but from IFC.
I can handle assigning geometry to layers, the problem is extracting Geometry and information from IFC elements in such a way that will allow defining the minimum required number of Block Definitions to create at least 1-layer nested Block Definitions.
TEST 1 TEST 2 - IFC models.zip (223.2 KB)
I’ll keep tinkering, but if you had an example of how to make even one curtain wall a Block with nested Block Instances, that would be a huge help in scaling this solution and putting together a larger, general import script.