Point a flow at geometries already in your project, so a massing study or yield calculation updates the moment someone edits a building group or swaps a block. A flow can reference blocks and models, or freeze a snapshot of its own results as data.
Reference and place a block
Use blocks in a flow to place a standard building, unit, or site element across a parcel automatically, such as a townhouse type along a frontage or a parking module in every lot.
Pick a block
Every block in your project has an ID. Use an input parameter node with its type set to block, then choose the block from the Select a block dropdown. It lists every block in your project by name and outputs that block's ID. The get block id node also outputs a block's ID.
To work with every block at once, add the get block definitions node. It outputs all the block definitions in the project, keyed by block ID.
Place a block with a flow
Add an input parameter node set to block, and choose the block.
Add an insert block node. Connect the block ID to blockId.
Connect a point to position. Set rotation, scale, and mirror if you need them. Rotation defaults to 0 and scale defaults to 1.
Connect the block output to the rest of your flow.
The inserted block gets only the properties you send to its properties input. Leave inherit force properties ticked to also apply forced properties from the geometry that runs the flow.
Read the geometries inside a block
Use the evaluate block node to turn a block into the list of geometries it contains, so the rest of the flow can measure, filter, or change them. The method input sets how nested blocks are handled: deep, explode, or edit.
Learn how a block definition differs from a placed copy in Block Definitions and Block Instances.
Reference a model
Use the get gltf node to get the URL of a 3D model in glTF format. Its gltf output is the model's URL as text.
Add a node's geometry to the flow as JSON
Right-click a node and choose Embed data to bake what that node outputs right now into the flow as JSON. Use this to lock in a set of geometries, such as a site boundary or building footprints read from the project, so the flow keeps working from that copy.
On the map, select the geometry that runs the flow.
In the flow editor, right-click the node whose output you want to keep.
Choose Embed data.
Giraffe replaces the node with a Data node in the same spot. The Data node holds the node's outputs, including any geometries, as JSON, and keeps the same wires to the next nodes.
🚨 Warning: Embed data deletes the original node. The Data node is a snapshot, so it doesn't update when the source geometries change.
If the node has nothing to embed, Giraffe shows "Bake failed. Nothing to bake."