Atividade 7
- Marcos André
- 17 de abr. de 2016
- 2 min de leitura
'Discutir, passo a passo, a criação da função
mostraBandeiraBrasil(x, y, l), considerando a Lei Federal Nº 5.700 - para tanto, criar a função intermediária losango, com base em quad.'
Como a lei descreve, as proporções da bandeira do Brasil são ilustradas a seguir:

Sabemos então, que a partir da largura dada como parâmetro da função,Que além desta, recebe a posição x,y de criação da bandeira, poderemos calcular o módulo M que será L/20.
Sabe-se, também, que a função quad, desenha o quadrilátero baseado nos pontos x,y de cada vértice seguindo a sintaxe quad(x1, y1, x2, y2, x3, y3, x4, y4).
Para calcular a posição teremos que subtrair x da metade da largura da bandeira(Que corresponde a 10m), com o espaço entre a ponta do losango e o final do quadrado verde(que corresponde a 1.7m), assim a expressão fica:
(x-10m)+(1.7m)
Para y1 teremos apenas y,tendo em vista que a ordenada corresponde ao parâmetro de entrada.
Para x2 teremos apenas x tendo em vista que a abscissa corresponde ao parâmetro de entrada.
Para y2 teremos que subtrair a posição y de entrada pela metade da altura que corresponde a 7m, e depois somar com a distância até a intersecção do quadrado verde que corresponde a 1.7m.
A expressão fica:
(y-7m)+(1.7m)
Por conseguinte, ainda teremos para x3:
(x+10m)-(1.7m)
Para y3 teremos o próprio y ,correspondendo ao parâmetro de entrada.
Para x4,o próprio x, e para y4:
(y+7m)-(1.7m)
Depois teremos a função mostraBandeiraBrasil que chamará a função intermediária losango e construirá o retângulo de lados l,a em que 14*a= l/20 ou 14m e se localizará em x-(l/2),y-(a/2).
Em seguida, será criada a esfera que se localizará no centro geométrico da figura e possuirá diâmetro 7m ou, simplesmente, a/2.
Vejamos o Código abaixo:
void setup(){ background(0); size(800,600); noStroke();
}
void losango(float x,float y,float m){
quad((x-10*m)+(1.7*m), y, x, (y-7*m)+(1.7*m), (x+10*m)-(1.7*m), y, x, (y+7*m)-(1.7*m));
}
void mostraBandeiraBrasil(float x,float y,float l){ float a=14*(l/20);
fill(1,168,96); //código da cor Verde rect(x-(l/2),y-(a/2),l,a);
fill(255,225,31); //código da cor Amarelo losango(x,y,(l/20));
fill(22,81,184); //código da cor Azul ellipse(x,y,a/2,a/2); }
void draw(){
mostraBandeiraBrasil(400,300,500);
}
Resultado Final:

Comments