Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Era uma vez uma bolinha que virou um bolão!

Modifiquei o alert() para informar ao usuário o nome da cor que foi selecionada ao apertar o botão direito do mouse ;)

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

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

    var i = 0;
    var colors = ['blue', 'red', 'green'];
    var cores = ['Azul', 'Vermelho', 'Verde'];
    function desenhaCirculo(evento) {

        var x = evento.pageX - tela.offsetLeft;
        var y = evento.pageY - tela.offsetTop;
        pincel.fillStyle = colors[i];
        pincel.beginPath();
        if (evento.shiftKey == true)
        {
            pincel.arc(x, y, 20, 0, 6.28);
        }
        else
        pincel.arc(x, y, 10, 0, 6.28);
        pincel.fill();
        console.log(x + ',' + y);
    }

    tela.onclick = desenhaCirculo;

    function mudaCor() {

        colors[i++]
        alert('Cor alterada para '+cores[i]);
        if (i == 2)
        {
            i = 0
        }
        return false;
    }

    tela.oncontextmenu = mudaCor;

</script>
2 respostas
solução!

Olá , como vai?

Obrigada por compartilhar sua resposta. É bom ver diferentes pontos de vista, enriquece nosso conhecimento!

Incentivamos subir seu projeto no GitHub e compartilhar via LinkedIn para aumentar seu portifólio e interações dos seus perfis.

Desta forma, priorizamos o fórum para dúvidas e sugestões relacionas aos cursos.

Abraços e ótimos estudos! =)

Se está resposta te ajudou, por favor, marca como solucionado ✓. Continúa com seus estudos :)

Aproveitei a sua ideia colega e fiz um código semelhante. Obrigado pela sua interação.

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

<script>

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

    var cores = ['blue','red','green']
    var indiceAtual = 0;
    var novoRaio =0;
    var raios = [10,20]

    function desenhaCirculo(evento) {

        var x = evento.pageX - tela.offsetLeft;
        var y = evento.pageY - tela.offsetTop;

        if (evento.shiftKey==true){
            novoRaio=1;
            }

                else {
                    novoRaio=0;

                }

        pincel.fillStyle = cores [indiceAtual];
        pincel.beginPath();
        pincel.arc(x, y, raios[novoRaio], 0, 2 * 3.14);
        pincel.fill();
        console.log(x + ',' + y);
    }

    tela.onclick = desenhaCirculo;

    function mudaCor() {

        indiceAtual++;

            if (indiceAtual>= cores.length){
                indiceAtual=0;



            }
        alert(indiceAtual);

        return false;


    }

    tela.oncontextmenu = mudaCor;

</script>