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

Os círculos das pétalas do eixo Y da flor não aparecem quando executadas a função,apenas a flor central é mostrada por completo

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

<script>

    var tela = document.querySelector('canvas');
    var pincel = tela.getContext('2d');
    pincel.fillStyle = 'lightgray';
    pincel.fillRect(0, 0, 600, 400);

    function desenhaCirculo(x, y, raio, cor) {

        pincel.fillStyle = cor;
        pincel.beginPath();
        pincel.arc(x, y, raio, 0, 2* Math.PI);
        pincel.fill();
    }

    function desenhaFlor (x, y) {

    desenhaCirculo (x, y, 20 , 'red' ); //centro da flor
    desenhaCirculo (300, y+40, 20 , 'blue' );
    desenhaCirculo (300, y-40, 20 , 'yellow' );
    desenhaCirculo (x-40, 200, 20 , 'orange' );
    desenhaCirculo (x+40, 200, 20 , 'black' );



    }

    desenhaFlor (300, 200);
    desenhaFlor (100, 200);
    desenhaFlor (500, 200);

</script>

`

1 resposta
solução!

Olá, Gustavo.

Isso está acontecendo pois você está desenhando os círculos azul e amarelo sempre na mesma coordenada de x (300) e para os círculos laranja e preto você desenha sempre na mesma coordenada y (400). Com isso o desenho acaba ficando por cima um do outro.

Para resolver, substitua 300 por x e 400 por y, na função "desenhaFlor" para que a posição varie de acordo com as informações que você passou.