Tarea 7

De Casiopea
Revisión del 18:34 29 may 2012 de Alexandra staig (discusión | contribs.)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)
Tarea 7


TítuloTarea 7
Tipo de ProyectoProyecto de Curso
Palabras ClaveTarea 7, imagen escrita
Período2012-
AsignaturaTaller Inicial Común 1ª y 2ª Etapa,
Del CursoImagen Escrita 2012,
CarrerasDiseño Gráfico"Diseño Gráfico" is not in the list (Arquitectura, Diseño, Magíster, Otra) of allowed values for the "Carreras Relacionadas" property., Diseño Industrial"Diseño Industrial" is not in the list (Arquitectura, Diseño, Magíster, Otra) of allowed values for the "Carreras Relacionadas" property.
Alumno(s)Alexandra Staig
ProfesorHerbert Spencer

Insertar aquí texto sin formato Insectos variados y adición de movimientos y transformaciones de ellos con teclas "q", "a" y "z".

Insect[] ins;

float margin =100;

void setup() {

size(700, 700);
int ynum = 11;
int xnum = 9;
ins = new Insect[ynum * xnum];
float ysp = (height - (2 * margin)) / ((float)ynum - .5);
float xsp = (width - (2 * margin)) / ((float)xnum - .5);
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++;
  }
} 
noSmooth();
}


void draw() {

background(255);
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(22, 20));
  v = new float[vn][7];
  tam = 50;
  init();
}
void init() {
  w = tam/5;
  h = tam;
  for (int i = 0; i < vn; i++) {
    v[i][0] = random(w);
    v[i][1] = random(-h/2.5, h/2.5);
  }
}
void trace() {
  noFill();
  stroke(#6B6156);
  strokeWeight(2);
  beginShape();
  vertex(v[0][1], v[0][1]);
  for (int i = 0; i < vn; i++) {
    curveVertex(v[i][0], v[i][1]);
  }
  vertex(v[vn-2][0], v[vn-1][1]);
  endShape();
}
void render() {
  pushMatrix();
  {
    translate(x, y);
    trace();
    scale(-1, 1);
    trace();
  }
  popMatrix();
}
}

void keyPressed() {

  if (key == 'q') {
  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();
  }}
    if (key == 'z') {
   for (int i = 0; i < ins.length; i++) {
     ins[i].tam--;
     ins[i].init();
   }saveFrame();
}
}