Animar en vez de dibujar

En realidad todos los trazados anteriores son sólo el rastro que deja un punto en movimiento. La circunferencia, la espiral o la curva que hemos dibujado antes no existen como tales. No podemos, por ejemplo, modificar su color o su tamaño una vez trazadas. Para observar lo que en realidad estamos haciendo podemos borrar a cada paso el rastro del anterior refrescando el fondo:

float n = 0;
float r = 0;
 
void setup(){
  size(300,300);
  background(#336699);
  stroke(255);
  // Aumentamos el tamaño del punto para verlo mejor
  strokeWeight(5);
}
void draw(){
  // Refrescamos el fondo en cada paso
  background(#336699);
  point(width/2 + cos(n) * sin(n/10) * r, height/2 + sin(n) * cos(n/15) * r);
  n = n + 0.05;
  r = r + 0.1;
}

También podemos hacer que el punto deje un rastro momentáneo dibujando rectángulos semitransparentes después de cada punto

float n = 0;
float r = 0;
 
void setup() {
  size(300, 300);
  background(#336699);
  stroke(255);
  strokeWeight(5);
}
void draw() {
  point(width/2 + cos(n) * sin(n/10) * r, height/2 + sin(n) * cos(n/15) * r);
  // Color y transparencia del rectángulo
  fill(#336699, 50);
  // Dibujamos el rectángulo después de mover el punto
  rect(0, 0, width, height);
  n = n + 0.05;
  r = r + 0.1;
}

¿Qué pasa si quiero dibujar una circunferencia y animarla o modificar su tamaño? En ese caso ya no nos sirve el método que hemos venido utilizando.

Leave a Comment.