Od jakiegoś czasu używam ich jako czarnych skrzynek, dopiero uczę się matematyki, ale chciałbym uzyskać ostateczne odpowiedzi na to pytanie.
Jak dotąd jedyną korzyścią, na którą natknąłem się osobiście, jest możliwość SLERP między dwoma kątami - aby osiągnąć ten sam efekt z wektorem, którego potrzebujesz dość brzydka praca (wewnętrzne połączenie 0 i 2PI razem).
mathematics
quaternion
SirYakalot
źródło
źródło
Odpowiedzi:
Czwartorzędy rozwiązują kilka problemów elegancko:
Można obejść te problemy z innymi reprezentacjami, ale czwartorzędy dobrze pasują do ich algorytmicznej prostoty i wydajności.
źródło
Interpolation works from any start to end angle without special casing
, jest tak naprawdę szczególny przypadek, gdy nie znajdują się na tej samej półkuli hipersfery, jest to tak naprawdę szczególny przypadek, który należy wziąć pod uwagę, ponieważ zawsze istnieją 2 kierunki interpolacji do celu i chcesz wybrać właściwaThey never exhibit gimbal lock
- to nie do końca prawda. Mogą po prostu pomnożyćq(Xaxis, 0) * q(YAxis, 90) * q(Zaxis, 20)
. To prawda, że można ich użyć, aby uniknąć blokady gimbala, ale także matryce, kąty osi i inne. To nie jest unikalna właściwość czwartorzędów. W rzeczywistości możesz to zrobić z większością reprezentacji obrotu, ale z kątami eulera. Jedynym prawdziwym przesłaniem może być „Euler engles cierpi z powodu blokady gimbala”, ale może temu zapobiec wiele innych reprezentacji obrotu, nie tylko czwartorzędów.Wspomniane użycie SLERP jest szczególnym przypadkiem bardziej ogólnego atrybutu czwartorzędów: możesz płynnie interpolować różne wartości obrotu.
Podczas interpolacji wartości obrotu kątów eulera uzyskuje się dziwnie wyglądające ruchy i po prostu nie ma logicznie żadnego sposobu interpolacji wartości obrotu kąta osi (cóż, poza dwoma różnymi kątami wokół tej samej osi).
źródło