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

Compatibilité avec les navigateurs

{{ CompatibilityTable() }}

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support basique {{ CompatUnknown() }} {{ CompatUnknown() }} 9 {{ CompatUnknown() }} {{ CompatUnknown() }}
Fonctionnalité Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support basique {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}