Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML] Ruch po orbicie

Ostatnio zmodyfikowano 2013-05-31 18:01
Autor Wiadomość
usmiech
» 2013-05-30 20:57:50
Niezle, tylko czemu tak dlugo ? :)
P-84404
Monika90
» 2013-05-31 14:01:32
Niezle, tylko czemu tak dlugo ? :)
Długo??? Co masz na myśli?
P-84471
usmiech
» 2013-05-31 15:57:37
Tylko kod :), Monika90, juz kiedys napisalem, ze chyle czola I zdania nie zmienilem, jestes swietna w teorii I zazdroszcze :)
P-84480
kipi999
Temat założony przez niniejszego użytkownika
» 2013-05-31 18:01:57
Monika, jesteś wielka! Byłem już w ciemnej << removed >>, a Ty mnie wyciągnęłaś :D

Dla zainteresowanych przesyłam swój własny kod, trochę zmodyfikowany bo nie korzystałem ze struktur :) Jeszcze tylko będę musiał dodać kolizje i możliwość zatrzymania programu w każdej chwili, ale z tym powinienem dać sobie radę :)

Cg to u mnie stała grawitacji.
Jakby ktoś jeszcze pytał, to korzystam z silnika graficznego SFML.

C/C++
for( float i = 0;; i++ )
{
    // OBLICZANIE
    dx = x1 - x2;
    dy = ya1 - y2;
   
    r = sqrt(( dx * dx ) +( dy * dy ) );
   
    g = Cg * m1 * m2 /( r * r );
   
    gx = g * dx / r;
    gy = g * dy / r;
   
   
    vx1 += - gx * dt / m1;
    vy1 += - gy * dt / m1;
    vx2 += gx * dt / m2;
    vy2 += gy * dt / m2;
   
    x1 += vx1 * dt;
    ya1 += vy1 * dt;
    x2 += vx2 * dt;
    y2 += vy2 * dt;
   
   
   
    //----------------
   
    win.draw( Background );
   
    c1.setPosition( x1, ya1 );
    c1.setRadius( r1 );
    win.draw( c1 );
    c2.setPosition( x2, y2 );
    c2.setRadius( r2 );
    win.draw( c2 );
    cout << x2 << endl << y2 << endl << endl;
    win.display();
}
P-84506
1 « 2 »
Poprzednia strona Strona 2 z 2