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

Duvida sobre a função "pincel.beginPath(); "

Se eu nao coloco a função pincel.beginPath() no código, a tela preenche o desenho que as bolinhas formaram, por que isso acontece? (por exemplo, se vc fizer tres bolinhas separadas o suficiente, cria um triangulo azul).

O codigo roda tranquilo, é só essa pergunta mesmo. Mas segue o codigo mesmo assim oaiaaohiaoh

<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);

    function exibeBola(evento){

        var x = evento.pageX - tela.offsetLeft;
        var y = evento.pageY - tela.offsetTop;
        pincel.fillStyle = 'blue';
        pincel.beginPath();
        pincel.arc(x,y, 10, 0, 2*3.14);
        pincel.fill();
        console.log(x + ', ' + y);
    }

    tela.onclick = exibeBola;
</script>
1 resposta
solução!

Pensa que toda vez que você chama o método beginPath() você está reposicionando o "pincel" do canvas na nova posição onde quer desenhar.

Se você não fizer isso o "pincel", que está posicionado onde o último circulo foi desenhado, vai ser arrastado até a posição onde você quer desenhar o próximo circulo.

Como o pincel foi arrastado ele deixou uma linha por onde ele passou. Por isso você consegue formar um triângulo.