IFD:GenerativeBauhaus WS2012/Karim: Difference between revisions

From Medien Wiki
mNo edit summary
Line 4: Line 4:
Einfache Funktion um einen Punkt mit der Maus zu platzieren, klickt man mit der linken Maustaste, wird der Frame als .jpg gespeichert und der Punkt bewegt sich nicht mehr.  
Einfache Funktion um einen Punkt mit der Maus zu platzieren, klickt man mit der linken Maustaste, wird der Frame als .jpg gespeichert und der Punkt bewegt sich nicht mehr.  


[[File:punkt-0252.jpg|200px|thumb|right|border| Screenshot 1]]
[[File:punkt-0252.jpg|200px|thumb|right|border| Screenshot 1]] <br>
[[File:punkt-0492.jpg|200px|thumb|right|border| Screenshot 2]]
[[File:punkt-0492.jpg|200px|thumb|right|border| Screenshot 2]] <br>


<source lang="java">
<source lang="java">
Line 46: Line 46:
Es werden acht Punkte zufällig auf dem Canvas verteilt. Klickt man mit der Maus wird der Frame gespeichert und es werden acht neue Punkte verteilt.  
Es werden acht Punkte zufällig auf dem Canvas verteilt. Klickt man mit der Maus wird der Frame gespeichert und es werden acht neue Punkte verteilt.  


[[File:Random-0076.jpg|200px|thumb|right|border| Screenshot 1]]
[[File:Random-0076.jpg|200px|thumb|right|border| Screenshot 1]] <br>
[[File:Random-0315.jpg|200px|thumb|right|border| Screenshot 2]]
[[File:Random-0315.jpg|200px|thumb|right|border| Screenshot 2]] <br>


<source lang="java">
<source lang="java">
Line 78: Line 78:




==Linie==
==Linie==  
 
<br>


===Schwarz bis Weiß===
===Schwarz bis Weiß===
Line 85: Line 87:
Ist die Linie bei der Tonstufe 255 angelangt, startet eine weitere Linie welche die Tonwerte umkehrt.  
Ist die Linie bei der Tonstufe 255 angelangt, startet eine weitere Linie welche die Tonwerte umkehrt.  


[[File:Verlauf-0244.jpg|200px|thumb|right|border| Verlauf 1]]
[[File:Verlauf-0244.jpg|200px|thumb|right|border| Verlauf 1]] <br>
[[File:Verlauf-0402.jpg|200px|thumb|right|border| Verlauf 2]]
[[File:Verlauf-0402.jpg|200px|thumb|right|border| Verlauf 2]] <br>


<source lang="java">
<source lang="java">
Line 126: Line 128:
Es werden zufällige XY Koordinateen ausgewählt und zwischen diesen dann Linien gezeichnet.  
Es werden zufällige XY Koordinateen ausgewählt und zwischen diesen dann Linien gezeichnet.  


[[File:RandomLines-0835.jpg|200px|thumb|right|border| Random Lines 1]]
[[File:RandomLines-0835.jpg|200px|thumb|right|border| Random Lines 1]] <br>
[[File:RandomLines-0150.jpg|200px|thumb|right|border| Random Lines 2]]
[[File:RandomLines-0150.jpg|200px|thumb|right|border| Random Lines 2]] <br>


<source lang="java">
<source lang="java">
Line 156: Line 158:
   line (a,b,c,d);
   line (a,b,c,d);
}
}
</source>
==Form==
===Formkontrast, Quantitätskontrast===
<br>
Es wird ein Feld mit einer der drei Grundformen "besprenkelt". Darunter wird eine zufällig gewählte Grundform generiert um den Kontrast zu verdeutlichen.
[[File:Formen-0008.jpg|200px|thumb|right|border| Formen1]] <br>
[[File:Formen-0048.jpg|200px|thumb|right|border| Formen2]] <br>
[[File:Formen-0060.jpg|200px|thumb|right|border| Formen3]] <br>
<source lang="java">
float place = 400;
float big = 50;
float count = 0;
float KreisG = 0;
float xpos;
float ypos;
float ybig;
void setup () {
  size (500,600);
  neustart ();
}
  String[] formen = {"kreis", "rechteck", "dreieck"};
  int pick = int(random(formen.length));
 
  String[] formen2 = {"kreis", "rechteck", "dreieck"};
  int pick2 = int(random(formen2.length));
 
 
void draw () {
  translate (50,50);
  noStroke ();
  fill (0);
 
  count += 1;
 
  if (formen[pick].equals ("kreis")) {
  KreisG = random (50);
  ellipse (random (place), random (place), (KreisG), (KreisG));
  }
  if (formen[pick].equals ("rechteck")) {  rect (random (place), random (place), random (big), random (big)); 
  }
  if (formen[pick].equals ("dreieck")) {
  xpos = random(400);
  ypos = random(400);
  ybig = random (50);
  dreieck (xpos, ypos);
  }
  if (formen2[pick2].equals ("kreis")) {
    ellipse (200,475,50,50);
  }
  if (formen2[pick2].equals ("rechteck")) {
    rect (175,450,50,50);
  }
  if (formen2[pick2].equals ("dreieck")) {
    triangle (175,500,225,500,200,450);
  }
  if (big < 20) {
    big += 0.1;
  }
//  if (count >= 60) {
//  noLoop ();
//  saveFrame ("Formen-####.jpg");
//  }
  if (mousePressed) {
    noLoop ();
    saveFrame ("Formen-####.jpg");   
  }
}
void dreieck (float xpos, float ypos) {
triangle (xpos, ypos, xpos +ybig, ypos, xpos +ybig/2, ypos -ybig);
}
void neustart () {
  background (255);
  smooth ();
}
</source>
</source>

