Udostępnij za pośrednictwem


quaternion, struktura

Czterowymiarowy wektor używany do reprezentowania obrotu.

Kwaternion może efektywnie obracać obiekt o wektorze (x, y, z) kątem theta, gdzie w = cos(theta/2). Kwestiony są zwykle używane do płynnej interpolacji między dwoma kątami, a w celu uniknięcia problemu z blokadą gimbal, który może wystąpić z kątami Eulera.

Ten typ jest dostępny tylko w języku C++. Jego odpowiednik platformy .NET to System.Numerics.Quaternion.

Konstruktory

Nazwa Opis
quaternion() Tworzy niezainicjowane kwaternion.
quaternion(float x, float y, float z, float w) Tworzy quaternion z określonymi wartościami.
quaternion(float3 vectorPart, float scalarPart) Tworzy quaternion na podstawie zmiennoprzecinka3 i skalarnego.
quaternion(Microsoft::?Graphics::?Canvas::?Numerics::?Quaternion const& value) Konwertuje element Microsoft.Graphics.Canvas.Numerics.Quaternion na quaternion .

Funkcje

Nazwa Opis
quaternion make_quaternion_from_axis_angle(float3 const& axis, float angle) Tworzy kwaternion na podstawie wektora i kąta do obracania się wokół wektora.
quaternion make_quaternion_from_yaw_pitch_roll(float yaw, float pitch, float roll) Tworzy kwaternion z określonych kątów yaw, pitch i roll.
quaternion make_quaternion_from_rotation_matrix(float4x4 const& matrix) Tworzy quaternion na podstawie macierzy obrotu.
bool is_identity(quaternion const& value) Sprawdza, czy jest to kwantacja tożsamości (bez rotacji).
float length(quaternion const& value) Oblicza długość kwaternionu.
float length_squared(quaternion const& value) Oblicza długość kwadratu kwaternionu.
float dot(quaternion const& quaternion1, quaternion const& quaternion2) Oblicza iloczyn kropki dwóch kwaternionów.
quaternion normalize(quaternion const& value) Dzieli każdy składnik kwaternionu przez długość kwaternionu.
quaternion conjugate(quaternion const& value) Oblicza sprzężenie kwaternionu.
quaternion inverse(quaternion const& value) Oblicza odwrotność kwaternionu.
quaternion slerp(quaternion const& quaternion1, quaternion const& quaternion2, float amount) Interpolacje między dwoma kwaternami przy użyciu interpolacji liniowej spherical.
quaternion lerp(quaternion const& quaternion1, quaternion const& quaternion2, float amount) Interpolacja liniowa między dwoma kwaternami.
quaternion concatenate(quaternion const& value1, quaternion const& value2) Łączy dwa kwantony; wynik reprezentuje pierwszą rotację, po której następuje druga rotacja.

Metody

Nazwa Opis
static quaternion identity() Zwraca wystąpienie kwaternionu tożsamości.

Operatorów

Nazwa Opis
quaternion operator+ (quaternion const& value1, quaternion const& value2) Dodaje dwa kwanty.
quaternion operator- (quaternion const& value1, quaternion const& value2) Odejmuje quaternion z innego quaternionu.
quaternion operator* (quaternion const& value1, quaternion const& value2) Mnoży quaternion przez inną kwadternię.
quaternion operator* (quaternion const& value1, float value2) Mnoży kwaternion przez wartość skalarną.
quaternion operator/ (quaternion const& value1, quaternion const& value2) Dzieli kwaternion przez inne kwaternion.
quaternion operator- (quaternion const& value) Przerzuca znak każdego składnika kwaternionu.
quaternion& operator+= (quaternion& value1, quaternion const& value2) W miejscu dodaje dwie kwanty.
quaternion& operator-= (quaternion& value1, quaternion const& value2) W miejscu odejmuje quaternion z innego kwaternionu.
quaternion& operator*= (quaternion& value1, quaternion const& value2) W miejscu mnoży quaternion przez inną kwaternię.
quaternion& operator*= (quaternion& value1, float value2) W miejscu mnoży kwaternion przez wartość skalarną.
quaternion& operator/= (quaternion& value1, quaternion const& value2) W miejscu dzieli kwaternion przez inną kwaternię.
bool operator== (quaternion const& value1, quaternion const& value2) Określa, czy dwa wystąpienia kwaternionu są równe.
bool operator!= (quaternion const& value1, quaternion const& value2) Określa, czy dwa wystąpienia kwaternionu nie są równe.
operator Microsoft::?Graphics::?Canvas::?Numerics::?Quaternion() const Konwertuje quaternion na Microsoft.Graphics.Canvas.Numerics.Quaternion.

Pola formularza

Nazwa Opis
float x Wartość X składnika wektora kwaternionu.
float y Wartość Y składnika wektorowego kwaternionu.
float z Wartość Z składnika wektorowego kwaternionu.
float w Składnik rotacji kwaternionu.

Wymagania

Wymaganie Wartość
Namespace Windows::Foundation::Numerics
Nagłówek
Windowsnumerics.h

Zobacz także

interfejsy API windowsnumerics.h