Einblick in die generative Gestaltung mit «Processing»

Sechs Kursabende à vier Stunden an der EB Zürich

Kurskonzeption und Leitung Hanna Züllig


< back

						/*
Autor: Sandro Azzati
Kurs: Einblick in die generative Gestaltung mit processing ip971231
Kursleitung: Hanna Zuellig
Veroeffentlicht unter der creative common license Attribution-NonCommercial-ShareAlike
CC BY-NC-SA  http://creativecommons.org/licenses/
*/

//2D Array - RBG Variation

int sketch = 500; // Grösse Sketsch-Fenster
int dim = sketch/50; // Dimmension Formen
int ran1 = 0; // Wert 1 Random
int ran2 = 225; // Wert 2 Random
//int cols = width;
//int rows = height;
int cols = sketch;
int rows = sketch;
int[][] rArray = new int[cols][rows]; // Declare 2D array - rot
int[][] gArray = new int[cols][rows]; // Declare 2D array - grün
int[][] bArray = new int[cols][rows]; // Declare 2D array - blau

void setup() {
 
  size(sketch, sketch);
  noStroke();
  
  // Initialize 2D array values
  for (int i = 0; i < cols; i++) {
    for (int j = 0; j < rows; j++) {
      rArray[i][j] = int(random(ran1, ran2));
      gArray[i][j] = int(random(ran1, ran2));
      bArray[i][j] = int(random(ran1, ran2));
    }
  }
}

void draw() {
  for (int i = 0; i < cols; i++) {
    for (int j = 0; j < rows; j++) {
      variantenRGB(i, j); // Function einfügen
      rect(i*dim, j*dim, dim, dim);
    }
  }

  //zoom(dim); // Function einfügen

  if (keyPressed && key=='+') {
    dim = dim*2;
  }
  else if (keyPressed && key=='-') {
    dim = dim/2;
  }
  if (dim < 1) {      
    dim = 1;
  }
  if (dim >= sketch) {      
    dim = sketch;
   // println(dim);
  }
}

void zoom(int dim) {
  if (keyPressed && key=='+') {
    dim = dim*2;
  }
  else if (keyPressed && key=='-') {
    dim = dim/2;
  }
  if (dim <= 1 && keyPressed && key=='+') {      
    dim = dim+1;
  }
}


void variantenRGB(int i, int j) {
  if (keyPressed && key=='1') {
    fill(rArray[i][j], 0, 0); // rot
  }
  else if (keyPressed && key=='2') {
    fill(0, rArray[i][j], 0); // grün
  }
  else if (keyPressed && key=='3') {
    fill(0, 0, rArray[i][j]); // blau
  }
  else if (keyPressed && key=='4') {
    fill(rArray[i][j]); // grau
  }
  else {
    fill(rArray[i][j], gArray[i][j], bArray[i][j]); //RGB
  }
}