Parametric Facade by Schmidt Hammer Lassen
Reverse-engineer the computational logic behind the University of Aberdeen New Library facade, building a fully parametric Grasshopper script that generates incrementally shifting solid panels with integrated glass cutouts from a handful of sliders.
Instructor Lazar Djuric starts not with Grasshopper components but with a whiteboard-style breakdown of the design logic: why certain panels get gaps, how the horizontal translation vector is constrained to incremental fractions of the panel width, and how the gradually increasing/decreasing shift pattern avoids random jumps between positions.
The script drives a full facade from a base rectangle with sliders for panel width, number of panels along X, Y, and Z, and a rotation angle. Division points are translated horizontally using a repeating list of incremental vector lengths with per-column random shift offsets. Panels are separated into gapped and solid lists, and Region Difference subtracts the solid panels from the rectangular base to produce the glass area.
- How to structure a parametric facade from a rotatable base rectangle with panel-width and panel-count sliders
- How to constrain horizontal translation to incremental fractions (1/5 steps) of panel width
- How to build a repeating increasing/decreasing increment list with Reverse, Delete Consecutive Duplicates, and Duplicate Data
- How to apply per-column random list-shift offsets using separate random seed values for each branch
- How to use Random Range with ceiling-rounded integers to control how many times each increment value repeats
- How to separate panels into gapped and solid lists by comparing edge lengths to a threshold
- How to move vertical edge polylines inward to generate gap geometry, then loft to produce split panels
- How to use Region Difference between rectangular base panels and solid facade panels to generate the glass surface