sexta-feira, 10 de maio de 2019

Exercício Ovini -RequestAmimationFrame

Segue o código do Exercício:

<!DOCTYPE html>
<html>
<head>
<title>Método window.requestAnimationFrame</title>
</head>
<body>
<canvas id="meu_canvas" width="500" height="600"></canvas>
<script>
//Canvas e contexto
canvas = document.getElementById('meu_canvas')
context = canvas.getContext('2d')

//Dados da posição e tamanho da imagem
var x = 20;
var y = 10;
var e = 32;
var d = 64;
var imagem = new Image();
imagem.src = 'img/ovni.png';

imagem.onload = function() {
requestAnimationFrame(mexerOvini);
}
//Momento Inicial
var anterior = new Date().getTime();

//Iniciar a animação
requestAnimationFrame(mexerOvini);

//Função de animação
function mexerOvini(){
//Momento Atual
var agora = new Date().getTime();

//Diferença
var decorrido = agora - anterior;

//Limpar o Canvas
context.clearRect(0, 0, canvas.width, canvas.height);

//Desenhar Ovini
context.beginPath();

context.drawImage(imagem,x,y,d,e);
var velocidade = 20;
y += velocidade * decorrido / 1000;
anterior = agora;
requestAnimationFrame(mexerOvini);
}
</script>
</body>
</html>

Nenhum comentário:

Postar um comentário