Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Mi versión del código

<!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>Document</title>
</head>
<body>

    <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 puedoDibujar = false;
    var colores = ["red", "green", "blue"];
    colorActual = 2;
    function restriccion(){
        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;

    }

    pantalla.onmousemove = dibujarCirculo;

    function habilitarDibujar() {

        puedoDibujar = true;
    }

    function deshabilitarDibujar() {

        puedoDibujar = false;
    }

    pantalla.onmousedown = habilitarDibujar;

    pantalla.onmouseup = deshabilitarDibujar;

    function crearCuadrados(x, color){

        pincel.fillStyle = color;
        pincel.fillRect(x, 0, 50, 50);
    }

    crearCuadrados(0, "red");
    crearCuadrados(50, "green");
    crearCuadrados(100, "blue");

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

        //color rojo
        if ((x < 50)&&
            (x > 0)&&
            (y < 50)&&
            (y > 0)){

            colorActual = 0;
        }

        // color verde 
        if ((x < 100)&&
            (x > 50)&&
            (y < 50)&&
            (y > 0)){

            colorActual = 1;
        }

        // color azul
        if ((x < 150)&&
            (x > 100)&&
            (y < 50)&&
            (y > 0)){

            colorActual = 2;
        }
    }

    pantalla.onclick = cambiarDeColor; 

    function dibujarCirculo(evento) {

        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;

        if ((x < 160)&&
            (x > 0)&&
            (y < 55)&&
            (y > 0)){

            puedoDibujar = false;
        }

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

    }

</script>
</body>
</html>
1 respuesta

Hola Juan, espero que estés bien! Gracias por compartir tu código con nosotros. Si tiene alguna pregunta sobre el contenido del curso, estamos aquí para ayudarlo. ¡Sigue practicando! ¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓.