Skip to main content

Site Fill

Use Site Fill to fill an area with courtyard style buildings allowing for open space requirements.

Written by Holly Conrad Smith

Use this when you want to fill a site area with courtyard-style buildings within a flow, for example testing a typology that balances built form with open space requirements.

This flow node generates donut, E-blocks, U-Blocks, L-shapes, and I-shapes depending on the open space and building width constraints you design. As you stretch and adjust the outer polygon, the algorithm fills the area with buildings that meet your criteria.

Inputs

This node runs in Transform mode by default, so its settings come from the paired Transform node through the T connector. You can't wire a value straight into a single setting. To drive one setting from your flow, override it with a Write Property node between the Transform node and T, or switch this node to Exposed Inputs to get a connector for each setting.

Name

Abbreviation

Type

Access

Description

Input

I

Feature

Item

The input data

Transform

T

Object

Item

Transform controls (overridden by individual parameters)

Outputs

Name

Abbreviation

Type

Access

Description

Spine

S

Object

List

The spine output

Excess

E

Object

List

The excess output

How to

  1. Add the Site Fill node and the Site Fill Transform node. Connect the transform's output to the Site Fill node's T connector.

  2. Click “edit defaults” to set the starting values

  3. Edit the settings in Properties

  4. Add outputs from the S[] (spine) and E[] (excess) outputs

Connect the Site Fill Transform node

The Site Fill node needs the Site Fill Transform node connected to its T connector to use your settings. Without it, the Site Fill node runs on Giraffe's built-in default settings, and you can't change any of them in Edit Defaults or the Properties Palette.

OR

Use the exposed inputs version of the Site Fill node, which has its own connector for each setting and needs no transform node.

Site Fill Transform settings object

The Site Fill Transform node creates a set of inputs in the Properties Palette for anyone using the flow to fill out. It converts those inputs into a plain JSON object and sends it to the Site Fill node through the T connector. The object has type set to siteFill and the settings inside parameters. The values below are the built-in defaults.

{
"type": "siteFill",
"parameters": {
"width": 16,
"space": 4
}
}

The Site Fill Transform settings in the Properties Palette show lengths, areas, and volumes in your project units. The JSON always stores them in meters, square meters, and cubic meters, so a value you write into it with Write Property must use those units too.

To drive one setting from elsewhere in your flow, override it with a Write Property node. Put Write Property between the Site Fill Transform node and the T connector, and set Property to a path like parameters.width.

Settings

The site fill transform automatically adds all of the site fill settings to your properties palette. Adjust the values to change the flow result.

Width

The width of the building. The generated line is assumed to be the centerline of the building.

The line will be offset 1/2 the distance of the width from the polygon.

For example, a 24m wide building will have a 12m inset to the centerline.

Space

The required space between building edges.

Has Inner Grid

Fills the space with additional centerlines if they fit based on space requirements.

Use the Site Fill node with exposed inputs

The exposed inputs version of the Site Fill node has its own connector for each setting, so you can wire values straight in without a Site Fill Transform node.

  1. Right-click the Site Fill node and choose Expose inputs. Giraffe replaces it with the exposed inputs version.

  2. Connect your input to the Feature connector.

  3. Type a value into each setting on the node, or connect a value to its connector. A Number node, a value from another node, or an Input Parameter all work.

  4. To let people using the flow change a setting in the Properties Palette, connect an Input Parameter to it. Settings without an Input Parameter stay hidden.

To get the exposed inputs version every time you add a node, turn on Show exposed inputs when creating new nodes (the gearbox icon) in the flow editor toolbar. Settings don't carry over when you switch between versions.

Site Fill exposed inputs

Connector

What it does

Feature

Feature to process.

Width

Width of the spine lines or grid cells.

Space

Spacing between elements in the subdivision.

Inner Grid

Whether to generate an inner grid pattern within the site boundary.

Site Fill Outputs

The Site Fill transform has 2 outputs: spine and excess.

The spine = the centerline of the building

The excess = courtyard/open space between building elements.

When the open space requirement is not met, a centerline is not generated.

This allows the shape of the site polygon to control the building shape: donut, U, L, or Bar.

Create a site with multiple buildings:

Start with the subdivide lots node.

Add Site Fill to the envelope output.

Apply offset polygon or apartment to the spine output.

Did this answer your question?