Autor Wątek: Połączenie dwóch punktów krzywą o zadanej minimalnej krzywiźnie.  (Przeczytany 1581 razy)

Offline koirat

  • Użytkownik

# Październik 30, 2015, 12:54:40
Aby być bardziej obrazowym powiedzmy że chce utworzyć ścieżkę po której będzie poruszał się samolot. Powiedzmy ze samolot jest już w locie i porusza się ze stałą prędkością.
Teraz chce utworzyć ścieżkę aby dostać się do konkretnego punktu w przestrzeni uwzględniając maksymalną skrętność samolotu, jego początkowy kierunek lotu oraz jego końcowy kierunek lotu.

Innymi słowy krzywa łącząca punkt A oraz B o zadanym tangensie w punkcie A i B oraz o minimalnej krzywiźnie wzdłuż.

Offline Mr. Spam

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

Offline CheshireCat

  • Użytkownik

# Październik 30, 2015, 13:49:47
Na pierwszy rzut oka wygląda mi to na krzywą Hermite'a (Hermite Spline), ale niech ktoś się wypowie jeszcze.
Krzywa Hermite'a kontrolowana jest przez warunki brzegowe na pochodne (styczne), więc to zapewni warunki na początkowy i końcowy kierunek. W środku wygląda zwykle dosyć ładnie, więc zakładam, że minimalizuje krzywiznę.

Rozumiem, że nie wchodzimy w awiacje i jak dokładnie porusza się samolot? Oby nie :)
« Ostatnia zmiana: Październik 30, 2015, 13:52:14 wysłana przez CheshireCat »

Offline koirat

  • Użytkownik

# Październik 30, 2015, 14:29:25
Akurat styczna w punkcie A i B to ten mniejszy problem ;).
Większy problem to ta krzywizna.
Podkreślam że nie chcę mieć bardziej "krzywej" krzywej niż w założeniach. Natomiast może być mniej krzywa :).

Offline koirat

  • Użytkownik

# Październik 30, 2015, 15:08:40
Narazie mam taką koncepcje.

Tworze 2 okręgi w ten sposób iż punkty A i B leżą na osobnych okręgach a kierunki w punkatch A i B są styczne do okręgów na których leżą. Okręgi te mają promień zależny od zadanej skrętności.

Następnie tworze proste które są styczne jednocześnie do jednego i drugiego okręgu.

Wybieram odpowiednią styczną (ze względu na kierunek ruch i długość) która będzie częścią prostą ścieżki.

Ścieżka powstaje z połączenia obu części okręgów i kawałka tej stycznej.

Zdaje się być to stosunkowo proste w 2D nie wiem jak będzie się to sprawdzać w 3D.

Offline Lars Kormak

  • Użytkownik

# Październik 30, 2015, 18:31:59
Bardzo ciekawe pytanie!

Gwoli ścisłości - oprócz tego, że minimalizujemy krzywiznę (tzn. wymagamy, by krzywizna była poniżej ustalonego progu), to minimalizujemy też długość krzywej, tak?

Generalnie twój pomysł z poprzedniego posta jest dobry - intuicja podpowiada mi, że faktycznie w 2D będziemy szukać krzywej, która składa się z odcinków i fragmentów okręgu. Nie wiem jakie masz ograniczenia co do początkowego i końcowego punktu, bo powyższy pomysł nie zadziała, jeżeli będą one zbyt blisko siebie (i okręgi, o których wspominasz będą na siebie nachodzić).

Offline Xender

  • Użytkownik

# Październik 30, 2015, 18:58:49
Nie wiem jakie masz ograniczenia co do początkowego i końcowego punktu, bo powyższy pomysł nie zadziała, jeżeli będą one zbyt blisko siebie (i okręgi, o których wspominasz będą na siebie nachodzić).
Wydaje mi się, że taka sytuacja jest zgodna z ograniczeniem w postaci ograniczonej skrętności samolotu - samolot zwyczajnie by się na takim zakręcie nie wyrobił.

Oczywiście poruszając się w ramach tego modelu (mając nadzieję, że jest wystarczająco bliski rzeczywistości w stosunku do potrzeb).

Offline koirat

  • Użytkownik

# Październik 30, 2015, 23:08:53
@Lars Kormak
Nie ma ograniczeń dla tych punktów może być nawet jeden na drugim z takim samym lub innym zwrotem.  I również intuicyjnie (wykonałem sobie kilka obrazków) zdaje się iż przecięcie się okręgów nie jest problemem.

[edit]
Tak staramy się oczywiście aby ścieżka była jak najkrótsza. Więc styczną należy wybrać odpowiednią. Nie wiem czy ta najkrótsza zawsze będzie tą najbardziej odpowiednią.
[/edit]
« Ostatnia zmiana: Październik 30, 2015, 23:29:59 wysłana przez koirat »