no estoy muy seguro que quieres hacer, podrías dibujar algo para hacerlo más visual
primero para mover un objeto con respecto a un angulo usas seno y coseno
x += sin(alfa)*escalar
y += cos(alfa)*escalar
para simular un movimiento circular esas esto en base al angulo del circulo, aunque como es un movimiento uniforme puedes simplemente calcular la inclinación como movimiento
fijate este ejemplo, está en "java" (para processing) lo puedes pegar y
ejecutar aquíclass Circulo { //clase circulo... no importa para esto, simplemente dibuja en pantalla
float y, x, size;
color c;
Circulo(float nx, float ny, float ns, int r, int g, int b) {
y = ny;
x = nx;
size = ns;
c = color(r,g,b);
}
void update() {
fill(c)
ellipse(x, y, size, size);
}
}
Circulo base, satelite;
float alfa= 0;
void setup() {//tampoco importa, solo da las condiciones iniciales
size(500, 500);
smooth();
noStroke();
base = new Circulo(0,0,100, 255,255,0); //aqui se crea el circulo en (0,0) y diametro 100
satelite = new Circulo(150,200,20,0,0,255);//aqui el otro objeto diametro 20
}
void draw()
{
background(0,0,0);
satelite.x = base.x + sin(alfa)*base.size/2 ;
//el objeto se coloca en el x de la base, y se le suma el angulo por el radio
satelite.y = base.y + cos(alfa)*base.size/2;
//lo mismo en y
base.x += 0.1;//muevo el circulo para observar como el satelite acompaña
base.y += 0.1;
base.update();
satelite.update();
alfa += 0.03;//cambio 0.03 grados por frame
alfa %= 360; // limito a 360 grados
}