Freigeben über


Quaternion Struktur

Definition

Stellt einen Vektor dar, der zum Codieren dreidimensionaler physischer Drehungen verwendet wird.

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)
Vererbung
Quaternion
Implementiert

Hinweise

Die Quaternion Struktur wird verwendet, um ein Objekt effizient um den (x,y,z)-Vektor durch den Winkeltheta zu drehen, wobei:

w = cos(theta/2)  

Konstruktoren

Quaternion(Single, Single, Single, Single)

Erstellt eine Quaternion aus den angegebenen Komponenten.

Quaternion(Vector3, Single)

Erstellt eine Quaternion aus den angegebenen Vektor- und Drehungsteilen.

Felder

W

Die Drehungskomponente der Quaternion.

X

Der X-Wert der Vektorkomponente der Quaternion.

Y

Der Y-Wert der Vektorkomponente der Quaternion.

Z

Der Z-Wert der Vektorkomponente der Quaternion.

Eigenschaften

Identity

Ruft eine Quaternion, die keine Drehung darstellt.

IsIdentity

Ruft einen Wert ab, der angibt, ob die aktuelle Instanz das Identitätsquaternion ist.

Item[Int32]

Ruft das Element am angegebenen Index ab oder legt es fest.

Zero

Ruft eine Quaternion, die eine Null darstellt.

Methoden

Add(Quaternion, Quaternion)

Fügt jedes Element in einer Quaternion mit dem entsprechenden Element in einer zweiten Quaternion hinzu.

Concatenate(Quaternion, Quaternion)

Verkettet zwei Quaternionen.

Conjugate(Quaternion)

Gibt das Konjugat einer angegebenen Quaternion zurück.

CreateFromAxisAngle(Vector3, Single)

Erstellt eine Quaternion aus einem Einheitsvektor und einem Winkel, um den Vektor zu drehen.

CreateFromRotationMatrix(Matrix4x4)

Erstellt eine Quaternion aus der angegebenen Drehungsmatrix.

CreateFromYawPitchRoll(Single, Single, Single)

Erstellt eine neue Quaternion aus der gegebenen Gier, Neigung und Rolle.

Divide(Quaternion, Quaternion)

Dividiert eine Quaternion durch eine zweite Quaternion.

Dot(Quaternion, Quaternion)

Berechnet das Punktprodukt von zwei Quaternionen.

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz und ein angegebenes Objekt gleich sind.

Equals(Quaternion)

Gibt einen Wert zurück, der angibt, ob diese Instanz und eine andere Quaternion gleich sind.

GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

Inverse(Quaternion)

Gibt die Umkehrung einer Quaternion zurück.

Length()

Berechnet die Länge der Quaternion.

LengthSquared()

Berechnet die quadratische Länge der Quaternion.

Lerp(Quaternion, Quaternion, Single)

Führt eine lineare Interpolation zwischen zwei Quaternionen basierend auf einem Wert aus, der die Gewichtung der zweiten Quaternion angibt.

Multiply(Quaternion, Quaternion)

Gibt die Quaternion zurück, die aus der Multiplikation zweier Quaternionen resultiert.

Multiply(Quaternion, Single)

Gibt die Quaternion zurück, die aus der Skalierung aller Komponenten einer angegebenen Quaternion durch einen skalaren Faktor resultiert.

Negate(Quaternion)

Umkehrt das Vorzeichen jeder Komponente der Quaternion.

Normalize(Quaternion)

Dividiert jede Komponente einer angegebenen Quaternion durch die Länge.

Slerp(Quaternion, Quaternion, Single)

Interpoliert zwischen zwei Quaternionen, wobei die sphärische lineare Interpolation verwendet wird.

Subtract(Quaternion, Quaternion)

Subtrahiert jedes Element in einer zweiten Quaternion von seinem entsprechenden Element in einer ersten Quaternion.

ToString()

Gibt eine Zeichenfolge zurück, die diese Quaternion darstellt.

Operatoren

Addition(Quaternion, Quaternion)

Fügt jedes Element in einer Quaternion mit dem entsprechenden Element in einer zweiten Quaternion hinzu.

Division(Quaternion, Quaternion)

Dividiert eine Quaternion durch eine zweite Quaternion.

Equality(Quaternion, Quaternion)

Gibt einen Wert zurück, der angibt, ob zwei Quaternionen gleich sind.

Inequality(Quaternion, Quaternion)

Gibt einen Wert zurück, der angibt, ob zwei Quaternionen nicht gleich sind.

Multiply(Quaternion, Quaternion)

Gibt die Quaternion zurück, die aus der Multiplikation zweier Quaternionen resultiert.

Multiply(Quaternion, Single)

Gibt die Quaternion zurück, die aus der Skalierung aller Komponenten einer angegebenen Quaternion durch einen skalaren Faktor resultiert.

Subtraction(Quaternion, Quaternion)

Subtrahiert jedes Element in einer zweiten Quaternion von seinem entsprechenden Element in einer ersten Quaternion.

UnaryNegation(Quaternion)

Umkehrt das Vorzeichen jeder Komponente der Quaternion.

Erweiterungsmethoden

AsVector4(Quaternion)

Interpretiert eine Quaternion als neue Vector4neu.

Gilt für: