Aula 12 - Polígonos

Tarefa
Criar uma aplicação que desenha um polígono regular centralizado na tela com a quantidade de lados informada no próprio código. Discutir a solução adotada  em seu blog.


O código é bastante simples. Primeiro é definido um tamanho de tela no setup, Nesse caso foi uma tela de 400x400.
Depois criei uma função que vai receber os parâmetros para criar os polígonos que são o raio e o numero de lados.


Como para criar um polígono é preciso ter pelo menos três lados, criei uma condição que  se fossem inseridos valores menores 3 seria criada uma elipse no lugar.
Para criar os polígonos foi preciso descobrir o angulo entre as arestas, o cálculo toma por base 2*PI, que seriam os 360 graus de um circulo, e divide pelo numero de lados que este polígono vai ter.
Geralmente durante as aulas para gerar formas especificas utilizávamos funções que chamavam diretamente uma elipse(ellipse), um triangulo(triangle) ou um quadrado(rect), mas nesse caso o código deveria ser pratico e gerar as formas mais variáveis possíveis. Assim usei a função beginShape que cria os lados do nosso poligono. Criando um mecanismo de repetição foi possível criar esses verxtex nas posições adequadas até fechar a forma. Para que os vertex seguissem nos lugares corretos foi calculado a posição do seu X e Y usando do seno e cosseno, que era atualizado de acordo com a mudança de angulação do desenho.
Um (CLOSE) no endShape foi adicionado ao final para fechar o desenho da figura.



Dentro do draw() a função foi chamada e lá são inseridos os valores do raio e da quantidade de lados. Veja alguns exemplos com o raio em 100 e variando os lados.

























Quando as formas possuíam muitos lados o polígono tendia cada vez mais a se parecer com um circulo.

Comentários