Quaternion Struktura
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje wektor używany do kodowania trójwymiarowych rotacji fizycznych.
public value class Quaternion : IEquatable<System::Numerics::Quaternion>
public struct Quaternion : IEquatable<System.Numerics.Quaternion>
type Quaternion = struct
Public Structure Quaternion
Implements IEquatable(Of Quaternion)
- Dziedziczenie
- Implementuje
Uwagi
Struktura Quaternion służy do efektywnego obracania obiektu o wektorze (x,y,z) według kąta theta, gdzie:
w = cos(theta/2)
Konstruktory
Quaternion(Single, Single, Single, Single) |
Konstruuje quaternion z określonych składników. |
Quaternion(Vector3, Single) |
Tworzy kwaternion na podstawie określonego wektora i części obrotu. |
Pola
W |
Składnik obrotu kwaternionu. |
X |
Wartość X składnika wektorowego kwaternionu. |
Y |
Wartość Y składnika wektorowego kwaternionu. |
Z |
Wartość Z składnika wektora kwaternionu. |
Właściwości
Identity |
Pobiera kwaternion, który nie reprezentuje rotacji. |
IsIdentity |
Pobiera wartość wskazującą, czy bieżące wystąpienie jest kwestionem tożsamości. |
Item[Int32] |
Pobiera lub ustawia element w określonym indeksie. |
Zero |
Pobiera quaternion, który reprezentuje zero. |
Metody
Add(Quaternion, Quaternion) |
Dodaje każdy element w jednym kwaternionie z odpowiadającym mu elementem w drugim kwaternionie. |
Concatenate(Quaternion, Quaternion) |
Łączy dwa kwantony. |
Conjugate(Quaternion) |
Zwraca sprzężenie określonego kwaternionu. |
CreateFromAxisAngle(Vector3, Single) |
Tworzy quaternion na podstawie wektora jednostkowego i kąta do obracania wokół wektora. |
CreateFromRotationMatrix(Matrix4x4) |
Tworzy quaternion z określonej macierzy rotacji. |
CreateFromYawPitchRoll(Single, Single, Single) |
Tworzy nowe kwanty na podstawie danego yaw, pitch i roll. |
Divide(Quaternion, Quaternion) |
Dzieli jedno quaternion przez drugie kwaternion. |
Dot(Quaternion, Quaternion) |
Oblicza iloczyn kropki dwóch kwaternionów. |
Equals(Object) |
Zwraca wartość wskazującą, czy to wystąpienie i określony obiekt są równe. |
Equals(Quaternion) |
Zwraca wartość wskazującą, czy to wystąpienie i inne kwaternion są równe. |
GetHashCode() |
Zwraca kod skrótu dla tego wystąpienia. |
Inverse(Quaternion) |
Zwraca odwrotność quaternionu. |
Length() |
Oblicza długość kwaternionu. |
LengthSquared() |
Oblicza długość kwadratową kwadórki. |
Lerp(Quaternion, Quaternion, Single) |
Wykonuje interpolację liniową między dwoma kwaternami na podstawie wartości, która określa wagę drugiego kwaternionu. |
Multiply(Quaternion, Quaternion) |
Zwraca kwaternion, który wynika z mnożenia dwóch kwaternionów razem. |
Multiply(Quaternion, Single) |
Zwraca kwaternion, który wynika ze skalowania wszystkich składników określonego kwaternionu według współczynnika skalarnego. |
Negate(Quaternion) |
Odwraca znak każdego składnika kwaternionu. |
Normalize(Quaternion) |
Dzieli każdy składnik określonego Quaternion według jego długości. |
Slerp(Quaternion, Quaternion, Single) |
Interpolacje między dwoma kwaternami przy użyciu interpolacji liniowej spherical. |
Subtract(Quaternion, Quaternion) |
Odejmuje każdy element w drugim kwaternionie z odpowiadającego mu elementu w pierwszym kwaternionie. |
ToString() |
Zwraca ciąg reprezentujący ten kwaternion. |
Operatory
Addition(Quaternion, Quaternion) |
Dodaje każdy element w jednym kwaternionie z odpowiadającym mu elementem w drugim kwaternionie. |
Division(Quaternion, Quaternion) |
Dzieli jedno quaternion przez drugie kwaternion. |
Equality(Quaternion, Quaternion) |
Zwraca wartość wskazującą, czy dwa kwantyny są równe. |
Inequality(Quaternion, Quaternion) |
Zwraca wartość wskazującą, czy dwa kwantyny nie są równe. |
Multiply(Quaternion, Quaternion) |
Zwraca kwaternion, który wynika z mnożenia dwóch kwaternionów razem. |
Multiply(Quaternion, Single) |
Zwraca kwaternion, który wynika ze skalowania wszystkich składników określonego kwaternionu według współczynnika skalarnego. |
Subtraction(Quaternion, Quaternion) |
Odejmuje każdy element w drugim kwaternionie z odpowiadającego mu elementu w pierwszym kwaternionie. |
UnaryNegation(Quaternion) |
Odwraca znak każdego składnika kwaternionu. |
Metody rozszerzania
AsVector4(Quaternion) |
Ponownie interpretuje Quaternion jako nowy Vector4. |