Like a honeycomb structure, an interoperability workflow weaves software together to make an efficient system. In this example, we’ll create a live floor element in Revit from a surface in Rhino.
Objectives
1. Read surface by layer name and sort by elevation in Grasshopper
2. Extract parameters (curves, level names, number of floors, and elevations) and send to Flux
3. Create a level and floor element in the Flow Tool
4. Merge level and floor element in Revit
Steps 1-2
We’ll start off with a rhino model that contains surfaces in a designated layer.
A single surface is read by index, its parameters extracted, then sent to Flux
(where the magic happens).
• Dynamic Pipeline – Set to ‘read by layer name only’
• Number slider – Select surface by index
• Flux Project – Select project
• To Flux – Send data to Flux (flow control mode: constantly)
• Area centroid
• Deconstruct Point – Extract elevation (unit Z)
• Sort List – Sort surfaces by elevation
• Brep | Plane – Extract closed planar curves
• Insert Items – Construct list of text/numerical values for level names and number (individual ID)
Step 3
• Create Level
• Create Floor – Requires closed input curves in a single list
The order of operations is levels first, floors second. That’s so the floor knows which level
it lives on!
Step 4
Using the handy Revit plugin, merge the level, and then, you guessed it, the floor.
N.B. If you’re feeling lazy, simply connect the data parameters to its respective
To Flux component and send all data at once 🙂