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

mi momento

Buenos Días

Alguno que me ayude a validar, porque mi codigo deja estaticos los circulos y no se mueven de posicion.

Por la atencion prestada, gracias.

1 respuesta

¡Hola Diegoalonsopatiñoespinosa!

¡Gracias por compartir tu código con nosotros!

Parece que el problema que estás teniendo es que los círculos no se mueven de posición. Esto se debe a que en la función "disenarCircunferencia" estás utilizando valores fijos para la posición de los círculos.

Para solucionar esto, debes utilizar las variables "x" e "y" que pasas como parámetros en la función "disenarCircunferencia". De esta manera, los círculos se moverán a la posición indicada por estas variables.

Aquí te dejo el código modificado para que puedas ver cómo se mueven los círculos:

var pantalla = document.querySelector("canvas");
var pincel = pantalla.getContext("2d");    
pincel.fillStyle = "lightgrey";
pincel.fillRect(0,0,600,400); 


var radio = 10;

function disenarCircunferencia(x,y,radio,color){
    pincel.fillStyle = color;
    pincel.beginPath();
    pincel.arc(x,y,radio,0,2*Math.PI);
    pincel.fill();
}

function limpiarPantalla(){
    pincel.clearRect(0,0,600,400);
}

var x = 0;

function actualizarPantalla(){
    limpiarPantalla();
    disenarCircunferencia(x,20,10, "blue");
    x++;
}

function disenarObjetivo(x,y){
    disenarCircunferencia(x,y,radio + 20, "red");
    disenarCircunferencia(x,y,radio + 10, "white");
    disenarCircunferencia(x,y,radio, "red");
}

function sortearPosicion(maximo){
    return Math.floor(Math.random()*maximo);
}

xAleatorio = sortearPosicion(600);
yAleatorio = sortearPosicion(400);

disenarObjetivo(xAleatorio,yAleatorio);

setInterval(actualizarPantalla,10);

Espero que esto te ayude a solucionar tu problema. Si tienes alguna otra duda, no dudes en preguntar. ¡Buenos estudios!

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