domingo, 11 de março de 2018

Mami - Aula #3

Olá mais uma vez!

Dessa vez a tarefa é fazer um programa que centralize na tela dele n quadrados de 50 x 50 pixels.

Porém tem um detalhe: eu terei que usar as ferramentas de debug e tweak do processing durante o processo e explicar como usá-las para facilitar o trabalho.

O Debug eu uso para testar o resultado das fórmulas e ver se as variáveis estão mesmo recebendo os valores que tem que receber, eu fiz esse teste e está tudo ok.





Porém o programa não está funcionando como deveria, o que poderia ser?





A ferramenta tweak possibilita que eu altere variáveis dentro do void draw enquanto o programa está rodando, então eu vou levar as minhas variáveis do setup pro draw para poder mexer nelas e ver o que acontece:

 



Ok, depois desses testes eu percebi que a fórmula que define a posição x dos quadrados está uma merda, então eu farei mais alguns testes nela usando o debug, e pra isso, eu vou usar uma nova variável que vou chamar de test para receber o valor da tal fórmula para que ele possa aparecer no debug e eu possa saber o valor dela:




Dessa vez eu descobri que a posição x está começando do 92 e pulando de 100 em 100.

Bem, pra começar ela deveria estar começando do 42, então eu tenho o valor de l além do valor correto, e isso acontece por conta do +l*(i+1). O primeiro quadrado deveria considerar o i=0 e isso deveria anular as somas referentes aos novos quadrados, a minha fórmula está fracassando em matar essas adições no i=0, além de estar fazendo a soma de forma errada já que deveria estar somando +92 e não +100.

Pra resolver isso eu vou estruturar a fórmula para space + i*(l+space), dessa forma, eu vou começar do valor do space no i=0 e nos demais valores de i ou vou adicionar o respectivo múltiplo de (l+space), que é o valor do lado do quadrado mais o espaço entre quadrados;

Vamos testar isso de novo com o tweak:



Agora deu certo, o programa rodou e eu finalmente poderei dormir(vou ter pesadelo com isso, certeza).

Até a próxima!


Download do arquivo do processing aqui!

Nenhum comentário:

Postar um comentário