Processing Workshop 2010

Lehrveranstaltung FH Trier Intermedia Design
Sebastian Meier

Hausaufgabe Frederic Kokott

Download Processing Code

Hausaufgabe Cemre Erol

Download Processing Code

Hausaufgabe Blagova Katharina

Download Processing Code

Hausaufgabe Benjamin Simon

Download Processing Code

Sunflow Samples

Sunflow Samples
sunflowsamples.zip

Mehr Code

Zum Einlesen einer Textdatei (text.txt) die im entsprechenden Sketchfolder liegt:


String lines[];

void setup(){
 size(200, 200);
 lines = loadStrings("text.txt");
}

void draw(){
 for(int i=0; i < lines.length; i++){
  for(int j=0; j < lines[i].length(); j++){
    String buchstabe = lines[i].substring(j, j+1);

    if(buchstabe.contains("e")){
     println("Ein e gefunden");
    }

    if(buchstabe.contains("f")){
     println("Ein f gefunden");
    }

  }
 }
}

Dateiname mit Datum:


  beginRecord(PDF, "ausgabe_"+year()+"-"+month()+"-"+day()+"_"+hour()+"-"+minute()+"-"+second()+".pdf");

Bei zu vielen Vektoren lieber ein Bild statt Vektoren abspeichern:


save("bild.png");

Endaufgabe

Die Endaufgabe für den Anfänger-Kurs besteht in dem Erstellen eines Plakates für den Kurs. Das Plakat muss zum Großteil in Processing erstellt worden sein. Fine-Tuning und Schrift darf auch in einem anderem Programm gemacht werden. Das Plakat muss A2 groß sein und folgende Text-Bausteine enhalten:

Processing Workshop
FH Trier – Intermediales Design
EUER NAME #EURE MATRIKELNR
21.22.23.09.2010 ÷ 02.03.11.2010 ÷ 20.21.12.2010

Bis morgen (3.11.) müssen die Konzepte fertig sein, sodass ich euch beim Code helfen kann. Bis zum 20.12. muss der Code fertig sein und gegebenenfalls kann ich euch noch bei kleineren Problemen helfen. Am 20.12 müssen die Plakate dann auch gedruckt werden. Bitte kümmert euch vorher um die Infrastruktur um die Plakate drucken zu lassen. Am 21.12. präsentiert ihr eure Plakate. Neben dem Plakat präsentiert ihr auch den Code den Ihr genutzt habt um das Plakat zu erstellen.

Code-Beispiel zum Download

Code-Beispiel 4

int zaehler = 0;
int redColor = 0;
int greenColor = 150;
int blueColor = 255;

void setup(){
  size(400, 400);
  smooth();
}

void draw(){
  background(255);
  fill(redColor, greenColor, blueColor);
  rect(20, 20, 360, 360);

  if(zaehler == 20){
    //der befehl random(minimal wert, maximal wert) generiert
    //eine zufalls zahl die zwischen dem zu erst angegebenen
    //minimal wert und dem zuletzt angegeben maximal wert liegt.

    //da wir aber zu beginn definiert haben, dass blueColor nur
    //ganze zahlen beinhalten darf (int) muessen wir die funktion
    //round() nutzen, die die zahl die random() generiert ab- bzw.
    //aufrundet (da random auch komma-zahlen (float)) zurückliefert)
    blueColor = round(random(0, 255));
    zaehler = 0;
  }
  zaehler++;
}

Code-Beispiel 3

void setup(){
 size(400, 400);
 smooth();
}

void draw(){
  //die variable mousePressed wir automatisch vom system generiert
  //wenn die maus gedrueckt wird (egal ob rechts oder links) dann
  //ist "mousePressed" gleich "true", wenn nicht dann "false"
  if(mousePressed == false){
    background(255);
  }else{
    ellipseMode(CENTER);
    noFill();
    stroke(0);
    //die variablen "mouseX" und "mouseY" enthalten immer die aktuelle
    //maus position in unserem programm
    ellipse(mouseX, mouseY, 20, 20);
  }
}

Code-Beispiel 2

void setup(){
  size(400, 400);
  //smooth(); sorgt dafuer, dass das antialiazing aktiviert wird
  //und die objekte weichgezeichnet und nicht so pixelig sind
  smooth();
}

void draw(){
  background(255);
  //der befehl "for" leitet eine schleife ein
  //in den klammern werden darauf folgend drei dinge angebene
  //int i=0; definiert eine variable und setzt diese auf "0"
  //i < 10; definiert das die schleife so lange ausgefuehrt wird
  //wie die variable "i" kleiner 10 ist.
  //i++ gibt an, dass die variable i nachdem die schlaufe durch-
  //laufen wurde um "1" erhoeht wird.
  //in diesem fall wird die schleife also 10 mal ausgefuehrt.
  //beim ersten durchlaufen ist die variable "i" noch "0" beim
  //letzten durchlaufen ist die variable "i" dann "9" sobald die
  //variable "i" den wert "10" erreicht wird die schleife beendet
  for(int i=0; i < 10; i++){
    for(int j=0; j < 10; j++){
      //mit dem befehlt rect(x-position, y-position, breite, hoehe)
      //koennen wir ein rechteck mit der angegeben breite & hoehe
      //zeichnen, die linke obere ecke ist dabei an der angegebenen
      //x- & y-position
      rect(20+i*30, 20+j*30, 20, 20);
    }
  }
}

Kursinfo

Zum Winter-Semester-Anfang (2010/2011) wird ein Workshop zum Thema Processing angeboten. Der Workshop richtet sich an Anfänger und Fortgeschrittene. mehr erfahren

Autoren

Meta