9 March 2012

23 Repeatless 0001: Ten Cell Sateen v002

Title: Repeatless 0001: Ten Cell Sateen v002
Size: 100px x 400px (four runs shown)
Method: Processing
The next version of the process started in previous post. The code randomly places a 10px x 10px black cell in one 10px column of each 10px row but not in the same column as any of the previous 5 cells. The intention here is to use a cellular automata model to create a sateen-style pattern (there's a definition of sateen repeat at the end of a previous post). A cell cannot go black unless the five cells above it are clear.
The coding is done with a couple of one-dimensional arrays. The first holds the positions a black cell could occupy (those with five or more empty cells above) and the second has the positions that cannot be used (because there are four or less empty cells above it). As each row gets its new black cell, both arrays update to reflect the subsequent row's black cell possibilities.
The code operates on a similar principle to the code in the Gordon image, although it was written from scratch in order to develop my Processing skills. I'm dipping into Reas, C; Fry, B (2007) (1) and the Processing website to do this. Getting info on using the ArrayList command was tricky; the Array command's Functions seem too basic (but I could be missing something) and I missed the posibilities of arrays in Javascript. At some point, I think using two dimensional arrays will offer a more elegant way of coding, but I did a bit of research into Turing machines as part of this and found it useful to think of a one-dimensional array as the tape in such an idea model.
(1) Reas, C; Fry, B (2007) Processing: a programming handbook for visual designers and artists The MIT Press, Cambridge (Massachusetts)

No comments:

Post a Comment