9. Reimplementar o jogo Pong para um jogador empregando a função keyPressed() e comparar o uso da mesma em relação ao emprego original da variável de sistema keyPressed. int bastaoYD = 0; int bolaX = 40; int bolaY = 300; int dX = 3; int dY = 3; void setup() { size(600, 600); } void draw() { background(0); rect(570, bastaoYD, 20, 100); ellipse(bolaX, bolaY, 20, 20); bolaX += dX; bolaY += dY; if ( bastaoYD >= 500) { bastaoYD = 500; } else if ( bastaoYD <= 0) { bastaoYD = 0; } if (bolaY <= 10 || bolaY >= 590) { dY = -dY; } else if (bolaX <= 10 || bolaX >= 590) { dX = -dX; } if ((bolaX >= 560) && (bolaY >= bastaoYD) && (bolaY <= bastaoYD +100)) { dX = -dX; } } void keyPressed() { if (keyCode == DOWN) { bas...
8. Empregando as funções dist e map do Processing, explicar e exemplificar como a posição do mouse, numa janela com proporção 4:3, pode mover um círculo no interior de uma retângulo com proporção 16:9 centralizado na tela. Código: void setup(){ size(800,600); } void draw() { background(100); noStroke(); rectMode(CENTER); fill(255); rect(width/2, height/2, 320, 180); correspondencia(); } int t = 30; void correspondencia(){ float dx = dist(0,0,mouseX,0); float dy = dist(0,0,0,mouseY); float x = map(dx, 0, width, 240+t/2, 560-t/2); float y = map(dy, 0, height, 210+t/2, 390-t/2); fill(0); ellipse(x, y, t, t); } A função dist() recebe dois pares de parâmetros, duas coordenadas, começando do eixo X e depois o eixo Y. Esta instrução funciona para conseguir a distância exata entre dois pontos. Já a função map() faz a conversão proporcional de uma distância em uma reta de tamanho ...