Paulina Martínez IE2012 Tarea 7

De Casiopea


Paulina Martínez IE2012 Tarea 7


TítuloPaulina Martínez IE2012 Tarea 7
Tipo de ProyectoProyecto de Curso
Palabras Clavetarea 7
Período2012-2012
Del CursoImagen Escrita 2012
CarrerasDiseño Gráfico, Diseño Industrial
Alumno(s)Paulina Martínez
ProfesorHerbert Spencer

Insect[] ins; float margin = 150;

void setup() {

size(400,400); int ynum = 2; int xnum = 2; ins = new Insect[ynum * xnum]; float ysp = (height - (2 * margin)) / ((float)ynum -1); float xsp = (width - ( 2* margin)) / ((float)xnum - 1); int c = 0; // counter for (float y = margin; y <= height - margin; y+= ysp) {

 for (float x = margin; x <= width - margin; x += xsp) {
   ins[c] = new Insect(x, y);
   c++;
 }

} smooth(); }


void draw() {

background(#1B9ABC); for (int i = 0; i < ins.length; i++) {

 ins[i].render();

} }

class Insect {

float x, y; float[][] v; // vertices int vn; // número aleatorio de vértices float tam; // tamaño float w, h; // width, height Insect(float x, float y) {

 this.x = x;
 this.y = y;
 vn = round(random(50, 80));
 v = new float[vn][10];
 tam = 50;
 init();

} void init() {

 w = tam/2;
 h = tam;
 for (int i = 0; i < vn; i++) {
   v[i][0] = random(w);
   v[i][1] = random(-h/2, +h/2);
 }

} void trace() {

 noFill();
 stroke(0);
 strokeWeight(.25);
 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 == ' ') {

 for (int i = 0; i < ins.length; i++) {
   ins[i].init();
 }

} if (key == 'a') {

 for (int i = 0; i < ins.length; i++) {
   ins[i].tam++;
   ins[i].init();
 }

}

 }