Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

Mi solucion sencilla

Tengo duda, quiero realizar este ejercicio con ciclos pero no lo logre, de otra forma solo hice algo mas sencillo, genere un array donde almaceno los colores y una variable que me indica el indice del array donde se encuentra, entonces dentro de la funcion de alterarColor, solo aumento el indice y cuando sea mayor a 2 lo reinicio a 0 para que repitan los colores.

<canvas width="600" height="400"> </canvas>

<script>
    //             0       1      2
  var colores = ['blue', 'red', 'green']; //Declarar arreglo para almacenar los colores 
  var indice = 0; //declarar variable para moverme dentro del array 
  var pantalla = document.querySelector('canvas');
  var pincel = pantalla.getContext('2d');
  pincel.fillStyle = 'grey';
  pincel.fillRect(0, 0, 600, 400);

  function dibujarCirculo(evento) {
    var x = evento.pageX - pantalla.offsetLeft;
    var y = evento.pageY - pantalla.offsetTop;
    pincel.fillStyle = colores[indice]; // trae el valor del array con el valor actual del indice 
    pincel.beginPath();
    pincel.arc(x, y, 10, 0, 2 * 3.14);
    pincel.fill();
    console.log(x + ',' + y);
  }

  function alterarColor(evento) {
    alert("Usted a cambiado de color"); //alerta para cliente 
    //ciclo para ir cambiando de colores
    if (indice < 2) { //condicion para reiniciar el indice cuando sea mayor a 2 
      indice++;
    } else {
      indice = 0; // reiniciar el indice 
    }
    return fale;
  }

  pantalla.onclick = dibujarCirculo;
  pantalla.oncontextmenu = alterarColor; //ejecutar funcion al detectar clic derecho
</script>
2 respuestas

Bueno pues descubri que asi lo hizo el profe :D

¡Hola Julio! ¡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!