5. Oktober 2012
Um repetitive Aufgaben speditiv zu erledigen lernten wir Schleifen kennen. So wird aus einem oder mehreren geometrischen Körpern im linken oberen Eck schnell ein Bildschirmfüllendes Ornament. Indem sie mit einem definierten Abstand mehrere Male neben und übereinander gezeichnet werden ensteht ein durchgängiges Muster. Die Aufgabe war es nun ein Ornament zu kreieren das beliebig lang und ohne Bruch fortgesetzt werden kann. Nachdem ich mit Kreisen und Vierecken ein Muster kreiert habe und es mich schon langsam langweilte statische Bilder zu generieren breitete sich wie gerufen die random Funktion in der Klasse aus. Plötzlich war alles am blinken und funkeln. Indem ich in der draw Funktion für die einzelnen Parameter zufällige Werte generierte welche sich 60 mal pro Sekunde ändern kam leben in die Sache. Die Ästhetik trat dabei leider in den Hintergrund, zu begeistert war ich von dieser Farbenpracht. Mich fasziniert die Möglichkeit seine Projekte als Vektorbasierte Grafiken zu speichern. So ist es einem freigestellt ob man eine Grafik auf ein riesiges Plakat druckt oder es im Web verwendet. Diesbezüglich bin ich bei meinen Recherchen im Internet auf eine Kunstrichtung gestossen, welche sich Generative Art nennt. Stundenlang bestaunte ich Bilder und Animationen welche nur auf Code basieren. Mich fasziniert dieser Spagat zwischen Chaos und Kontrolle. Obwohl man mit dem Code ein Kunstwerk in eine gewisse Richtung steuern kann, so ist das Endprodukt doch sehr unvorhersehbar und zufällig.void setup() { size(600,600); // def. fenstergroesse smooth(); // aktiviere antialiasing strokeWeight(15); // linienbreite background(100); stroke(40); fill(0, 255,0); frameRate(4); //noLoop(); } void draw() { for(int x = 0; x <= width; x+=100) { for(int y = 0; y <= height; y+=100) { pushMatrix(); translate(x,y); //scale(.5); ornament(); // funtions aufruf popMatrix(); } } } void keyPressed() { switch(key) { case 's': save("screenShot.jpg"); println("save the screen to screenShot.jpg"); break; } } // funktion void ornament () { ellipse(0 ,0 ,30,30); pushStyle(); fill(0,255,0,100); ellipse(0 ,30 ,10,10); ellipse(30 ,0 ,10,10); ellipse(-30 ,0 ,10,10); ellipse(0 ,-30 ,10,10); pushStyle(); ellipse(50 , 0 ,2,2); ellipse(0 , 50 ,2,2); pushStyle(); strokeWeight(5); fill(0,255,0, 40); ellipse(50 ,50 ,78,78); popStyle(); pushStyle(); strokeWeight(5); fill (0,random(0, 255), 0); quad(25, 25, 75, 25, 75, 75, 25, 75); popStyle(); }