Create Revit Adaptive Components From Grasshopper
Creating Revit Adaptive Components from Grasshopper has never been easier! Leverage Grasshopper's geometry engine to create parametric BIM models in Revit.
In this tutorial, we'll see how to create Adaptive Components from Grasshopper directly in Revit. We'll be using the powerful Grasshopper BIM nodes included in our Grasshopper Connector.
You can read more about our Grasshopper BIM nodes in our docs.
Of course, you can achieve similar results with Dynamo, but by using Grasshopper you'll have a much more performant geometry engine to help you parametrize your models.
Let's get started!
Prerequisites
To follow this tutorial you'll need the following:
- Grasshopper (I'm using Grasshopper for Rhino 7)
- Revit (I'm using Revit 2021)
- a Speckle account (you can get one at app.speckle.systems)
- the Speckle Connector for Grasshopper (install it via Manager)
- the Speckle Connector for Revit (install it via Manager)
- an Adaptive Family with 4 points (you can download mine here)
In Grasshopper
Create a funky surface! I just lofted 3 curves and obtained the following:
Then, we parametrize this surface and divide it into sub-surfaces by using the Divide Domain2 and Isotrim nodes:
Now we need to extract the 4 vertices of each sub-surface, let's use the Deconstruct Brep node:
The job is basically done!
It's time to drop one of the powerful Grasshopper BIM nodes to our canvas and send the points to Speckle.
Note how the AdaptiveComponent node requires the name of an adaptive family and a list of points. You can also set additional parameters, but these are optional.
Important
As with all our Grasshopper BIM and Rhino BIM nodes, the output of the node is not a BIM element, instead, we are just attaching instructions to create BIM elements to the base geometry (in this case several points).
This is why our viewer will only display a tower of points:
In Revit
In Revit, make sure you have loaded the same adaptive family defined in our Grasshopper script. Then, all you need to do is Receive from your stream:
Voilà! Job done, congratulations 🥳
Conclusion
We hope you enjoyed this tutorial and found it useful!
Speckle is an Open Source project and we really ❤️ feedback, so if you have any questions, comments, critiques, or praises please let us know on our community forum.
Subscribe to Speckle News
Stay updated on the amazing tools coming from the talented Speckle community.