All projects

Configurator

House Generator in Rhino

Two rhinoscriptsyntax code samples beside the Rhino viewports they generate: a sine-wave point curve and a twisted cylinder of spheres
Fig. Learning the library — geometry driven entirely from script Code samples and viewport captures from Python Primer for Rhino (Revision 3), based on the original framework by David Rutten.

This project showcases a “House Generator”, a parametric design tool developed in Python for Rhino. Leveraging the rhinoscriptsyntax library for geometric operations and the Eto.Forms framework for the user interface, the script enables rapid generation of residential building typologies. Users can define key parameters such as building dimensions, floor plan types and fenestration sizes through a custom configurator, allowing for efficient design exploration and iteration.

The dialog exposes only the decisions that matter — length, width, plan type, two window sizes, main and internal door widths — and derives everything else. A Check button previews the resulting 2D plan with room names and dimensions before committing; Generate builds the full 3D model.

  1. PythonScripted logic and parameters
  2. rhinoscriptsyntaxGeometry · Eto.Forms interface
  3. RhinocerosModel output
Type
Individual project
Collaboration
TH OWL, Detmold
Location
Detmold, Germany
Course
TH OWL — MID Computational Design

How the plan resolves

Building dimensions and plan type drive column positions, internal walls, and the standardised internal dimensions that in turn place entrance openings, facade openings, internal door openings, windows and the staircase. Because each stage reads from the one before it, a change to overall width propagates through the whole plan rather than breaking it.

The facade uses a small piece of arithmetic instead of a fixed panel grid: the script divides the remaining length after the entrance bay and adjusts panel widths so the elevation always closes cleanly, whatever dimensions the user typed in.

Exposed parameters

  • Length
  • Width
  • Plan type
  • Window type 1
  • Window type 2
  • Main door
  • Internal door
Process spread: how rhinoscriptsyntax maps to Rhino geometry through GUIDs, the script logic workflow from dimensions to openings, the 2D plan preview, the annotated configurator dialog, and the Python source
Fig. Script logic, the GUID-based geometry relationship, the plan preview, and the annotated UI
Fig. Parametric facade and design automation in Rhino using Python and Eto.Forms