Tengo un código de ejemplo que estoy realizando para practicar con sdl ya que hace mucho tiempo que no las uso, el caso es que el código consta de tres imágenes, la primera es la central ( el sol ) la segunda rota sobre la primera ( la tierra ) con estas dos imágenes no tengo ningún problema pero con la tercera si ( la luna ) que rota sobre la segunda ( la tierra ).
El problema con la luna es que no consigo que rote sobre la tierra en un circulo perfecto.
El codigo de la tierra rotando sobre el sol es este
- Código: Seleccionar todo
x =(840/2)+(length * cos (angle));
y = (680/2)+(length * sin (angle));
imagen_earth.x = x;
imagen_earth.y = y;
Uso el seno y coseno para trazar el circulo alrededor del sol.Para trazar el circulo alrededor de la tierra uso esto.
- Código: Seleccionar todo
imagen_moon.x = (imagen_earth.x+42)+(length1 * cos ( angle ));
imagen_moon.y = (imagen_earth.y+42)+ ( length1 * sin ( angle ));
Es decir le sumo 42 a la posición de la tierra y después con length trazo el radio , pero no consigo que el movimiento de la luna sobre la tierra sea circular.
La imagen de la tierra tiene un tamaño de 84px por eso uso 42 para intentar hallar el centro de la imagen y atraves de length hacer el radio.
Espero que se entienda el problema y que me puedan echar una mano en esto.
Saludos