DOMMatrix
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die DOMMatrix
Schnittstelle repräsentiert 4×4 Matrizen, geeignet für 2D- und 3D-Operationen wie Rotation und Translation. Sie ist eine veränderliche Version der DOMMatrixReadOnly
-Schnittstelle. Diese Schnittstelle ist in Web-Workern verfügbar.
WebKitCSSMatrix
und SVGMatrix
sind Aliase für DOMMatrix
.
Konstruktor
DOMMatrix()
-
Erstellt und gibt ein neues
DOMMatrix
-Objekt zurück.
Instanz-Eigenschaften
Diese Schnittstelle erbt Eigenschaften von DOMMatrixReadOnly
, obwohl einige dieser Eigenschaften so geändert sind, dass sie veränderlich sind.
m11
,m12
,m13
,m14
,m21
,m22
,m23
,m24
,m31
,m32
,m33
,m34
,m41
,m42
,m43
,m44
-
Gleitkommawerte mit doppelter Genauigkeit, die jede Komponente einer 4×4 Matrix darstellen, wobei
m11
bism14
die erste Spalte,m21
bism24
die zweite Spalte und so weiter sind. a
,b
,c
,d
,e
,f
-
Gleitkommawerte mit doppelter Genauigkeit, die die Komponenten einer 4×4 Matrix darstellen, die für 2D-Rotationen und -Translationen benötigt werden. Dies sind Aliase für spezifische Komponenten einer 4×4 Matrix, wie unten gezeigt.
2D
3D äquivalent
a
m11
b
m12
c
m21
d
m22
e
m41
f
m42
Instanz-Methoden
Diese Schnittstelle enthält folgende Methoden sowie die Methoden, die sie von DOMMatrixReadOnly
erbt.
DOMMatrix.invertSelf()
-
Modifiziert die Matrix, indem sie invertiert wird. Wenn die Matrix nicht invertiert werden kann, werden alle Komponenten auf
NaN
gesetzt undis2D
gibtfalse
zurück. DOMMatrix.multiplySelf()
-
Modifiziert die Matrix, indem sie mit der angegebenen
DOMMatrix
nachmultipliziert wird. Dies entspricht dem SkalarproduktA⋅B
, wobei die MatrixA
die Quellmatrix undB
die als Eingabe angegebene Matrix ist. Gibt sich selbst zurück. DOMMatrix.preMultiplySelf()
-
Modifiziert die Matrix, indem sie mit der angegebenen
DOMMatrix
vormultipliziert wird. Gibt sich selbst zurück. DOMMatrix.translateSelf()
-
Modifiziert die Matrix, indem der angegebene Vektor angewendet wird. Der Standardvektor ist
[0, 0, 0]
. Gibt sich selbst zurück. DOMMatrix.scaleSelf()
-
Modifiziert die Matrix, indem die angegebenen Skalierungsfaktoren angewendet werden, wobei das Zentrum am angegebenen Ursprung liegt. Gibt sich selbst zurück. Standardmäßig ist der Skalierungsfaktor
1
für alle drei Achsen und der Ursprung ist(0, 0, 0)
. Gibt sich selbst zurück. DOMMatrix.scale3dSelf()
-
Modifiziert die Matrix, indem der angegebene Skalierungsfaktor auf alle drei Achsen angewendet wird, zentriert auf den gegebenen Ursprung. Gibt sich selbst zurück.
DOMMatrix.rotateSelf()
-
Modifiziert die Matrix, indem sie um die angegebene Anzahl von Grad um jede Achse rotiert wird. Gibt sich selbst zurück.
DOMMatrix.rotateAxisAngleSelf()
-
Modifiziert die Matrix, indem sie um den angegebenen Winkel um den gegebenen Vektor gedreht wird. Gibt sich selbst zurück.
DOMMatrix.rotateFromVectorSelf()
-
Modifiziert die Matrix, indem sie um den Winkel zwischen dem angegebenen Vektor und
(1, 0)
rotiert wird. Gibt sich selbst zurück. DOMMatrix.setMatrixValue()
-
Ersetzt den Inhalt der Matrix mit der durch die angegebene Transformation oder Transformationen beschriebenen Matrix. Gibt sich selbst zurück.
DOMMatrix.skewXSelf()
-
Modifiziert die Matrix, indem die angegebene Schrägtransformation entlang der X-Achse angewendet wird. Gibt sich selbst zurück.
DOMMatrix.skewYSelf()
-
Modifiziert die Matrix, indem die angegebene Schrägtransformation entlang der Y-Achse angewendet wird. Gibt sich selbst zurück.
Statische Methoden
Diese Schnittstelle erbt Methoden von DOMMatrixReadOnly
.
fromFloat32Array()
-
Erstellt ein neues veränderliches
DOMMatrix
-Objekt aus einem Array von Gleitkommazahlen mit einfacher Genauigkeit (32-Bit). Wenn das Array sechs Werte hat, ist das Ergebnis eine 2D-Matrix; wenn das Array 16 Werte hat, ist das Ergebnis eine 3D-Matrix. Andernfalls wird eineTypeError
-Ausnahme ausgelöst. fromFloat64Array()
-
Erstellt ein neues veränderliches
DOMMatrix
-Objekt aus einem Array von Gleitkommazahlen mit doppelter Genauigkeit (64-Bit). Wenn das Array sechs Werte hat, ist das Ergebnis eine 2D-Matrix; wenn das Array 16 Werte hat, ist das Ergebnis eine 3D-Matrix. Andernfalls wird eineTypeError
-Ausnahme ausgelöst. fromMatrix()
-
Erstellt ein neues veränderliches
DOMMatrix
-Objekt aus einer vorhandenen Matrix oder einem Objekt, das die Werte für seine Eigenschaften bereitstellt.
Hinweise zur Verwendung
Die durch die DOMMatrix
Schnittstelle definierte Matrix besteht aus vier Zeilen mit jeweils vier Spalten. Obwohl es über den Umfang dieses Artikels hinausgeht, die Mathematik dahinter zu erklären, reicht diese 4×4-Größe aus, um jede Transformation zu beschreiben, die Sie entweder auf 2D- oder 3D-Geometrien anwenden könnten.
Hier sind die Positionen der 16 Elemente (m_11 bis m_44), die die 4×4 abstrakte Matrix bilden:
Die DOMMatrix
-Schnittstelle ist so konzipiert, dass sie für alle Matrizen innerhalb des Markups verwendet wird.
Spezifikationen
Specification |
---|
Geometry Interfaces Module Level 1 # DOMMatrix |
Browser-Kompatibilität
BCD tables only load in the browser