Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Tela de descanço frenética :s

Eu resolvi juntar o movimento X e pulsação com movimento no Y achando que ia ficar em zig-zag, mas ficou igualzinho uma tela de descanso, só tem que diminuir o setInterval

<canvas width="600" height="400"></canvas>

<script>
    var tela = document.querySelector('canvas');
    var pincel = tela.getContext('2d');

    function desenhaCirculo(x, y, r,){

        pincel.fillStyle = 'blue';
        pincel.beginPath();
        pincel.arc(x, y, r, 0, 2 * Math.PI);
        pincel.fill();
    }

    function limpaTela(){
        pincel.clearRect(0,0,600,400);
    }

    var x = 0;
    var r = 20;
    var y = 0;
        //vai e volta VAR
    var sentido = 1
        //pulsa VAR
    var pulsa = 1
        //altura VAR
    var altura = 1

    function atualizaTela(){
        limpaTela();

        //vai e volta
        if(x > 600){
            sentido = -1;
        }else if(x < 0){
            sentido = 1;
        }

        //pulsa
        if(r > 40){
            pulsa = -1;
        }else if(r < 20){
            pulsa = 1;
        }

        //altura
        if(y > 400){
            altura = -1;
            console.log('sobe')
        }else if(y < 0){
            altura = 1;
            console.log('desce')
        }


        desenhaCirculo(x, y, r);
        x = x + sentido;        
        r = r + pulsa;    
        y = y + altura;

    }
    setInterval(atualizaTela, 1);

</script>
1 resposta
solução!

Oi Gabriel

Muito bom! Parabéns pelo empenho nos estudos!

Continue praticando e qualquer dúvida pode contar com a gente.