Filippa Massa - Tarea 7 - 2012
De Casiopea
| Título | Filippa Massa - Tarea 7 - 2012 |
|---|---|
| Tipo de Proyecto | Proyecto de Curso |
| Palabras Clave | tarea 7 |
| Período | 2012- |
| Asignatura | Imagen Escrita 2012, |
| Del Curso | Imagen Escrita 2012, |
| Carreras | Arquitectura |
| Alumno(s) | Filippa Massa |
| Profesor | Herbert Spencer |
Insect[] ins;
float margin = 80;
void setup() {
size(800, 800);
int ynum = 11; int xnum = 9;
ins = new Insect[ynum * xnum];
float ysp = (height - (4 * margin)) / ((float)ynum - 3); float xsp = (width - (4 * margin)) / ((float)xnum - 3);
int c =0;
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(255,157,157);
for (int i = 0; i < ins.length; i++) {
ins[i].render();
}
}
class Insect {
float x, y; float[][] v; int vn; float tam; float w, h;
Insect(float x, float y) {
this.x = x;
this.y = y;
vn = round(random(18, 21));
v = new float[vn][3];
tam = 47;
init();
}
void init() {
w = tam/3;
h = tam/2;
for (int i = 0; i < vn; i++) {
v[i][0] = random(h);
v[i][1] = random(-h/3, h/2);
}
}
void trace() {
noFill();
stroke(#6F0C1E);
strokeWeight(.5);
beginShape();
vertex(v[0][0], v[0][1]);
for (int i = 0; i < vn; i++) {
curveVertex(v[i][2], v[i][1]);
}
vertex(v[vn-2][0], v[vn-1][1]);
endShape();
}
void render() {
pushMatrix();
{
translate(x, y);
trace();
scale(-2, 2);
trace();
}
popMatrix();
}
}
void keyPressed() {
if (key == 'w') {
for (int i = 0; i < ins.length; i++) {
ins[i].init();
}
}
if (key == 'e') {
for (int i = 0; i < ins.length; i++) {
ins[i].tam--;
ins[i].init();
}
}
if (key == 'r') {
for (int i = 0; i < ins.length; i++) {
ins[i].tam--;
ins[i].init();
}
}
}
