Friday, 2 August 2013

Dynamo - Randomize and Export Image

So, once you have a way of generating random numbers and saving screenshots in Dynamo, you can generate this kind of thing:


I was interested in exploring these folded, origami-like stadium roof forms. Technically, this is an adaptive component repeated on a divided path. The adaptive component has three parameters: Twist, Fold and Bump; and the number of divisions in the path is parameterised as well. Which gives me a design space with four dimensions, containing a wide variety of forms:


Of course, with a bit of Dynamo, you can generate as many variations as you need:


The neat thing you’ll notice about the images is that they each include a readout of the values of the four parameters that generated that particular form, together with an index value. These readouts are made with model text, embedded in the mass family and parameterised. When the code sets the parameter values on the form, it also sets the parameter values on the text readouts.

Because I was interested in trying a selective, evolutionary mechanism for exploring this design space, I made Dynamo write out a text file:


Then, when I had selected the forms that had the right ‘feel’ and were in the right part of the design space:


I could select the relevant lines from the text file:


And then mix and combine these parameter values to create a second generation that explored this part of the design space in more detail:


The forms in the Second Generation are more alike than those in the First Generation, because they come from a smaller region of the design space. With subsequent generations, by selecting just the forms that appeal, I could focus in on smaller and smaller regions. And quickly zero in on the ‘ideal’ form from a large design space.