1
respuesta

Cambio de color

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

<script>

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

    var color = ["blue", "red", "green"];
    var i = 0;

    function dibujarCirculo(evento) {

        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;
        pincel.fillStyle = color[i];
        pincel.beginPath();
        pincel.arc(x, y, 10, 0, 2 * 3.14);
        pincel.fill();
        console.log(x + "," + y);
    }

    pantalla.oncontextmenu = alterarColor;

    function alterarColor() {
        i++;
        if (i == color.length) {
            i = 0;
        }
        return false;
    }

    pantalla.onclick = dibujarCirculo;


</script>
1 respuesta

Wow no lo hubiera imaginado así, muy buena solución

a mi me quedo asi

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Dibuja Circulos cuando el usuiario hace clic</title>
</head>
<body>
    <h1>Dibuja Circulos cuando el usuiario hace clic</h1>
    <canvas width="600" height="400"> </canvas>

    <script>
        var color = 0;
        var colores = ["blue",  "red", "green"];

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

        function dibujarCirculo(evento){
            var x = evento.pageX - pantalla.offsetLeft;
            var y = evento.pageY - pantalla.offsetTop;                
            pincel.beginPath();
            pincel.arc(x,y,10,0,2*3.14);
            pincel.fill();
            console.log(x + "," + y);        
        }

        function CambioColor() {
            if (color == 2)
            {
                color = 0;
            }
            else  
            {
                color++;
            }
            pincel.fillStyle = colores[color];           
            return false;
        }

        pantalla.oncontextmenu = CambioColor;

        pantalla.onclick = dibujarCirculo;

    </script> 

</body>
</html>