1
respuesta

Contando las veces que aparece el color

Compañeros, me interesa mostrar a medida que se hace clic y aparece el punto de un color diferente como mostrando un score o marcador del color elegido aleatoriamente, este score me pregunto la manera de que se valla mostrando en pantalla y no alertas

<canvas width="600" height="800">

</canvas>


<script>
    var pantalla = document.querySelector("canvas");
    var pincel = pantalla.getContext("2d");

    pincel.fillStyle = "Lightgrey"; // propiedad
    pincel.fillRect(0,0,600,800); // funcion

    function exibirAlerta(evento){
        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;
        console.log(evento);
        alert("Usted hizo un click en el punto: (" + x + ", " + y + ")");
    }
    pantalla.onclick = exibirAlerta;
    var colores = ["yellow", "blue", "red", "cyan", "orange", "white"];
    var contador = 0; 
    var contYellow = 0;
    var contBlue = 0;
    var contRed = 0;
    var contCyan = 0;
    var contOrange = 0;
    var contWhite = 0;

    function dibujarCirculo(evento){
        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;
        var color = colores[Math.round(Math.random()*colores.length)];
        // var red = Math.floor(Math.random() * 256);
        // var green = Math.floor(Math.random() * 256);
        // var blue = Math.floor(Math.random() * 256);
        // var color = "rgb(" + red + ", " + green + ", " + blue + ")";

        pincel.fillStyle = color;
        pincel.beginPath();
        pincel.arc(x, y, 10, 0, 2*Math.PI);
        pincel.fill();
        console.log(x + ", " + y);
        contador++;

        switch(color){

            case 'yellow' :
                contYellow++;
                alert("Existen " + contYellow + " puntos Amarillos");
                break;
            case "blue" :
                contBlue++;
                alert("Existen " + contBlue + " puntos Azules");
                break;
            case "cyan" :
                contCyan++;
                alert("Existen " + contCyan + " puntos Cyan");
                break;
            case "red" :
                contRed++;
                alert("Existen " + contRed + " puntos Rojos");
                break;
            case "orange" :
                contOrange++;
                alert("Existen " + contOrange + " puntos Naranjas");
                break;
            case "white" :
                contWhite++;
                alert("Existen " + contWhite + " puntos Blancos");
                break;
            };
    }

    function imprimirPonderado(){

    }
    pantalla.onclick = dibujarCirculo;
</script>
1 respuesta

Hola Estudiante, espero que estés bien! ¡Muchas gracias por su contribución! ¡Para cualquier duda, estoy disponible! Nos alegra mucho tu entusiamo, te deseamos exito en esta nueva aventura, que puedas sacar el maximo provecho! En caso de que desees compartir tus ejercicios o comentarios, dispusimos en Discord un canal exclusivo para ese fin. Te dejo este https://www.youtube.com/watch?v=ZhXdFO6SxQ4&ab_channel=AluraLatam que muestra donde puedes compartir tus actividades y si necesitas ayuda acerca del contenido de los cursos, aquí estaremos. :) ¡Vamos juntos! ¡No desanimes! :)

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