Cell-f assembly
Inspired by the reading of AN EVOLUTIONARY ARCHITECTURE by John Frazer and the generative toolbox.
Structure generations based on John Orton Conway’s Game of Life. The goal is to explore the emerging resulting patterns of the genetic algorithm whilst stacking all generations. The automation requires an initial finite array of cells and a maximum number of generations. Their initial state (life or death) is randomly assigned based on an arbitrary threshold. The script calls a recursive routine that decides the state of each cell (life or death) depending on the state of their neighbours (8 in total) at the end of each iteration. In order to best approximate an infinite game board, the automation wraps at the edges.
The stacking generates unexpected & elaborate patterns in xyz directions. The search for emergent behaviours is on.
The initial script has been developed in Python for Rhino5. This version is not optimized but presents a clear function split. The sumNeighbours function is inspired from an elegant solution by algorithmicdesign.net
Code:
import rhinoscriptsyntax as rs
import math
import random
def RandomGenesis(intGridi,intGridj):
arrPt=[]
for i in range(intGridi):
arrj=[]
for j in range(intGridj):
rnd = random.random()
if rnd>0.97:# density threshold for initial cells
arrj.append(1)
else:
arrj.append(0)
arrPt.append(arrj)
return arrPt # arrPt is a list of i no. lists _ each list contains j no. elements (1s or 0s)
Shingles flow
Script developed to populate free-form surfaces with overlapping irregular panels otherwise known as ‘shingles’. Sculpture project for North Scotland by biomorphis.
Panelion
Inspired by DRL TEN Pavilion.
Modeled in Rhino with Paneling Tool onto loft surface.
Original panel modeled in SketchUp (see below) and imported into Rhino. Seamless joints are obtained by selecting the loft surface as a base surface after you selected the x, y & 3rd point refs. Simple.
blobtecture
Another experiment with the new PanelingTools plugin for Rhino.
UPDATE: There are now some examples and short tutorials on the mcneel labs website for PanelingTools
Here is the result of the ptPanelSurface command on a nurbs surface (the surface is just some ellipses lofted together):
and this shows the object that I used to populate that surface, with annotations showing in which order you pick points with the ptOrientToGrid command:
panelingtools building
This was made using the new plugin for rhino PanelingTools.
It can divide a surface into a grid and then orient (flow) objects along it, deforming the objects to fit as it goes.
Lots of fun!






























leave a comment