Tarea 8 Impresionista
Título | Desnudo impresionista |
---|---|
Tipo de Proyecto | Proyecto de Curso |
Palabras Clave | tarea 8 |
Período | 2012- |
Asignatura | Taller Inicial 1ª y 2ª Etapa, |
Del Curso | Imagen Escrita 2012, |
Carreras | Arquitectura |
Alumno(s) | Diego Miranda |
Profesor | Herbert Spencer |
Se determinan los valores para que el trazo siga la estética de la obra: Catedral de Ruan de Monet, otorgando al desnudo a la vez una sensación de aislamiento, como si se hallara tras un vidrio generando mayor intimidad en la escena. ________________________________________________________________________________________________________________________________________________________________
Imagen Escrita 2012: construcción de un trazo (algoritmo pictórico de la luz y el color) en base del proyecto generado por el profesor Herbert. */
import processing.pdf.*;
PImage f; // la foto: el encuadre, la escena, el paisaje PFont font; // la fuente tipográfica String[] code; // el texto del código
float margenIzquierda = 30; float margenArriba = 30; float margenDerecha = 30; float margenAbajo = 30; float escala;
void setup() {
f = loadImage("C.JPG"); // se carga la imagen, se "construye" el objeto PImage Tulips size(609, 765, PDF, "P.pdf"); // tamaño carta
// cálculos para escalar desde la imagen hacia el pincel
float ancho = width - (margenIzquierda + margenDerecha); escala = ancho/(float)f.width;
noStroke(); noLoop(); background(255);
font = createFont("Tahoma", 8); // construyo la tipografía a partir de una fuente de sistema Tahoma textFont(font, 8);
code = loadStrings("C.pde"); // cargo el código "trazo" (el pincel)
}
void draw() {
float spacer = 10;
// muestreo regular desde la foto, esto se puede modificar.... for (int y = 30; y < f.height; y += spacer) { for (int x = 25; x < f.width; x += spacer) {
// obtengo el color float plotX = map(x, 0, f.width, margenIzquierda, width-margenDerecha); float plotY = map(y, 0, f.height, margenArriba, margenArriba + (f.height * escala)); color c = f.get(x, y);
trazo(plotX, plotY, c, spacer); } } printcode(); println("PDF ready !"); exit();
}
void printcode() {
float interlinea = 0; for (int i = 0; i < code.length; i++) { // escribo cada línea de código en la pantalla text(code[i], width/4, 2 * margenArriba + f.height * escala + interlinea); interlinea += 15; }
}
_______________________________________________________________________________
TRAZO
void trazo(float x, float y, color c, float amp){ int puntos = 7;
for(int i = 0; i <= puntos; i++){ float r = red(c) + 15 ; float g = green(c) + 25 ; float b = blue(c) - 20 ; pushMatrix(); translate(x,y); float tam = random(amp); strokeWeight(4); stroke(r,g,b,90); line(random (-amp,amp),random(-amp, amp),tam,tam); popMatrix(); }
}