Many of SVG's graphics operations utilize 2x3 matrices of the form:

Documentation SVGMatrix by Mozilla Contributors, licensed under CC-BY-SA 2.5.

See:

Variables

a:Float

A float representing the a component of the matrix.

b:Float

A float representing the b component of the matrix.

c:Float

A float representing the c component of the matrix.

d:Float

A float representing the d component of the matrix.

e:Float

A float representing the e component of the matrix.

f:Float

A float representing the f component of the matrix.

Methods

flipX ():Matrix

Post-multiplies the transformation [-1 0 0 1 0 0] and returns the resulting matrix as SVGMatrix.

flipY ():Matrix

Post-multiplies the transformation [1 0 0 -1 0 0] and returns the resulting matrix as SVGMatrix.

inverse ():Matrix

Returns the inverse matrix as SVGMatrix.

Throws:

null

DOMError

multiply (secondMatrix:Matrix):Matrix

Performs matrix multiplication. This matrix is post-multiplied by another matrix, returning the resulting new matrix as SVGMatrix.

rotate (angle:Float):Matrix

Post-multiplies a rotation transformation on the current matrix and returns the resulting matrix as SVGMatrix.

rotateFromVector (x:Float, y:Float):Matrix

Post-multiplies a rotation transformation on the current matrix and returns the resulting matrix as SVGMatrix. The rotation angle is determined by taking (+/-) atan(y/x). The direction of the vector (x, y) determines whether the positive or negative angle value is used.

Throws:

null

DOMError

scale (scaleFactor:Float):Matrix

Post-multiplies a uniform scale transformation on the current matrix and returns the resulting matrix as SVGMatrix.

scaleNonUniform (scaleFactorX:Float, scaleFactorY:Float):Matrix

Post-multiplies a non-uniform scale transformation on the current matrix and returns the resulting matrix as SVGMatrix.

skewX (angle:Float):Matrix

Post-multiplies a skewX transformation on the current matrix and returns the resulting matrix as SVGMatrix.

Throws:

null

DOMError

skewY (angle:Float):Matrix

Post-multiplies a skewY transformation on the current matrix and returns the resulting matrix as SVGMatrix.

Throws:

null

DOMError

translate (x:Float, y:Float):Matrix

Post-multiplies a translation transformation on the current matrix and returns the resulting matrix as SVGMatrix.