> show canvas only <


/* built with Studio Sketchpad: 
 *   https://sketchpad.cc
 * 
 * observe the evolution of this sketch: 
 *   https://studio.sketchpad.cc/sp/pad/view/ro.ikq0pHpyZbj/rev.5
 * 
 * authors: 
 *   Scott
 *   J.D. Zamfirescu
 *   Ari Bader-Natal

 * license (unless otherwise specified): 
 *   creative commons attribution-share alike 3.0 license.
 *   https://creativecommons.org/licenses/by-sa/3.0/ 
 */ 



// Nees         
// by Dieter Meiller          
// licensed under Creative Commons Attribution-Share Alike 3.0 license.
// Work: http://openprocessing.org/visuals/?visualID=10429  
// License: http://creativecommons.org/licenses/by-sa/3.0/

// This work is a digital fake of a famous artwork of Georg Nees. 
// http://www.medienkunstnetz.de/werke/schotter/
  

int update=1;

void setup() {
  size(450,600);
  smooth();
  background(255);
  noFill();
  rectMode(CENTER);
  frameRate(20);
} 
 
void draw() {
  if (!update) return true; 
  background(255);
  int X=12+2;
  int Y=16+2;
  int rand=0;
  int rndStep=90/Y;
  int w=width/X; 
  int h=height/Y;
for (int j=2;j<Y;j++){
  rand+=rndStep;
  stroke(150);
  fill(230,150);
  for (int i=2;i<X;i++) {
    pushMatrix();
    float nearRandom=random(-rand/2,rand/2);
    translate(i*w-w/2+nearRandom/3, j*h-h/2+nearRandom/3);
    rotate(radians(nearRandom));
    rect(0,0,w,h);
    popMatrix();
  }
}
update=0;
}

void mouseClicked() {
  update=1;
}