Revision as of 15:21, 13 November 2012

Punkt

Punkt mit Maus platzieren

Einfache Funktion um einen Punkt mit der Maus zu platzieren, klickt man mit der linken Maustaste, wird der Frame als .jpg gespeichert und der Punkt bewegt sich nicht mehr.

Screenshot 1


Screenshot 2


float a;
float b;

void setup() {
  size(600,600);
  smooth();
  noStroke();
  fill(0);
}

void draw() {
  if(finished) {
    background(255);
  } else {
    background(255);
    ellipse(a,b,60,60);
    a = mouseX;
    b = mouseY;
    if(mousePressed) {
      ellipse(a,b,60,60);
    }
    if(mousePressed) {
      ellipse(mouseX,mouseY,60,60);
      saveFrame("punkt-####.jpg");
      finished = true;
    } else {
      finished = false;
    }
  }
  
}


Acht zufällig platzierte Punkte

Es werden acht Punkte zufällig auf dem Canvas verteilt. Klickt man mit der Maus wird der Frame gespeichert und es werden acht neue Punkte verteilt.

Screenshot 1


Screenshot 2


float count;


void setup() {
  size(600,600);
  noStroke();
  fill(0);
  background(255);
  count = 0;

}

void draw () {
  if(count < 8) {
    float a = random(600);
    float b = random(600);
    ellipse(a,b,60,60);
    count = count + 1;  
  }
  if(mousePressed) {
    saveFrame("Random-####.jpg");
    count = 0;
    background(255);
  }
}


Linie


Schwarz bis Weiß

Eine Linie wird Schwarz gezeichnet und bewegt sich von links nach rechts, wobei sie bei jedem Schritt eine Tonstufe heller wird.
Ist die Linie bei der Tonstufe 255 angelangt, startet eine weitere Linie welche die Tonwerte umkehrt.

Verlauf 1


Verlauf 2


float a;
float b;
float c;
float d;



void setup() {
  size (255,255);
  background (255);
  a = 0;
  b = 0;
  c = 0;
  d = 255;
}

void draw () {
  if(b < 255) {
  stroke(a);
  line (b,255,b,0);
  a = a + 1;
  b = b + 1;
  } else {
      stroke(d);
      line (c,255,c,0);
      c = c + 1;
      d = d - 1;
  }
}


Random Lines

Es werden zufällige XY Koordinateen ausgewählt und zwischen diesen dann Linien gezeichnet.

Random Lines 1


Random Lines 2


float a;
float b;
float c;
float d;
float strokecolor;

int xlimit = 40;
int ylimit = 560;



void setup () {
  size (600,600);
  background(255);
}


void draw () {
  float strokecolor = random(0,0);
  float a = random (xlimit,ylimit);
  float b = random (xlimit,ylimit);
  float c = random (xlimit,ylimit);
  float d = random (xlimit,ylimit);
  stroke (strokecolor);
  line (a,b,c,d);
}


Form

Formkontrast, Quantitätskontrast


Es wird ein Feld mit einer der drei Grundformen "besprenkelt". Darunter wird eine zufällig gewählte Grundform generiert um den Kontrast zu verdeutlichen.

Formen1


Formen2


Formen3




float place = 400;
float big = 50;
float count = 0;
float KreisG = 0;
float xpos;
float ypos;
float ybig;

void setup () {
  size (500,600);
  neustart ();
}

   String[] formen = {"kreis", "rechteck", "dreieck"};
   int pick = int(random(formen.length));
   
   String[] formen2 = {"kreis", "rechteck", "dreieck"};
   int pick2 = int(random(formen2.length));
   
   
void draw () {
  translate (50,50);
  noStroke ();
  fill (0);
  
  count += 1;
   
  if (formen[pick].equals ("kreis")) {
  KreisG = random (50);
  ellipse (random (place), random (place), (KreisG), (KreisG));
  }
  if (formen[pick].equals ("rechteck")) {   rect (random (place), random (place), random (big), random (big));  
  }
  if (formen[pick].equals ("dreieck")) {
  xpos = random(400);
  ypos = random(400);
  ybig = random (50);
  dreieck (xpos, ypos);
  }
  if (formen2[pick2].equals ("kreis")) {
    ellipse (200,475,50,50);
  }
  if (formen2[pick2].equals ("rechteck")) {
    rect (175,450,50,50);
  }
  if (formen2[pick2].equals ("dreieck")) {
    triangle (175,500,225,500,200,450);
  }
  if (big < 20) {
    big += 0.1;
  }
//  if (count >= 60) {
//   noLoop ();
//   saveFrame ("Formen-####.jpg");
//  }
  if (mousePressed) {
    noLoop ();
    saveFrame ("Formen-####.jpg");    
  }

}

 void dreieck (float xpos, float ypos) {
 triangle (xpos, ypos, xpos +ybig, ypos, xpos +ybig/2, ypos -ybig);
 }
 
 void neustart () {
  background (255);
  smooth ();
 }