Freigeben über


Matrix4x4 Struktur

Definition

Stellt eine 4 x 4-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
Matrix4x4
Implementiert

Hinweise

Bei Matrixtransformationen werden die Instanzen von Vector2, Vector3 und Vector4 als Zeilen dargestellt: ein Vektor v wird von einer Matrix M mit der Multiplikation vM transformiert.

Konstruktoren

Matrix4x4(Matrix3x2)

Initialisiert 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 4 x 4-Matrix aus den angegebenen Komponenten.

Felder

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

Identity

Ruft die multiplikative 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.

Translation

Ruft die Verschiebekomponente dieser Matrix ab oder legt sie fest.

Methoden

Add(Matrix4x4, Matrix4x4)

Addiert zu jedem Element in einer Matrix das entsprechende Element in einer zweiten Matrix.

CreateBillboard(Vector3, Vector3, Vector3, Vector3)

Erstellt ein sphärisches Billboard, das um eine angegebene Objektposition rotiert.

CreateConstrainedBillboard(Vector3, Vector3, Vector3, Vector3, Vector3)

Erstellt ein zylindrisches Billboard, das um eine angegebene Achse rotiert.

CreateFromAxisAngle(Vector3, Single)

Erstellt eine Matrix, die um einen beliebigen Vektor rotiert.

CreateFromQuaternion(Quaternion)

Erstellt eine Rotationsmatrix aus dem angegebenen Quaternionrotationswert.

CreateFromYawPitchRoll(Single, Single, Single)

Erstellt eine Rotationsmatrix mit den angegebenen Werten für Gieren, Nicken und Rollen.

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 orthogonale Perspektivmatrix aus den angegebenen Abmessungen des Bildraums (View Volume).

CreateOrthographicLeftHanded(Single, Single, Single, Single)

Erstellt eine linkshändige orthografische Perspektivenmatrix aus den angegebenen Ansichtsvolumendimensionen.

CreateOrthographicOffCenter(Single, Single, Single, Single, Single, Single)

Erstellt eine angepasste orthogonale Projektionsmatrix.

CreateOrthographicOffCenterLeftHanded(Single, Single, Single, Single, Single, Single)

Erstellt eine benutzerdefinierte orthografische Projektionsmatrix mit Linkshand.

CreatePerspective(Single, Single, Single, Single)

Erstellt eine perspektivische Projektionsmatrix aus den angegebenen Abmessungen des Bildraums (View Volume).

CreatePerspectiveFieldOfView(Single, Single, Single, Single)

Erstellt eine perspektivische Projektionsmatrix basierend auf einem Sichtfeld, einem Seitenverhältnis und den Abständen für die Nah- und Fernsichtebene.

CreatePerspectiveFieldOfViewLeftHanded(Single, Single, Single, Single)

Erstellt eine linkshändige Perspektivprojektionsmatrix basierend auf einem Sichtfeld, einem Seitenverhältnis und nah- und fernen Sichtebenen.

CreatePerspectiveLeftHanded(Single, Single, Single, Single)

Erstellt eine linkshändige perspektivische Projektionsmatrix aus den angegebenen Ansichtsvolumendimensionen.

CreatePerspectiveOffCenter(Single, Single, Single, Single, Single, Single)

Erstellt eine angepasste perspektivische Projektionsmatrix.

CreatePerspectiveOffCenterLeftHanded(Single, Single, Single, Single, Single, Single)

Erstellt eine benutzerdefinierte perspektivische Projektionsmatrix mit Linkshand.

CreateReflection(Plane)

Erstellt eine Matrix, die das Koordinatensystem auf einer angegebenen Ebene wiedergibt.

CreateRotationX(Single)

Erstellt eine Matrix für das Drehen von Punkten um die X-Achse.

CreateRotationX(Single, Vector3)

Erstellt eine Matrix für das Drehen von Punkten um die X-Achse von einem Mittelpunkt aus.

CreateRotationY(Single)

Erstellt eine Matrix für das Drehen von Punkten um die Y-Achse.

CreateRotationY(Single, Vector3)

