A tarefa de hoje é bem simples, temos que aumentar a velocidade de uma elipse em movimento em 1% toda vez que a mesma colidir com as bordas. Podemos relacionar esse trabalho com o conteúdo de M.R.U.V. ao perceber que há uma variação uniforme na velocidade do movimento da bola.
Assim, para realizarmos essa atividade, se faz necessário criar algumas variáveis, específicas para os eixos de movimentação da bola: eixo X e Y. Após, incrementamos condições para movimentação da bola, indicando que a mesma ao colidir com a parede (width e height) sua velocidade será aumentada em 1%.
Eis o código:
int r = 50;
float bolaX = 50;
float bolaY = 50;
float dX = 5;
float dY = 5;
void setup(){
size(800,600);
}
void draw(){
background(0);
fill(255);
ellipse(bolaX,bolaY,r*2,r*2);
bolaX = bolaX + dX;
bolaY = bolaY + dY;
if (bolaX >= width - r){
dX = dX + (dX/100);
dX = -dX;
}
else if(bolaX <= r){
dX = dX + (dX/100);
dX = -dX;
}
if (bolaY >= height - r){
dY = dY + (dY/100);
dY = -dY;
}
else if(bolaY <= r){
dY = dY + (dY/100);
dY = -dY;
}
println(dX,dY);
}

Nenhum comentário:
Postar um comentário