Projekt symulacji rzutu ukośnego został zrealizowany z wykorzystaniem technologii HTML, CSS oraz JavaScript. Do wizualizacji trajektorii lotu wykorzystano element canvas. Głównym celem projektu jest umożliwienie użytkownikowi interaktywnego zrozumienia wpływu różnych parametrów fizycznych na tor ruchu ciała w przestrzeni dwuwymiarowej.
Użytkownik może dynamicznie zmieniać takie wartości jak: prędkość początkowa, kąt rzutu, współczynnik oporu powietrza, przyspieszenie grawitacyjne oraz szybkość działania symulacji. Obliczenia wykonywane są w czasie rzeczywistym, a wyniki prezentowane są zarówno w formie wartości liczbowych, jak i w postaci graficznej wizualizacji toru lotu.
Interfejs graficzny został zaprojektowany z myślą o czytelności i estetyce, zapewniając poprawne wyświetlanie na komputerach oraz urządzeniach mobilnych.
Symulacja opiera się na klasycznych równaniach ruchu z uwzględnieniem liniowego oporu powietrza. Obliczenia są wykonywane iteracyjnie metodą Eulera, przy czym krok czasowy dt zależny jest od szybkości działania symulacji. W każdej iteracji przeliczane są następujące wielkości:
ax = -drag * vx – przyspieszenie poziome (opór powietrza),ay = -g - drag * vy – przyspieszenie pionowe (grawitacja i opór powietrza),vx += ax * dt, vy += ay * dt – aktualizacja prędkości,x += vx * dt, y += vy * dt – aktualizacja pozycji.Uwaga: W symulacji przyjęto układ współrzędnych zgodny z konwencją płótna canvas, gdzie oś y rośnie w dół. Z tego powodu przyspieszenie grawitacyjne g ma znak ujemny.
Wartości pozycji są przeskalowane do rozmiarów płótna, a tor lotu rysowany jest w czasie rzeczywistym. Po zakończeniu lotu wyświetlane są dane podsumowujące: zasięg, maksymalna wysokość, czas lotu oraz prędkość końcowa.
Aby rozpocząć symulację, należy ustawić interesujące parametry za pomocą dostępnych suwaków i przycisków:
Po uruchomieniu animacji tor lotu będzie rysowany w czasie rzeczywistym, a dane zostaną zaktualizowane automatycznie.
F = -k*v),y rośnie w dół),dt.Dzięki tym uproszczeniom symulacja pozwala skupić się na podstawowych zależnościach fizycznych i zrozumieniu wpływu parametrów na ruch ciała.