1
respuesta

cambiando de color

Mi solucion fue la siguiente:

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

    function exhibirAlerta(evento) {
        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;
        console.log(evento);
        alert(x + "," + y )

    }

    function dibujarCirculo(evento) {
        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;

        pincel.fillStyle = color[variacion];
        pincel.beginPath();
        pincel.arc(x,y,10,0,2*3.14);
        pincel.fill();

        console.log(x + " + " + y );


    }

    function alterarColor() {
        alert("Funcionó");
           variacion = variacion + 1;
           if (variacion >= color.length) {
               variacion = 0
           }
        return false;
    }

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

    //pantalla.onclick = exhibirAlerta
    pantalla.onclick = dibujarCirculo
    pantalla.oncontextmenu = alterarColor

</script>
1 respuesta

¡Hola Melkisedek!

En tu código veo que tienes una función llamada "alterarColor" que se ejecuta cuando se hace clic derecho en la pantalla. Esta función cambia el color del círculo que dibujas en la función "dibujarCirculo".

Sin embargo, no veo la definición de la variable "variacion" en tu código. Asegúrate de que has definido esta variable antes de usarla en la función "alterarColor".

También veo que tienes un arreglo llamado "color" que contiene los colores que se van a utilizar. Si quieres agregar más colores, solo tienes que agregarlos a este arreglo.

Espero que esto te ayude a resolver tu problema. ¡Buena suerte con tu proyecto! ¡Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios! :)