1
respuesta

05 Diseñando con el mouse - Mucha ayuda del foro

Buenas tarde envió el código.

<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);
    pincel.fillStyle = 'red';
    pincel.fillRect(0, 00, 50, 50);
    pincel.fillStyle = 'green';
    pincel.fillRect(50, 00, 50, 50);
    pincel.fillStyle = 'blue';
    pincel.fillRect(100, 00, 50, 50);

    const paleta = ['red', 'green', 'blue'];
    var puedoDibujar = false;
    var color;

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

        if((y > 0)&&(y <= 50)){
            if((x > 0)&&(x <= 50)){
                color = paleta[0];
            }else if((x > 50)&&(x <= 100)){
                color = paleta[1];
            }else if((x > 100)&&(x <= 150)){
                color = paleta[2];
            }
        }

    }

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

        if( (x > 0)&&
            (x < 153)&&
            (y > 0)&&
            (y < 53)){
                deshabilitarDibujar();
        }

        if(puedoDibujar) {
            pincel.fillStyle = color;
            pincel.beginPath();
            pincel.arc(x, y, 5, 0, 2 * 3.14);
            pincel.fill();
        }

    }

    function habilitarDibujar() {
        puedoDibujar = true;
    }

    function deshabilitarDibujar() {
        puedoDibujar = false;
    }

    pantalla.onclick = selectColor;

    pantalla.onmousemove = dibujarCirculo;

    pantalla.onmousedown = habilitarDibujar;

    pantalla.onmouseup = deshabilitarDibujar;

</script>

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

1 respuesta

Hola Willam, espero que estés bien!

Gracias por compartir tu solución, felicitaciones!

Anexo: el foro se centra en las dudas de contenido y actividad, ¡pero apreciamos sus resultados! Te sugiero que compartas tus resultados en el canal de resultados de tu grupo en lo servidor en Discord.

Mucho éxito en todo lo que te propongas y si tienes alguna duda aquí estaremos para apoyarte.

¡Vamos juntos!

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