Quaternion Struct-datatyp
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar en vektor som används för att koda tredimensionella fysiska rotationer.
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)
- Arv
- Implementeringar
Kommentarer
Strukturen Quaternion används för att effektivt rotera ett objekt om (x,y,z) vektorn efter vinkel theta, där:
w = cos(theta/2)
Konstruktorer
| Name | Description |
|---|---|
| Quaternion(Single, Single, Single, Single) |
Konstruerar en quaternion från de angivna komponenterna. |
| Quaternion(Vector3, Single) |
Skapar en quaternion från angivna vektor- och rotationsdelar. |
Fält
| Name | Description |
|---|---|
| W |
Rotationskomponenten för quaternion. |
| X |
X-värdet för vektorkomponenten i quaternion. |
| Y |
Y-värdet för vektorkomponenten i quaternion. |
| Z |
Z-värdet för vektorkomponenten i quaternion. |
Egenskaper
| Name | Description |
|---|---|
| Identity |
Hämtar en quaternion som inte representerar någon rotation. |
| IsIdentity |
Hämtar ett värde som anger om den aktuella instansen är identitetskvasering. |
| Item[Int32] |
Hämtar eller anger elementet vid det angivna indexet. |
| Zero |
Hämtar en quaternion som representerar en nolla. |
Metoder
| Name | Description |
|---|---|
| Add(Quaternion, Quaternion) |
Lägger till varje element i en quaternion med motsvarande element i en andra quaternion. |
| Concatenate(Quaternion, Quaternion) |
Sammanfogar två quaternions. |
| Conjugate(Quaternion) |
Returnerar konjugaten för en angiven quaternion. |
| Create(Single, Single, Single, Single) |
Skapar en Quaternion från de angivna komponenterna. |
| Create(Vector3, Single) |
Skapar en Quaternion från de angivna vektor- och rotationsdelarna. |
| CreateFromAxisAngle(Vector3, Single) |
Skapar en quaternion från en enhetsvektor och en vinkel för att rotera runt vektorn. |
| CreateFromRotationMatrix(Matrix4x4) |
Skapar en quaternion från den angivna rotationsmatrisen. |
| CreateFromYawPitchRoll(Single, Single, Single) |
Skapar en ny quaternion från den angivna yaw, pitch och roll. |
| Divide(Quaternion, Quaternion) |
Delar en quaternion med en andra quaternion. |
| Dot(Quaternion, Quaternion) |
Beräknar punktprodukten av två quaternions. |
| Equals(Object) |
Returnerar ett värde som anger om den här instansen och ett angivet objekt är lika. |
| Equals(Quaternion) |
Returnerar ett värde som anger om den här instansen och en annan quaternion är lika. |
| GetHashCode() |
Returnerar hash-koden för den här instansen. |
| Inverse(Quaternion) |
Returnerar inversen för en quaternion. |
| Length() |
Beräknar längden på quaternion. |
| LengthSquared() |
Beräknar kvadreringslängden. |
| Lerp(Quaternion, Quaternion, Single) |
Utför en linjär interpolering mellan två quaternions baserat på ett värde som anger viktningen för den andra quaternionen. |
| Multiply(Quaternion, Quaternion) |
Returnerar den quaternion som är resultatet av att multiplicera två quaternions tillsammans. |
| Multiply(Quaternion, Single) |
Returnerar den quaternion som är resultatet av skalning av alla komponenter i en angiven quaternion med en skalär faktor. |
| Negate(Quaternion) |
Omvänt tecknet för varje komponent i quaternion. |
| Normalize(Quaternion) |
Delar upp varje komponent i en som anges Quaternion med dess längd. |
| Slerp(Quaternion, Quaternion, Single) |
Interpolerar mellan två quaternions med hjälp av sfärisk linjär interpolation. |
| Subtract(Quaternion, Quaternion) |
Subtraherar varje element i en andra quaternion från motsvarande element i en första quaternion. |
| ToString() |
Returnerar en sträng som representerar denna quaternion. |
Operatorer
| Name | Description |
|---|---|
| Addition(Quaternion, Quaternion) |
Lägger till varje element i en quaternion med motsvarande element i en andra quaternion. |
| Division(Quaternion, Quaternion) |
Delar en quaternion med en andra quaternion. |
| Equality(Quaternion, Quaternion) |
Returnerar ett värde som anger om två quaternions är lika med. |
| Inequality(Quaternion, Quaternion) |
Returnerar ett värde som anger om två quaternions inte är lika med. |
| Multiply(Quaternion, Quaternion) |
Returnerar den quaternion som är resultatet av att multiplicera två quaternions tillsammans. |
| Multiply(Quaternion, Single) |
Returnerar den quaternion som är resultatet av skalning av alla komponenter i en angiven quaternion med en skalär faktor. |
| Subtraction(Quaternion, Quaternion) |
Subtraherar varje element i en andra quaternion från motsvarande element i en första quaternion. |
| UnaryNegation(Quaternion) |
Omvänt tecknet för varje komponent i quaternion. |
Tilläggsmetoder
| Name | Description |
|---|---|
| AsVector128(Quaternion) |
Omtolkar en Quaternion som en ny |
| AsVector4(Quaternion) |
Omtolkar en Quaternion som en ny Vector4. |