Tanya Castillo tarea 8

De Casiopea
TítuloTanya Castillo tarea 8
Tipo de ProyectoProyecto de Curso
Palabras Clavetarea 8
AsignaturaImagen Escrita 2012,
Del CursoImagen Escrita 2012,
CarrerasArquitectura
Alumno(s)Tanya Castillo
ProfesorHerbert Spencer
URLhttp://www.forodefotos.com/attachments/naturaleza/12983d1281113830-fotos-de-paisaje-fotos-de-paisaje.jpg

Medio:Tarea8tanyacastillo.rar /*

Imagen Escrita 2012: Construcción de un trazo (algoritmo pictórico de la luz y el color) 
  • /

import processing.pdf.*; PImage grass; // la foto: el encuadre, la escena, el paisaje


/* Al exportar un PDF, Processing translada

las unidades de pixeles a puntos tipográficos.

1 pt = 0.0352778 cm
1 cm = 28.346438837 pt
  • /

float margenIzquierda = 50; float margenArriba = 20; float margenDerecha = 50; float margenAbajo = 50; float escala;

void setup() {

 grass = loadImage("grass.jpg");   // se carga la imagen, se "construye" el objeto PImage ritoque
 size(609, 765, PDF, "tarea8tanyacastillo.pdf");  // tamaño carta
 // cálculos para escalar desde la imagen hacia el pincel
 float ancho = width - (margenIzquierda + margenDerecha);
 escala = ancho/(float)grass.width;
 noStroke();
 noLoop(); 
 background(255);

}

void draw() {

 float spacer = 3;
 // muestreo regular desde la foto, esto se puede modificar....
 for (int y = 0; y < grass.height; y += spacer) {
   for (int x = 0; x < grass.width; x += spacer) {
     // obtengo el color
     float plotX = map(x, 0, grass.width, margenIzquierda, width-margenDerecha);
     float plotY = map(y, 0, grass.height, margenArriba, margenArriba + (grass.height * escala));
     color c = grass.get(x, y);
     trazo(plotX, plotY, c, spacer);
   }
 }
 println("----->PDF done!");
 exit();

}

/*************************************** trazo ****************************************/

/* Trazo Pictórico de Ejemplo, este texto es Imagen Escrita */

void trazo(float x, float y, color c, float amp) {

 fill(c);
   
   ellipse(x, y, map(brightness(c), 0, 255, 50, amp), 
   map(brightness(c), 0, 255, amp, amp));
   

}