Aula 15 - Olho


Tarefa
Criar um olho (círculo preto pequeno no interior de círculo branco grande) que se encontra sempre voltado para o cursor do mouse.





Para criar esse código foi bom relembrar como foi criado o código dos botões (Aula 10). No código de botões definimos os limites de um circulo usando da função que encontrava a hipotenusa.

Assim para definir o movimento do olho usei uma variável que encontrava o cateto oposto, o cateto adjacente, H que recebe a hipotenusa, tg para tangente e arcTg para o arco tangente.

No draw() coloquei os elementos que não iam se mover como o fundo da tela e a elipse que forma o espaço do olho. A elipse foi fixada no centro da tela com um raio de 100pixels.



Em seguida criei uma função chamada Hipotenusa, como o próprio nome já diz, com ela encontrei os limites da minha elipse. Quer dizer defini os limites da elipse, pois a função calcula a hipotenusa baseada na posição do mouse em relação ao centro da tela, assim a iris do olho poderia rodar toda a tela. Porém como defini anteriormente o tamanho da elipse que seria a parte branca do olho, criei uma condição que limitasse essa hipotenusa e ela nunca pudesse ser maior que 65 pixels.

Em seguida criei uma função chamada 'olho' responsável somente por definir o movimento da íris. Como decidi centralizar todos os elementos do código, usei um 'translate' para fazer com que a bolinha menor tivesse o seu ponto 0 no centro da tela.




Considerando as coordenadas polares, percebemos que no primeiro e no terceiro quadrante os valores tomam um valor negativo.

Assim na hora de criar a iris defini para a posição do mouse em relação ao eixo X que se fosse menor que a metade da tela, como a tela era de 500, defini para menor que 250, os valores da hipotenusa fossem negativos.











Verifique o código em funcionamento abaixo:


Comentários