Matrix4x4 Struktur
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine 4x4-Matrix dar.
public value class Matrix4x4 : IEquatable<System::Numerics::Matrix4x4>
public struct Matrix4x4 : IEquatable<System.Numerics.Matrix4x4>
type Matrix4x4 = struct
Public Structure Matrix4x4
Implements IEquatable(Of Matrix4x4)
- Vererbung
- Implementiert
Hinweise
Bei Matrixtransformationen werden die Vector2Instanzen Vector3und Vector4 Instanzen als Zeilen dargestellt: Ein Vektor v wird durch eine Matrix M mit vM-Multiplikation transformiert.
Konstruktoren
| Name | Beschreibung |
|---|---|
| Matrix4x4(Matrix3x2) |
Erstellt ein Matrix4x4 Objekt aus einem angegebenen Matrix3x2 Objekt. |
| Matrix4x4(Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single) |
Erstellt eine 4x4-Matrix aus den angegebenen Komponenten. |
Felder
| Name | Beschreibung |
|---|---|
| M11 |
Das erste Element der ersten Zeile. |
| M12 |
Das zweite Element der ersten Zeile. |
| M13 |
Das dritte Element der ersten Zeile. |
| M14 |
Das vierte Element der ersten Zeile. |
| M21 |
Das erste Element der zweiten Zeile. |
| M22 |
Das zweite Element der zweiten Zeile. |
| M23 |
Das dritte Element der zweiten Zeile. |
| M24 |
Das vierte Element der zweiten Zeile. |
| M31 |
Das erste Element der dritten Zeile. |
| M32 |
Das zweite Element der dritten Zeile. |
| M33 |
Das dritte Element der dritten Zeile. |
| M34 |
Das vierte Element der dritten Zeile. |
| M41 |
Das erste Element der vierten Zeile. |
| M42 |
Das zweite Element der vierten Zeile. |
| M43 |
Das dritte Element der vierten Zeile. |
| M44 |
Das vierte Element der vierten Zeile. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Identity |
Ruft die multiplizierte Identitätsmatrix ab. |
| IsIdentity |
Gibt an, ob die aktuelle Matrix die Identitätsmatrix ist. |
| Item[Int32, Int32] |
Ruft das Element an den angegebenen Indizes ab oder legt es fest. |
| Item[Int32] |
Ruft die Zeile am angegebenen Index ab oder legt sie fest. |
| Translation |
Ruft die Übersetzungskomponente dieser Matrix ab oder legt sie fest. |
| W |
Ruft die vierte Zeile der Matrix ab oder legt sie fest. |
| X |
Ruft die erste Zeile der Matrix ab oder legt sie fest. |
| Y |
Ruft die zweite Zeile der Matrix ab oder legt sie fest. |
| Z |
Ruft die dritte Zeile der Matrix ab oder legt sie fest. |
Methoden
| Name | Beschreibung |
|---|---|
| Add(Matrix4x4, Matrix4x4) |
Fügt jedes Element in einer Matrix mit dem entsprechenden Element in einer zweiten Matrix hinzu. |
| Create(Matrix3x2) | |
| Create(Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single, Single) |
Erstellt eine Matrix3x2 aus den angegebenen Elementen. |
| Create(Single) |
Erstellt ein Element Matrix4x4 , dessen 16 Elemente auf den angegebenen Wert festgelegt sind. |
| Create(Vector4, Vector4, Vector4, Vector4) |
Erstellt eine Matrix4x4 aus den angegebenen Zeilen. |
| Create(Vector4) |
Erstellt eine Matrix4x4 , deren vier Zeilen auf den angegebenen Wert festgelegt sind. |
| CreateBillboard(Vector3, Vector3, Vector3, Vector3) |
Erstellt eine sphärische Billboard, die sich um eine angegebene Objektposition dreht. |
| CreateBillboardLeftHanded(Vector3, Vector3, Vector3, Vector3) |
Erstellt eine linkshändige sphärische Billboardmatrix, die sich um eine angegebene Objektposition dreht. |
| CreateConstrainedBillboard(Vector3, Vector3, Vector3, Vector3, Vector3) |
Erstellt eine zylindrische Billboard, die um eine angegebene Achse gedreht wird. |
| CreateConstrainedBillboardLeftHanded(Vector3, Vector3, Vector3, Vector3, Vector3) |
Erstellt eine linkshändige zylindrische Billboardmatrix, die sich um eine angegebene Achse dreht. |
| CreateFromAxisAngle(Vector3, Single) |
Erstellt eine Matrix, die sich um einen beliebigen Vektor dreht. |
| CreateFromQuaternion(Quaternion) |
Erstellt eine Drehungsmatrix aus dem angegebenen Quaternion-Drehungswert. |
| CreateFromYawPitchRoll(Single, Single, Single) |
Erstellt eine Drehungsmatrix aus dem angegebenen Gierwinkel, der Neigung und dem Roll. |
| CreateLookAt(Vector3, Vector3, Vector3) |
Erstellt eine Ansichtsmatrix. |
| CreateLookAtLeftHanded(Vector3, Vector3, Vector3) |
Erstellt eine linkshändige Ansichtsmatrix. |
| CreateLookTo(Vector3, Vector3, Vector3) |
Erstellt eine rechtshändige Ansichtsmatrix. |
| CreateLookToLeftHanded(Vector3, Vector3, Vector3) |
Erstellt eine linkshändige Ansichtsmatrix. |
| CreateOrthographic(Single, Single, Single, Single) |
Erstellt eine orthografische Perspektivesmatrix aus den angegebenen Ansichtsvolumenabmessungen. |
| CreateOrthographicLeftHanded(Single, Single, Single, Single) |
Erstellt eine linkshändige orthografische Perspektivesmatrix aus den angegebenen Ansichtsvolumenabmessungen. |
| CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single) |
Erstellt eine angepasste orthografische Projektionsmatrix. |
| CreateOrthographicOffCenterLeftHanded(Single, Single, Single, Single, Single, Single) |
Erstellt eine linkshändige angepasste orthografische Projektionsmatrix. |
| CreatePerspective(Single, Single, Single, Single) |
Erstellt eine perspektivische Projektionsmatrix aus den angegebenen Ansichtsvolumenabmessungen. |
| CreatePerspectiveFieldOfView(Single, Single, Single, Single) |
Erstellt eine perspektivische Projektionsmatrix basierend auf einem Ansichtsfeld, Seitenverhältnis und abstandsnahen und weit entfernten Ansichtsebenen.Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. |
| CreatePerspectiveFieldOfViewLeftHanded(Single, Single, Single, Single) |
Erstellt eine linkshändige perspektivische Projektionsmatrix basierend auf einem Ansichtsfeld, Seitenverhältnis und abstandsnahen und weit entfernten Ansichtsebenen. |
| CreatePerspectiveLeftHanded(Single, Single, Single, Single) |
Erstellt eine linkshändige perspektivische Projektionsmatrix aus den angegebenen Ansichtsvolumenabmessungen. |
| CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single) |
Erstellt eine angepasste perspektivische Projektionsmatrix. |
| CreatePerspectiveOffCenterLeftHanded(Single, Single, Single, Single, Single, Single) |
Erstellt eine linkshändige angepasste perspektivische Projektionsmatrix. |
| CreateReflection(Plane) |
Erstellt eine Matrix, die das Koordinatensystem über eine angegebene Ebene widerspiegelt. |
| CreateRotationX(Single, Vector3) |
Erstellt eine Matrix zum Drehen von Punkten um die X-Achse von einem Mittelpunkt. |
| CreateRotationX(Single) |
Erstellt eine Matrix zum Drehen von Punkten um die X-Achse. |
| CreateRotationY(Single, Vector3) |
Der Wert in Bogenmaß, um den die Y-Achse um einen Mittelpunkt gedreht werden soll. |
| CreateRotationY(Single) |
Erstellt eine Matrix zum Drehen von Punkten um die Y-Achse. |
| CreateRotationZ(Single, Vector3) |
Erstellt eine Matrix zum Drehen von Punkten um die Z-Achse von einem Mittelpunkt. |
| CreateRotationZ(Single) |
Erstellt eine Matrix zum Drehen von Punkten um die Z-Achse. |
| CreateScale(Single, Single, Single, Vector3) |
Erstellt eine Skalierungsmatrix, die durch einen bestimmten Mittelpunkt versetzt wird. |
| CreateScale(Single, Single, Single) |
Erstellt eine Skalierungsmatrix aus den angegebenen X-, Y- und Z-Komponenten. |
| CreateScale(Single, Vector3) |
Erstellt eine einheitliche Skalierungsmatrix, die gleichmäßig auf jeder Achse mit einem Mittelpunkt skaliert wird. |
| CreateScale(Single) |
Erstellt eine einheitliche Skalierungsmatrix, die gleichmäßig auf jeder Achse skaliert wird. |
| CreateScale(Vector3, Vector3) |
Erstellt eine Skalierungsmatrix mit einem Mittelpunkt. |
| CreateScale(Vector3) |
Erstellt eine Skalierungsmatrix aus der angegebenen Vektorskala. |
| CreateShadow(Vector3, Plane) |
Erstellt eine Matrix, die Geometrie in eine angegebene Ebene abschrägt, als ob ein Schatten aus einer angegebenen Lichtquelle gegossen wird. |
| CreateTranslation(Single, Single, Single) |
Erstellt eine Übersetzungsmatrix aus den angegebenen X-, Y- und Z-Komponenten. |
| CreateTranslation(Vector3) |
Erstellt eine Übersetzungsmatrix aus dem angegebenen 3-dimensionalen Vektor. |
| CreateViewport(Single, Single, Single, Single, Single, Single) |
Erstellt eine rechtshändige Viewportmatrix aus den angegebenen Parametern. |
| CreateViewportLeftHanded(Single, Single, Single, Single, Single, Single) |
Erstellt eine linkshändige Viewportmatrix aus den angegebenen Parametern. |
| CreateWorld(Vector3, Vector3, Vector3) |
Erstellt eine Weltmatrix mit den angegebenen Parametern. |
| Decompose(Matrix4x4, Vector3, Quaternion, Vector3) |
Versucht, die Skalierungs-, Übersetzungs- und Drehungskomponenten aus der angegebenen Skalierungs-, Dreh- oder Übersetzungsmatrix zu extrahieren. Der Rückgabewert gibt an, ob der Vorgang erfolgreich war. |
| Equals(Matrix4x4) |
Gibt einen Wert zurück, der angibt, ob diese Instanz und eine weitere 4x4-Matrix gleich sind. |
| Equals(Object) |
Gibt einen Wert zurück, der angibt, ob diese Instanz und ein angegebenes Objekt gleich sind. |
| GetDeterminant() |
Berechnet die Determinante der aktuellen 4x4-Matrix. |
| GetElement(Int32, Int32) |
Ruft das Element an der angegebenen Zeile und Spalte ab. |
| GetHashCode() |
Gibt den Hashcode für diesen instance zurück. |
| GetRow(Int32) |
Ruft die Zeile am angegebenen Index ab oder legt sie fest. |
| Invert(Matrix4x4, Matrix4x4) |
Invertiert die angegebene Matrix. Der Rückgabewert gibt an, ob der Vorgang erfolgreich war. |
| Lerp(Matrix4x4, Matrix4x4, Single) |
Führt eine lineare Interpolation von einer Matrix zu einer zweiten Matrix basierend auf einem Wert aus, der die Gewichtung der zweiten Matrix angibt. |
| Multiply(Matrix4x4, Matrix4x4) |
Gibt die Matrix zurück, die aus der Multiplikation zweier Matrizen resultiert. |
| Multiply(Matrix4x4, Single) |
Gibt die Matrix zurück, die aus der Skalierung aller Elemente einer angegebenen Matrix durch einen skalaren Faktor resultiert. |
| Negate(Matrix4x4) |
Hebt die angegebene Matrix durch Multiplizieren aller Werte mit -1 auf. |
| Subtract(Matrix4x4, Matrix4x4) |
Subtrahiert jedes Element in einer zweiten Matrix von seinem entsprechenden Element in einer ersten Matrix. |
| ToString() |
Gibt eine Zeichenfolge zurück, die diese Matrix darstellt. |
| Transform(Matrix4x4, Quaternion) |
Transformiert die angegebene Matrix, indem die angegebene Quaternion-Drehung angewendet wird. |
| Transpose(Matrix4x4) |
Transponiert die Zeilen und Spalten einer Matrix. |
| WithElement(Int32, Int32, Single) |
Erstellt ein neues Matrix4x4 Element mit dem Element in der angegebenen Zeile und Spalte auf den angegebenen Wert und die verbleibenden Elemente, die auf denselben Wert wie in der aktuellen Matrix festgelegt sind. |
| WithRow(Int32, Vector4) |
Erstellt eine neue Matrix4x4 Zeile mit der Zeile am angegebenen Index, die auf den angegebenen Wert festgelegt ist, und die verbleibenden Zeilen, die auf denselben Wert wie in der aktuellen Matrix festgelegt sind. |
Operatoren
| Name | Beschreibung |
|---|---|
| Addition(Matrix4x4, Matrix4x4) |
Fügt jedes Element in einer Matrix mit dem entsprechenden Element in einer zweiten Matrix hinzu. |
| Equality(Matrix4x4, Matrix4x4) |
Gibt einen Wert zurück, der angibt, ob die angegebenen Matrizen gleich sind. |
| Inequality(Matrix4x4, Matrix4x4) |
Gibt einen Wert zurück, der angibt, ob die angegebenen Matrizen nicht gleich sind. |
| Multiply(Matrix4x4, Matrix4x4) |
Gibt die Matrix zurück, die aus der Multiplikation zweier Matrizen resultiert. |
| Multiply(Matrix4x4, Single) |
Gibt die Matrix zurück, die aus der Skalierung aller Elemente einer angegebenen Matrix durch einen skalaren Faktor resultiert. |
| Subtraction(Matrix4x4, Matrix4x4) |
Subtrahiert jedes Element in einer zweiten Matrix von seinem entsprechenden Element in einer ersten Matrix. |
| UnaryNegation(Matrix4x4) |
Hebt die angegebene Matrix durch Multiplizieren aller Werte mit -1 auf. |