Diferencia entre revisiones de «Jaime Pérez Moena: Presentación al Lenguaje Abierto»
De Casiopea
Sin resumen de edición |
|||
Línea 2: | Línea 2: | ||
|Título=Presentación al Lenguaje Abierto, Cuarto Año | |Título=Presentación al Lenguaje Abierto, Cuarto Año | ||
|Año de Inicio=2011 | |Año de Inicio=2011 | ||
|Asignaturas Relacionadas=Presentación al lenguaje Abierto, | |||
|Profesor=Herbert Spencer, Marcelo Araya, | |Profesor=Herbert Spencer, Marcelo Araya, | ||
|Alumnos=Jaime Pérez Moena, | |Alumnos=Jaime Pérez Moena, |
Revisión del 11:38 23 abr 2011
Título | Presentación al Lenguaje Abierto, Cuarto Año |
---|---|
Período | 2011- |
Asignatura | Presentación al lenguaje Abierto, |
Alumno(s) | Jaime Pérez Moena |
Profesor | Herbert Spencer, Marcelo Araya |
Investigación del Net Art
Creación de un autorretrato desde Processing
Variación del Código para construir un pincel
A partir del código "Paisaje" que nos entrega Herbert, desde Processing, se realiza una variación de éste para generar un nuevo pincel. Con una imagen pequeña de 500 x 178 píxeles, el código toma la información del color y lo transforma en trazos con una dirección y sentido en particular. Esta imagen, al estar en sentido horizontal, ayudaba a una mejor previsualización de lo que se obtendría a partir del código, antes de ser exportado al PDF. El resultado, son grupos de trazos inscritos en superficies cuadradas. Ver Pdf. Luego el archivo es impreso a un tamaño real.
Código generador de la Imagen
<no wiki> import processing.pdf.*; PImage paisaje; float margenIzquierda = 85; float margenArriba = 85; float margenDerecha = 85; float escala; boolean pinta; int x, y; void setup() { paisaje = loadImage("jaime.jpg"); size(1100, 500); smooth(); beginRecord(PDF, "retrato"+day()+hour()+minute()+".pdf"); float ancho = width - (margenIzquierda + margenDerecha); escala = ancho / (float)paisaje.width; strokeCap(SQUARE); background(255); x = y = 0; pinta = true; } void draw() { float spacer = 8; float plotX = map(x, 0, paisaje.width, margenIzquierda, width-margenDerecha); float plotY = map(y, 0, paisaje.height, margenArriba, margenArriba + (paisaje.height * escala)); color c = paisaje.get(x,y); if(pinta) pincel(plotX, plotY, c, spacer); if (x < paisaje.width - spacer) { x+= spacer; } else if(y < paisaje.height) { x = 0; y += spacer; } if (y > paisaje.height) { println("listo!"); endRecord(); pinta = false; } } void pincel(float x, float y, color c, float amp) { int achurados = (int)map(brightness(c), 100, 255, 100, 10); for (int i = 0; i < achurados; i++) { pushMatrix(); { translate(x + random(-amp,amp), y + random (-amp,amp)); rotate(hue(c)/100 * HALF_PI); strokeWeight((255 - brightness(c))/100 * amp/10); stroke(c, 100); noFill(); float largo = brightness(c)/255 * amp; beginShape(); vertex(-amp/30, 0); bezierVertex(-largo, -saturation(c)/55, amp/8, saturation(c)/55, largo, 0); endShape(); } popMatrix(); } } </no wiki>
--Jaime Perez Moena 10:44 2 abr 2011 (CLST)