Abaixo, segue o código com a explicação dele como comentários.
//valores bases dados para as variáveis que sofrerão alterações na execução do código
float aDaBraun = 10;
float aumentador = 5;
void setup(){
size(600,600);
}
void draw(){
background(255);
//chamada da função com a variável estabelecida anteriormente
Braun(aDaBraun);
//adição feita a variável que controla o módulo
aDaBraun= aDaBraun + aumentador;
/*aqui, estabeleço que a variável que modifica a variável
de módulo tenha seu valor invertido a partir do momento
que o módulo passa a ter o tamanho de 50 unidades*/
if(aDaBraun >=50){
aumentador = -aumentador;
}/*aqui, quando o valor passar a ser menor que 10 unidades, o modificador
tem seu valor novamente invertido para que o logo volte a aumentar*/
else if(aDaBraun <=10){
aumentador = -aumentador;
}
}
//função que produz o logo
void Braun(float modulo){
fill(0);
//estabelecimento da posição inicial
float posicaoX = 300+modulo;
float posicaoY = 150+modulo;
noStroke();
//as duas "pernas" do "A"
rect(posicaoX, posicaoY-modulo, modulo, modulo/2);
rect(posicaoX-modulo, posicaoY, modulo, modulo*8);
rect(posicaoX+modulo, posicaoY, modulo, modulo*8);
//curvatura do "A", feita com duas circunferências
ellipse(posicaoX, posicaoY, modulo*2, modulo*2);
ellipse(posicaoX+modulo, posicaoY, modulo*2, modulo*2);
fill(255);
//preenchimento do "A"
rect(posicaoX, posicaoY, modulo, modulo+modulo/2, PI);
fill(0);
//parte de baixo do "A"
rect(posicaoX-modulo, posicaoY+(2.5*modulo), modulo*3, modulo);
}
Nenhum comentário:
Postar um comentário