Willkommen auf unserem Seminar-Blog

Immer auf dem aktuellen Stand bleiben

Dieser Seminar-Blog befindet sich noch im Aufbau und wird in den kommenden Tagen entsprechend verfeinert.

Member Login

Lost your password?

Registration is closed

Sorry, you are not allowed to register by yourself on this site!

You must either be invited by one of our team member or request an invitation by email at viad.info {at} zhdk {dot} ch.

Stadtentwicklung in der Wüste.

5. Oktober 2012

Auf Grund der fraktalen Funktion sollten wir die Blume weiterentwickeln. Grundlage war die Idee eine Stadtentwicklung mit verschiedenen Tageszeiten zu visualieren. Ich versuchte die fraktale Entwicklung als eine Art Strassennetz zu sehen. Idee war es eine Städte zu generieren und dabei zwischen Tag und Nacht zuwechseln. Tag und Nacht können Mittels Keyboard gewechselt werden, ebenso ist es möglich die Stadt weiterwachsen zu lassen.

void setup()
{
 size(800,800); // def. fenstergroesse

randomSeed(millis()); // seed random

smooth(); // aktiviere antialiasing
 strokeWeight(5); // linienbreite

 // PI definiert das hier ein Bild eingefügt wird, img = definiert das Bild
 // welches mit loadimage, aus dem Ordner data bezogen wird
 // im Background wird die Variable Bild definiert

 PImage img; //definieren
 img = loadImage("background.png");
 background(img);

 noLoop();
}

void draw()
{

pushMatrix();
 translate(width/2, height/2); //setzt den Anfang

 wurzel(7); //Maximale Tiefe der Wurzel
 popMatrix();
}

 

void keyPressed() //Aufruf von Tastaturbefehlen
{
 //Wenn eis gedrückt Löschen der Fläche
 if (key == '1')
 {noLoop();

 // PI definiert das hier ein Bild eingefügt wird, img = definiert das Bild
 // welches mit loadimage, aus dem Ordner data bezogen wird
 // im Background wird die Variable Bild definiert

 PImage img; //definieren
 img = loadImage("background.png");
 background(img);

 int clr = (int)random(15,55);

 stroke(255,255,255,clr);
 fill(255,255,255,clr);
 }

 //Zeichnen wiederholen
 if (key == '2')
 {redraw();}

 if (key == '3')
 {

 noLoop();

 // PI definiert das hier ein Bild eingefügt wird, img = definiert das Bild
 // welches mit loadimage, aus dem Ordner data bezogen wird
 // im Background wird die Variable Bild definiert

 PImage img; //definieren
 img = loadImage("background2.png");
 background(img);

 int clr = (int)random(100,255);
 stroke(255,255,clr,30);
 fill(255,255,clr,30);
 }

}
// funktion
void wurzel(int tiefe)
{
 if(tiefe <=0) // teste ob das ende erreicht worden ist
 {
 // zeichen blueten
 pushStyle();
 int clr = (int)random(100,255);
 stroke(clr,0,0,190);
 fill(clr,0,0,190);
 popStyle();

return;
 }

// zeichne Strassen
 int x;
 int y;
 int count = (int)random(1,6);
 for(int i = 0; i < count;i++)
 {
 x = (int)random(-100,+100);
 y = -(int)random(-100,+100);

line(0,0,x,y);

pushMatrix();
 translate(x,y);
 scale(random(.15,.95));
 wurzel(tiefe-1);
 popMatrix();
 }
}