Toolbox Interactiondesign


Portraits

Portrait

Maike Reinhardt, Generative Gestaltung Goes Analog bei Prof. Dr. Christine Goutrié

Die Portraits waren ein guter Einstieg um sich mit der Fräse besser vertraut zu machen. Als Grundlage haben wir einen Processing-Code erhalten, der die Grauwerte eines Bildes auslesen kann. Für die Fräsdatei werden die Graustufen dann in die Frästiefe übersetzt. Durch den spitzen Fräser, entstehen dann je nach Helligkeit unterschiedlich große Löcher.

Zunächst habe ich auf einfachem Karton, mit den Abständen und der maximalen Tiefe experimentiert, bis ich mit dem Ergebnis zufrieden war. Die Erkennbarkeit des Bildes war allerdings nicht optimal durch den zu niedrigen Kontrast zwischen der Oberfläche und den Löchern. In Abhängigkeit vom Betrachtungswinkel und der Entfernung ändert sich die Erkennbarkeit stark. Im nächsten Versuch habe ich dann weißes Plexiglas verwendet. Die Schutzfolie habe ich für den Fräsvorgang draufgelassen um die Löcher später mit rotem Lack einfärben zu können. Für die Erkennbarkeit ist der Kontrast zwischen dem weiß und rot optimal. Auch bei frontaler Sicht auf das Bild kann man es gut erkennen.

Allerdings bin ich von dem Material Plexiglas nicht überzeugt und habe mich für Pappe und Papier entschieden, da mich die Ästhetik und Haptik besonders anspricht. Papier war für den Zweck des Fräsens wandelbarer. Es bot sich die Möglichkeit verschieden strukturierte und farbige Papiere zu verwenden um damit das Gesamtbild zu beeinflussen. Weiter konnte ich mit Durchbrechung des Materials arbeiten. Das Material wurde dafür zwischen einem Dicken Karton unten und einer dünnen Deckschicht in die Fräse gelegt. Die Deckschicht verhindert dabei, dass ausfransen des Papieres. Wird das Bild gegen Licht gehalten ist die Erkennbarkeit sehr gut. Verwendet man die Arbeit weiter als Schablone ist die Erkennbarkeit mit der Plexiglasvariante vergleichbar, wird die Arbeit im Nachhinein geprägt wird es etwas subtiler.

Mit den Einstellungen des Programmes wird ein schwarz-weiß Bild 100 x 100 Pixeln benötigt. Soll ein größeres Bild eingelesen werden, muss die imageSize dementsprechend geändert werden. Meine Bilder habe ich dann mit einem Abstand (rasterRapp) von 3 fräsen lassen. Im Zusammenhang mit der eingestellten Frästiefe gab es ein optimales Ergebnis bei der Erkennbarkeit. Die Genauigkeit des Bildes war noch hoch genug und die Stege zwischen den Löchern sind noch nicht ausgefranzt.

Die maximale Tiefe liegt bei 3, sich die Löcher sonst überschnitten hätten. Die Mindesttiefe liegt bei 1,2 da der Fräser zunächst durch die Deckschicht durchfräsen muss. Dreht man die Werte von der Maximal- und der Mindesttiefe um erhält man ein invertiertes Bild.

PrintWriter output; 
PImage myImg;

int imageSize=100;

void setup() { 
  background(255);  
  size(100, 100);  
  noStroke();
  output = createWriter("portrait.ngc"); 
  output.println("%");
  output.println("G 54");
  myImg=loadImage("Maike.jpg");
  loadPixels();
}

void draw() {
  int rasterRapp=3;
  float maxTiefe = -3,5;
  float minTiefe = -1,2;
  for (int i=1; i<=imageSize; i+=rasterRapp) {
    for (int j=1; j<=imageSize; j+=rasterRapp) {
      float currBrightness=brightness(myImg.pixels[(i-1)*imageSize+(j-1)]);
      fill(currBrightness);
      ellipse(j, i, rasterRapp, rasterRapp);

      output.println("G0 X"+j+" Y"+i);
      // Vorschubbewegung G1 ins Material hinein je nach Brightness
      output.println("G1 Z "+(map(currBrightness, 0, 255, maxTiefe, minTiefe))+" F300");  
      output.println("G0 Z2");
    }
  }
  noLoop();
}

void mousePressed() {
  saveFrame("Portrait.png");
  output.println("M 02");
  output.println("%");
  output.flush(); 
  output.close(); 
  exit();
}

Über loadImage wird das Bild geladen. Hier muss darauf geachtet werden das die Bezeichnung im Code mit dem Bildnamen übereinstimmt und das Bild im selber Ordner liegt.


Bei einem Mausklick wird die Fräsdatei geschrieben und eine png.Datei ausgegeben. Im Anschluss wird das Programm geschlossen.

29.08.2013 | Maike |