Das Ausmaß der Drehung um die Y-Achse im Bogenmaß, von einem Mittelpunkt aus.

CreateRotationZ(Single)

Erstellt eine Matrix für das Drehen von Punkten um die Z-Achse.

CreateRotationZ(Single, Vector3)

Erstellt eine Matrix für das Drehen von Punkten um die Z-Achse von einem Mittelpunkt aus.

CreateScale(Single)

Erstellt eine einheitliche Skalierungsmatrix, die gleichmäßig auf allen Achsen skaliert.

CreateScale(Single, Single, Single)

Erstellt eine Skalierungsmatrix aus den angegebenen X-, Y- und Z-Komponenten.

CreateScale(Single, Single, Single, Vector3)

Erstellt eine Skalierung Matrix, die um einen angegebenen Mittelpunkt versetzt ist.

CreateScale(Single, Vector3)

Erstellt eine einheitliche Skalierungsmatrix mit einem Mittelpunkt, die gleichmäßig auf allen Achsen skaliert.

CreateScale(Vector3)

Erstellt eine Skalierungsmatrix aus der angegebenen Vektorskala.

CreateScale(Vector3, Vector3)

Erstellt eine Skalierungsmatrix mit einem Mittelpunkt.

CreateShadow(Vector3, Plane)

Erstellt eine Matrix, die Geometrie auf einer angegebenen Ebene flach darstellt, als ob eine angegebene Lichtquelle einen Schatten wirft.

CreateTranslation(Single, Single, Single)

Erstellt eine Translationsmatrix aus den angegebenen X-, Y- und Z-Komponenten.

CreateTranslation(Vector3)

Erstellt eine Translationsmatrix aus dem angegebenen dreidimensionalen 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 Skalierung, Verschiebung und Drehung aus der angegebenen Skalierungs-, Rotations- oder Translationsmatrix zu extrahieren. Der Rückgabewert gibt an, ob der Vorgang erfolgreich abgeschlossen wurde.

Equals(Matrix4x4)

Gibt einen Wert zurück, der angibt, ob diese Instanz und eine andere 4 x 4-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 4 x 4-Matrix.

GetHashCode()

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

Invert(Matrix4x4, Matrix4x4)

Invertiert die angegebene Matrix. Der Rückgabewert gibt an, ob der Vorgang erfolgreich abgeschlossen wurde.

Lerp(Matrix4x4, Matrix4x4, Single)

Führt eine lineare Interpolation zwischen einer Matrix und einer zweiten Matrix basierend auf einem Wert durch, der die Gewichtung er zweiten Matrix angibt.

Multiply(Matrix4x4, Matrix4x4)

Gibt die Matrix zurück, die sich aus der Multiplikation zwei Matrizen ergibt.

Multiply(Matrix4x4, Single)

Gibt die Matrix zurück, die sich aus der Skalierung aller Elemente einer angegebenen Matrix um einen skalaren Faktor ergibt.

Negate(Matrix4x4)

Negiert die angegebene Matrix durch Multiplikation aller ihrer Werte mit -1.

Subtract(Matrix4x4, Matrix4x4)

Subtrahiert jedes Element aus 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 durch Anwenden der angegebenen Quaternionrotation.

Transpose(Matrix4x4)

Vertauscht die Zeilen und Spalten einer Matrix.

Operatoren

Addition(Matrix4x4, Matrix4x4)

Addiert zu jedem Element in einer Matrix das entsprechende Element in einer zweiten Matrix.

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 ungleich sind.

Multiply(Matrix4x4, Matrix4x4)

Gibt die Matrix zurück, die sich aus der Multiplikation zwei Matrizen ergibt.

Multiply(Matrix4x4, Single)

Gibt die Matrix zurück, die sich aus der Skalierung aller Elemente einer angegebenen Matrix um einen skalaren Faktor ergibt.

Subtraction(Matrix4x4, Matrix4x4)

Subtrahiert jedes Element aus einer zweiten Matrix von seinem entsprechenden Element in einer ersten Matrix.

UnaryNegation(Matrix4x4)

Negiert die angegebene Matrix durch Multiplikation aller ihrer Werte mit -1.

Gilt für: