Autor Wątek: Ruch Ziemi  (Przeczytany 1131 razy)

Offline Mike

  • Użytkownik

# Czerwiec 20, 2007, 15:39:59
Witam, mam pewien problem, chodzi mi o realizację programu w OpenGL, który będzie symulował ruch Ziemi wokół Słońca.
A dokładniej chodzi mi o położenie światła (Słońca), które będzie się poruszało względem jakiegoś punktu na Ziemi.
Aby trochę ułatwić całą sprawę założyłem, że Ziemia porusza się wokół Słońca po okręgu.

Położenie światła we współrzędnych sferycznych:
 lX=R*cos(a)* cos(b);
 lY=R*cos(a)* sin(b);
 lZ=R*sin(a);
a - szer. geogr. / b - dł. geogr.

Oś ziemska jest nachylona pod kątem 66st 33min w stosunku do płaszczyzny orbity
A więc jak przekształcić współrzędne położenia światła aby uwzględnić ten kąt oraz ruch roczny Ziemi.



Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Esidar

  • Użytkownik

# Czerwiec 20, 2007, 19:09:53
Kiedyś Kopernik wstrzymał słońce a ruszył Ziemię... dzisiaj niektórzy znowu chcą wprawić w ruch słońce :D

1. Ziemia posiada swoją lokalną transformację czyli nachylenie względem słońca, obrót wokół własnej osi oraz pozycja względem słońca.

2a. Albo rysujesz cały świat w układzie lokalnym Ziemi i ze Słońcem w pozycji {0,0,0}

2b. Albo wyznaczasz macierz transformacji ziemi (na podstawie jej orientacji i położenia), odwracasz tą macierz i mnożysz przez pozycję Słońca {0,0,0}. Dostajesz pozycję Słońca w układzie lokalnym Ziemi i stąd masz pozycję światła w układzie Ziemi.

Offline Mike

  • Użytkownik

# Czerwiec 20, 2007, 21:40:40
Kiedyś Kopernik wstrzymał słońce a ruszył Ziemię... dzisiaj niektórzy znowu chcą wprawić w ruch słońce

Tak, udał ci się dowcip, i dzięki za odpowiedź  ;)

I jeszcze co do (2b) czy mógłbyś mi przybliżyć jak taka macierz miała by wyglądać?

« Ostatnia zmiana: Czerwiec 21, 2007, 11:48:02 wysłana przez Mike »