Juan Francisco Rojas: Insectos
De Casiopea
Título | Juan Francisco Rojas: Insectario |
---|---|
Tipo de Proyecto | Proyecto de Curso |
Palabras Clave | tarea 7 |
Período | 2012- |
Asignatura | Taller Inicial 1ª y 2ª Etapa, |
Del Curso | Imagen Escrita 2012, |
Carreras | Arquitectura |
Alumno(s) | Juan Francisco Rojas |
Profesor | Herbert Spencer |
- La tarea 7 consistía en crear un objeto
class{}
y construir una colección de ellos a modo de la variación de alguna característica del objeto, como por ejemplo: el tamaño, el color, la forma, etc.
- Mi trabajo consistía en un insectario de cucarachas o también un muestrario de arañas para el que quisiera verlo así, que muestra los distintos tipos de insectos o arañas, para cual fuera el caso.
- Tecla g para guardar imagenes
- Tecla espacio para cambiar los objetos
insectos[] ins; // creo un conjunto de elementos que seran los insectos float margin = 70; // margen interno de la img void setup() { size(700, 700); int yNum = 5; // cantidad de insectos en y int xNum = 5; // cantidad de insectos en x ins = new insectos[yNum * xNum]; float ysp = (height - (2 * margin)) / ((float)yNum - 1); float xsp = (width - (2 * margin)) / ((float)xNum - 1); int c = 0; // contador for (float y = margin; y <= height - margin; y+= ysp) { for (float x = margin; x <= width - margin; x += xsp) { ins[c] = new insectos(x, y); c++; } } smooth(); // suavizado de la línea } void draw() { background(#FFFFFF); // color de fondo blanco for (int i = 0; i < ins.length; i++) { ins[i].render(); } } class insectos { float x, y; float[][] v; // vertices int vn; // número aleatorio de vértices float tam; // tamaño float w, h; // width, height = ancho, alto insectos(float x, float y) { this.x = x; this.y = y; vn = round(random(10, 50)); // hace que salga un número aleatorio entre 10 y 25 v = new float[vn][2]; tam = 50; init(); } void init() { w = tam; h = tam; for (int i = 0; i < vn; i++) { v[i][0] = random(w); v[i][1] = random(-h/2, h/2); } } void trace() { fill(0); strokeWeight(.25); // grosor de la línea beginShape(); vertex(v[0][0], v[0][1]); for (int i = 0; i < vn; i++) { curveVertex(v[i][0], v[i][1]); } vertex(v[vn-1][0], v[vn-1][1]); endShape(); } void render() { pushMatrix(); { translate(x, y); trace(); scale(-1, 1); trace(); } popMatrix(); } } void keyPressed() { if (key == 'g'){ // apretar tecla g para guardar la img saveFrame("Data/insectos##.jpg"); } if (key == ' ') { // se crea un función a la tecla de espacio for (int i = 0; i < ins.length; i++) { ins[i].init(); } } }