int numOfSplits; float rotAmount = 2.0; void setup() { size(400,400); numOfSplits = 9; } void draw() { background(255); translate(width/2, height/2); //rect(mouseX-(width/2)-15,mouseY-(width/2)-15,30,30); pushMatrix(); //translate(width/2, height/2); for(int i = 0; i <= numOfSplits; i++){ rotate(rotAmount/PI); fill(20,20); rect(mouseX-15,mouseY-15,30,30); ellipse(mouseX-50,mouseY-50,50,50); triangle(mouseX, mouseY, mouseX-20, mouseY+10, mouseX*2, mouseY+10); quad(mouseX/2, mouseY/2, (mouseX/2)-40, mouseY/2,(mouseX/2)+70, (mouseY/2)+20, (mouseX/2)-50, (mouseY/2)+50); } popMatrix(); } void keyPressed(){ if(keyCode == LEFT){ numOfSplits = numOfSplits - 1; } if(keyCode == RIGHT){ numOfSplits = numOfSplits + 1; } if(keyCode == UP){ rotAmount = rotAmount + 0.1; } if(keyCode == DOWN){ rotAmount = rotAmount - 0.1; } }