--- title: SVGMatrix slug: Web/API/SVGMatrix tags: - Matrice - Reference translation_of: Web/API/SVGMatrix --- ## Interface SVG matrix Beaucoup d'opération graphiques de SVG utilisent des matrices 2x3 de la forme : [a c e] [b d f] laquelle, quand étendue en une matrice 3x3 à des fins d'arithmétique matricielle, devient : [a c e] [b d f] [0 0 1] Un objet `SVGMatrix` peut être marqué en lecture-seule, ce qui signifie que les tentatives de modification sur cet objet entraîneront un lancement d'exception. ### Vue d'ensemble de l'interface
Implémente aussi Aucune
Méthodes
  • {{ domxref("SVGMatrix") }} multiply(in {{ domxref("SVGMatrix") }} secondMatrix)
  • {{ domxref("SVGMatrix") }} inverse()
  • {{ domxref("SVGMatrix") }} translate(in float x, in float y)
  • {{ domxref("SVGMatrix") }} scale(in float scaleFactor)
  • {{ domxref("SVGMatrix") }} scaleNonUniform(in float scaleFactorX, in float scaleFactorY)
  • {{ domxref("SVGMatrix") }} rotate(in float angle)
  • {{ domxref("SVGMatrix") }} rotateFromVector(in float x, in float y)
  • {{ domxref("SVGMatrix") }} flipX()
  • {{ domxref("SVGMatrix") }} flipY()
  • {{ domxref("SVGMatrix") }} skewX(in float angle)
  • {{ domxref("SVGMatrix") }} skewY(in float angle)
Propriétés
  • float a
  • float b
  • float c
  • float d
  • float e
  • float f
Document normatif SVG 1.1 (2nd Edition)
## Propriétés | Nom | Type | Description | | --- | ----- | ------------------------------- | | `a` | float | Le composant _a_ de la matrice. | | `b` | float | Le composant _b_ de la matrice. | | `c` | float | Le composant c de la matrice. | | `d` | float | Le composant _d_ de la matrice. | | `e` | float | Le composant _e_ de la matrice. | | `f` | float | Le composant _f_ de la matrice. | Une {{ domxref("DOMException") }} avec le code `NO_MODIFICATION_ALLOWED_ERR` est levée lors d'une tentative de modification d'un attribut en lecture-seule ou quand l'objet lui-même est en lecture-seule. ## Méthodes
Nom & Arguments Retourne Description
multiply(in {{ domxref("SVGMatrix") }} secondMatrix) {{ domxref("SVGMatrix") }} Effectue une multiplication de matrices. Cette matrice est multipliée par une autre matrice, retournant la nouvelle matrice résultante.
inverse() {{ domxref("SVGMatrix") }}

Retourne la matrice inverse.

Exceptions :

  • une {{ domxref("DOMException") }} avec le code SVG_MATRIX_NOT_INVERTABLE est levée si la matrice n'est pas inversible.
translate(in float x, in float y) {{ domxref("SVGMatrix") }}
Effectue une translation sur la matrice courante et retourne la matrice résultante.
scale(in float scaleFactor) {{ domxref("SVGMatrix") }}
Effectue une mise à l'échelle uniforme sur la matrice courante et retourne la matrice résultante.
scaleNonUniform(in float scaleFactorX, in float scaleFactorY) {{ domxref("SVGMatrix") }}
Effectue une mise à l'échelle non-uniforme sur la matrice courante et retourne la matrice résultante.
rotate(in float angle) {{ domxref("SVGMatrix") }}
Effectue une rotation sur la matrice courante et retourne la matrice résultante.
rotateFromVector(in float x, in float y) {{ domxref("SVGMatrix") }}

Effectue une rotation sur la matrice courante et retourne la matrice résultante. L'angle de rotation est déterminé en prenant (+/-) atan(y/x). La direction du vecteur (x, y) détermine si la valeur négative ou positive de l'angle est utilisée.

Exceptions :

  • une {{ domxref("DOMException") }} avec le code SVG_INVALID_VALUE_ERR est levée si un de ces paramètres a une valeur invalide.
flipX() {{ domxref("SVGMatrix") }}
Effectue une transformation [-1 0 0 1 0 0] et retourne la matrice résultante.
flipY() {{ domxref("SVGMatrix") }}
Effectue une transformation [1 0 0 -1 0 0] et retourne la matrice résultante.
skewX(in float angle) {{ domxref("SVGMatrix") }}
Effectue une transformation de skewX sur la matrice courante et retourne la matrice résultante.
skewY(in float angle) {{ domxref("SVGMatrix") }}
Effectue une transformation de skewY sur la matrice courante et retourne la matrice résultante.
## Exceptions Une {{domxref("DOMException")}} avec le code `NO_MODIFICATION_ALLOWED_ERR` est levée lors d'une tentative de mise à jour d'un attribut en lecture seule ou lorsque l'objet lui-même est en lecture seule. ## Spécifications | Spécification | Statut | Commentaire | | -------------------------------------------------------------------------------------------- | ------------------------ | ------------------- | | {{SpecName("SVG1.1", "coords.html#InterfaceSVGMatrix", "SVGMatrix")}} | {{Spec2("SVG1.1")}} | Définition initiale | ## Compatibilité des navigateurs {{Compat("api.SVGMatrix")}}