Alexander Jimenez Invernadero

De Casiopea


Planta037.jpg


TítuloAlexander Jimenez Invernadero
Tipo de ProyectoProyecto de Curso
Palabras Clavetarea 7
AsignaturaTaller Inicial Común 1ª y 2ª Etapa
Del CursoImagen Escrita 2012
CarrerasDiseño Gráfico, Diseño Industrial
Alumno(s)Alexander Jimenez
ProfesorHerbert Spencer
/*en este proyecto cada vez que se presiona la letra m crecen las plantas*/
Insect[] ins;
float margin = 70;

void setup() {
size(700, 700);

int ynum = 11;
int xnum = 9;

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(#B77716); //color cafe
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
float t; //valor mas usado

Insect(float x, float y) {
this.x = x;
this.y = y;
vn = round(random(50, 30));
v = new float[vn][2];
tam = 20;
t = 3;

init();
}

void init() {
w = tam/t; //velocidad para que se achiquen
h = tam*t; //velocidad de crecimiento
for (int i = 0; i < vn; i++) {
v[i][0] = random(w);
v[i][1] = random(-h/t, h/t);
}
}

void trace() {
noFill();
stroke(#20B716); //color verde
strokeWeight(.1); //grosor
beginShape();
vertex(v[0][0], v[0][1]);
for (int i = 0; i < vn; i++) {
curveVertex(v[i][0], v[i][1]);
curveVertex(10, 20);
}
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 == 'c') {//presionar la letra m para que crescan los bichos
for (int i = 0; i < ins.length; i++) {
ins[i].tam++;
ins[i].init();
}
}
if (key == 'a') {//presionar la letra p para que se achiquen los bichos
for (int i = 0; i < ins.length; i++) {
ins[i].tam--;
ins[i].init();
}

}


  if (key == 's') { // graba
    saveFrame("img/planta###.jpg");
  }
}