# Computer-generated wall pieces

Part of my studio research has involved making wall-based pieces and writing computer programs to guide me in the generation of the shapes. I based this on a simple grid format; screws set into the wall had lengths of coloured wool wrapped around and I used the program to plot the path the wool would take from one point to another. By making changes to the computer code I was able to vary how the paths were generated, sometimes only allowing vertical and horizontal lines and sometimes diagonals. I was also able to make the program favour a particular side or corner of the grid. Below is an example of one of the programs running.

//Info: http://processingjs.org/reference
// draw 18 x 14 grid, when key pressed draws a random line from
// one nail to another, alternating between horizontal and vertical

int nailx =40;
int naily =40;
int count = 1;

void setup() { // draw nails on wall 18 * 14 grid
frameRate(2);
size (680, 520);
background(32, 16, 16);
smooth();
drawgrid();
}

void draw() {

drawgrid(); // red circle first, then blue
rolldiceX();
dicey=0;
linewalk();
fill (200, 0, 0);
noStroke();
ellipse(x2, y2, 6, 6);

rolldiceY();
dicex=0;
linewalk();
fill (0, 0, 200);
noStroke();
ellipse(x2, y2, 6, 6);

if (count == 100) {
background(32, 16, 16);
count=1;
}
count = count+1;
}

void keyPressed() {
}
void drawgrid() {
smooth();
noStroke();
fill (160, 220, 230);
for (nailx=40; nailx<width;nailx = nailx+ 40) {
for (naily=40; naily=width){ // keeps line inside box
x2 = x2-((int)random(3,4)*40);
}
if (x2=height){
y2 = y2 -((int)random(3,4)*40);
}
if (y2<=0){
y2 = y2 +((int)random(3,4)*40);
}

line (x1,y1,x2,y2);

x1=x2;
y1=y2;
}

These are some examples of the imagery generated by the programs, along with the wall pieces based on them. I found this a useful way of exploring the issues of artistic labour and authorship.