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

[Proyecto] Pez Tricolo

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

<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 xRojo = 0;
    var xVerde = 50;
    var xAzul = 100;
    var yCuadrados = 0;
    var tamanoCuadrados = 50;
    var colorActual = "blue";

    function dibujarCirculo(x,y,colorActual) {

        if(puedoDibujar) {

            pincel.fillStyle = colorActual;
            pincel.beginPath();
            pincel.arc(x, y, 5, 0, 2 * Math.PI);
            pincel.fill();
        }

    }

    function dibujarCuadrado(x,y,tamano,color) {
        pincel.fillStyle = color; 
        pincel.fillRect (x,y,tamano,tamano);
        pincel.fill ();
    }

    pantalla.onmousemove = dibujarCirculo;

    function dibujarPaletaColores () {
        dibujarCuadrado(xRojo,yCuadrados,tamanoCuadrados, "red");
        dibujarCuadrado(xVerde,yCuadrados,tamanoCuadrados, "green");
        dibujarCuadrado(xAzul,yCuadrados,tamanoCuadrados, "blue");        
    }

    function habilitarDibujar() {

        puedoDibujar = true;
    }

    function deshabilitarDibujar() {

        puedoDibujar = false;
    }
//funcion para delimitar el area
    function puedoDisenarArea (xCoordenada,yCoordenada){
        if ((xCoordenada >=0)&&
            (xCoordenada < (3*tamanoCuadrados+5))&&
            (yCoordenada >=0)&&
            (yCoordenada < (tamanoCuadrados+5))){

            return false;
        } 
            else{

            return true;
        }


    }


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

        if (puedoDisenarArea(x,y)) {
                dibujarCirculo(x,y,colorActual);
        }

    }

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

        //cada condicion altera el color de la variable colorActual
        //comenzamos por la condicion del eje Y que es común para todas
        if ((y > yCuadrados) &&
            (y < (yCuadrados + tamanoCuadrados))) {

            if ((x > xRojo) &&
                (x < (xRojo + tamanoCuadrados))) {

                colorActual = "red";
                console.log(colorActual);
            }else if (( x > xVerde) &&
                (x < (xVerde + tamanoCuadrados))){
                colorActual = "green";
            }else if ((x > xAzul) &&
                (x < (xAzul + tamanoCuadrados))) {
                colorActual = "blue";
            }

        }

    }   

    pantalla.onmousemove = capturarMovimientoDelMouse;

    pantalla.onmousedown = habilitarDibujar;

    pantalla.onmouseup = deshabilitarDibujar;

    dibujarPaletaColores();

    pantalla.onclick = seleccionarColor;
</script>
1 respuesta

¡Hola Diego! ¡Deseo que estés bien!

¡Muchas Felicidades!

¡Gracias por compartir tu código con nosotros! Nos alegra mucho ver tu avance en las prácticas, éstas te darán un mayor fundamento en el aprendizaje. ¡Continua con ese mismo entusiasmo y no te desanimes!

En lo esencial, para agilizar el tiempo de respuesta que damos a ustedes, estamos priorizando el foro para postear las dudas como: errores, bugs y cualquier otro problema referente a los cursos.

En cambio, si deseas compartir tu código, ideas o actividades dispusimos en Discord un canal exclusivo para ese fin (⛓┇comparte-tu-codigo-logica) Allí, tus compañeros de estudios podrán ayudarte compartiendo conocimientos. ¡Esta interacción es muy importante para la participación de los alumnos y puede ayudarte a expandir tu red de contactos!

Te dejo éste link que muestra donde puedes compartir tus actividades

¡Te deseo mucho éxito en tus estudios! y recuerda que aquí estaremos para apoyarte!

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