SVGMatrix - Web APIs 编辑
Deprecated
This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
Many of SVG's graphics operations utilize 2x3 matrices of the form:
[a c e] [b d f]
which, when expanded into a 3x3 matrix for the purposes of matrix arithmetic, become:
[a c e] [b d f] [0 0 1]
An SVGMatrix
object can be designated as read only, which means that attempts to modify the object will result in an exception being thrown.
Warning: SVG 2 replaced the SVGMatrix
interface by the more general DOMMatrix
and DOMMatrixReadOnly
interfaces.
Properties
SVGMatrix.a
- A float representing the a component of the matrix.
SVGMatrix.b
- A float representing the b component of the matrix.
SVGMatrix.c
- A float representing the c component of the matrix.
SVGMatrix.d
- A float representing the d component of the matrix.
SVGMatrix.e
- A float representing the e component of the matrix.
SVGMatrix.f
- A float representing the f component of the matrix.
Methods
SVGMatrix.multiply()
- Performs matrix multiplication. This matrix is post-multiplied by another matrix, returning the resulting new matrix as
SVGMatrix
. SVGMatrix.inverse()
- Returns the inverse matrix as
SVGMatrix
. SVGMatrix.translate()
- Post-multiplies a translation transformation on the current matrix and returns the resulting matrix as
SVGMatrix
. SVGMatrix.scale()
- Post-multiplies a uniform scale transformation on the current matrix and returns the resulting matrix as
SVGMatrix
. SVGMatrix.scaleNonUniform()
- Post-multiplies a non-uniform scale transformation on the current matrix and returns the resulting matrix as
SVGMatrix
. SVGMatrix.rotate()
- Post-multiplies a rotation transformation on the current matrix and returns the resulting matrix as
SVGMatrix
. SVGMatrix.rotateFromVector()
- 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. SVGMatrix.flipX()
- Post-multiplies the transformation [-1 0 0 1 0 0] and returns the resulting matrix as
SVGMatrix
. SVGMatrix.flipY()
- Post-multiplies the transformation [1 0 0 -1 0 0] and returns the resulting matrix as
SVGMatrix
. SVGMatrix.skewX()
- Post-multiplies a skewX transformation on the current matrix and returns the resulting matrix as
SVGMatrix
. SVGMatrix.skewY()
- Post-multiplies a skewY transformation on the current matrix and returns the resulting matrix as
SVGMatrix
.
Exceptions
A DOMException
with the code NO_MODIFICATION_ALLOWED_ERR
is raised when attempting updating a read-only attribute or when the object itself is read-only.
Specifications
Specification | Status | Comment |
---|---|---|
Scalable Vector Graphics (SVG) 1.1 (Second Edition) The definition of 'SVGMatrix' in that specification. | Recommendation | Initial definition |
Browser compatibility
BCD tables only load in the browser
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论