Przemieszczanie sie obiektow (punktow) 2D

Otrzymałeś(aś) rozwiązanie do zamieszczonego zadania? - podziękuj autorowi rozwiązania! Kliknij
Matematyk_Hais
Rozkręcam się
Rozkręcam się
Posty: 50
Rejestracja: 31 mar 2015, 14:49
Podziękowania: 13 razy
Otrzymane podziękowania: 6 razy
Płeć:

Przemieszczanie sie obiektow (punktow) 2D

Post autor: Matematyk_Hais »

Witam,
Nie wiem czy to odpowiedni dział, ale głowie się cały dzień i nie mogę zrozumieć skąd się biorą takie wzory i co one reprezentują ;/
Mianowicie mam punkt, który posiada następujące wartości:

Kod: Zaznacz cały

double k = 0.01;
double x, y;   // pozycja punktu
double vx, vy;   // predkosc punktu
double oznacza, że są to liczby rzeczywiste, nie mam napisane czym jest "k"
Podczas tworzenia punktu mam w przykladzie tak:

Kod: Zaznacz cały

x = Math.random();
y = Math.random();
vx = k*(Math.random() - Math.random());
vy = k*(Math.random() - Math.random());
Gdzie Math.random() zwraca wartosc z przedzialu 0,1
i teraz zaczyna się część której nie mogę zrozumieć :/
1. Funkcja, która realizuje to, że punkt będzie krążył wokół punktu (wspolrzednych) początkowych (z wykorzystaniem funkcji tryg.):
Każdy ruch powoduje:

Kod: Zaznacz cały

double a = 0.5;
double xx = vx;
double yy = vy;
vx = xx*Math.cos(a) - yy*Math.sin(a);
vy = xx*Math.sin(a) + yy*Math.cos(a);
x += vx;
y += vy;
Nie mogę tego zrozumieć :/ Nie jest to wyjaśnione o co tutaj chodzi.
2. Z każdym ruchem lekko zmieni się wektor prędkości punktu (z wykorzystaniem funkcji tryg.):
Każdy ruch powoduje:

Kod: Zaznacz cały

double a = (Math.random()*Math.PI-Math.PI/2)*0.2;
double xx = vx;
double yy = vy;
vx = xx*Math.cos(a) - yy*Math.sin(a);
vy = xx*Math.sin(a) + yy*Math.cos(a);
x += vx;
y += vy;
Nie mogę tego zrozumieć :/ Nie jest to wyjaśnione o co tutaj chodzi.
Próbuję to sobie jakoś rozpisać, ale słabo idzie. Z tego co próbuję coś rozumować to chyba te "a" oznacza kąt podany w radianach tak?
korki_fizyka
Expert
Expert
Posty: 6261
Rejestracja: 04 lip 2014, 14:55
Podziękowania: 83 razy
Otrzymane podziękowania: 1523 razy
Płeć:

Re: Przemieszczanie sie obiektow (punktow) 2D

Post autor: korki_fizyka »

Matematyk_Hais pisze: double oznacza, że są to liczby rzeczywiste, nie mam napisane czym jest "k"
k to dokładność danych
Matematyk_Hais pisze:Z tego co próbuję coś rozumować to chyba te "a" oznacza kąt podany w radianach tak?
tak
Ostatnio zmieniony 15 lis 2017, 15:03 przez korki_fizyka, łącznie zmieniany 1 raz.
Pomoc w rozwiązywaniu zadań z fizyki, opracowanie statystyczne wyników "laborek", przygotowanie do klasówki, kolokwium, matury z matematyki i fizyki itd.
mailto: korki_fizyka@tlen.pl
korki_fizyka
Expert
Expert
Posty: 6261
Rejestracja: 04 lip 2014, 14:55
Podziękowania: 83 razy
Otrzymane podziękowania: 1523 razy
Płeć:

Re: Przemieszczanie sie obiektow (punktow) 2D

Post autor: korki_fizyka »

Matematyk_Hais pisze: Nie mogę tego zrozumieć :/ Nie jest to wyjaśnione o co tutaj chodzi.
Nie mogę tego zrozumieć :/ Nie jest to wyjaśnione o co tutaj chodzi.
Próbuję to sobie jakoś rozpisać, ale słabo idzie.
zapytaj informatyka
Pomoc w rozwiązywaniu zadań z fizyki, opracowanie statystyczne wyników "laborek", przygotowanie do klasówki, kolokwium, matury z matematyki i fizyki itd.
mailto: korki_fizyka@tlen.pl
ODPOWIEDZ