Software Criativo III: Animação e Interação
Exercício 3
Animação da composição tipográfica realizada no exercício anterior. Para tal, a nova composição apresenta algumas alterações e adaptações.
Código
int nvezes = 20;
int espaco = 400/ nvezes;
int pvezes = 20;
int space = 400 / pvezes;
boolean draw_large = false;
float mx = 0;
float my = 0;
float rot = 0;
float inc = 0.001;
float rand = 0;
void setup(){
size (400,350);
mx = width/2;
my = height/2;
saveFrame("EX3_Processing_AMM.png");
}
void draw(){
background (#6B9AD3);
stroke (#8CB3E0);
translate(4,0);
loop();
//azulclaro
for (int a = 0; a < nvezes; a = a + 1){
for (int b =0; b < nvezes; b = b + 1){
line (0 + (b * espaco), 0 + (a * espaco), 10 + (b * espaco),10 + (a * espaco));
}
}
//quadrado+padrao
push();
noFill();
noStroke();
rot = rot + inc;
rectMode(CENTER);
translate (width/2, height/2);
rotate(rot);
if (draw_large){
scale (1.4);}
square(0, 0, 230);
//padrao2
push();
scale (0.6);
stroke (#034F90);
strokeWeight(3);
translate(-190,-190);
for (int a = 0; a < pvezes; a = a + 1){
for (int b =0; b < pvezes; b = b + 1){
line (0 + (b * space), 0 + (a * space), 5 + (b * space), 5 + (a * space));
}
}
pop();
pop();
////padrao3
push();
noFill();
noStroke();
rand = rand + random (-0.1, 0.1);
rectMode(CENTER);
translate (width/2, height/2);
rotate(rand);
square(0, 0, 120);
scale (0.3);
stroke (#DBF1FF);
strokeWeight(3);
translate(-190,-190);
for (int a = 0; a < pvezes; a = a + 1){
for (int b =0; b < pvezes; b = b + 1){
line (0 + (b * space), 0 + (a * space), 5 + (b * space), 5 + (a * space));
}
}
pop();
//texto
push();
PFont title_font = loadFont ("Avenir-Black-24.vlw");
translate (mx, my);
fill (255);
textSize (24);
textFont (title_font);
textAlign (CENTER);
text("Em abril, águas mil...", 0, 0);
pop();
}
void mouseMoved(){
mx = mouseX;
my = mouseY;
}
void mousePressed(){
draw_large = !draw_large;
}
void keyPressed(){
if (key == '+'){
inc = inc + 0.001;
}
if (key == '-'){
inc = inc - 0.001;
}
}