public interface SVGTransform
SVGTransform
is the interface for one of the component transformations within an SVGTransformList
; thus, an SVGTransform
object corresponds to a single component (e.g., scale(…)
or matrix(…)
) within a
transform
attribute.
An SVGTransform
object can be designated as read only, which means that attempts to modify the object will result in an exception being thrown.
Modifier and Type | Field and Description |
---|---|
static int |
SVG_TRANSFORM_MATRIX
A
matrix(…) transformation |
static int |
SVG_TRANSFORM_ROTATE |
static int |
SVG_TRANSFORM_SCALE
A
scale(…) transformation |
static int |
SVG_TRANSFORM_SKEWX |
static int |
SVG_TRANSFORM_SKEWY |
static int |
SVG_TRANSFORM_TRANSLATE
A
translate(…) transformation |
static int |
SVG_TRANSFORM_UNKNOWN
The unit type is not one of predefined unit types.
|
Modifier and Type | Method and Description |
---|---|
float |
getAngle()
A convenience attribute for
SVG_TRANSFORM_ROTATE , SVG_TRANSFORM_SKEWX and SVG_TRANSFORM_SKEWY . |
SVGMatrix |
getMatrix()
The matrix that represents this transformation.
|
int |
getType()
The type of the value as specified by one of the SVG_TRANSFORM_* constants defined on this interface.
|
void |
setRotate(float angle,
float cx,
float cy)
Sets the transform type to
SVG_TRANSFORM_ROTATE , with parameter angle defining the rotation angle and parameters cx and cy defining the optional center of rotation. |
void |
setScale(float sx,
float sy)
Sets the transform type to
SVG_TRANSFORM_SCALE , with parameters sx and sy defining the scale amounts. |
void |
setSkewX(float angle)
Sets the transform type to
SVG_TRANSFORM_SKEWX , with parameter angle defining the amount of skew. |
void |
setSkewY(float angle)
Sets the transform type to
SVG_TRANSFORM_SKEWY , with parameter angle defining the amount of skew. |
void |
setTranslate(float tx,
float ty)
Sets the transform type to
SVG_TRANSFORM_TRANSLATE , with parameters tx and ty defining the translation amounts. |
static final int SVG_TRANSFORM_MATRIX
matrix(…)
transformationstatic final int SVG_TRANSFORM_ROTATE
static final int SVG_TRANSFORM_SCALE
scale(…)
transformationstatic final int SVG_TRANSFORM_SKEWX
static final int SVG_TRANSFORM_SKEWY
static final int SVG_TRANSFORM_TRANSLATE
translate(…)
transformationstatic final int SVG_TRANSFORM_UNKNOWN
float getAngle()
SVG_TRANSFORM_ROTATE
, SVG_TRANSFORM_SKEWX
and SVG_TRANSFORM_SKEWY
. It holds the angle that was specified.SVG_TRANSFORM_MATRIX
, SVG_TRANSFORM_TRANSLATE
and SVG_TRANSFORM_SCALE
, angle
will be zero.SVGMatrix getMatrix()
The matrix that represents this transformation. The matrix object is live, meaning that any changes made to the SVGTransform
object are immediately reflected in the matrix object and vice versa. In case the matrix object is changed directly (i.e., without using the methods on the SVGTransform
interface itself) then the type of the SVGTransform
changes to SVG_TRANSFORM_MATRIX
.
SVG_TRANSFORM_MATRIX
, the matrix contains the a, b, c, d, e, f values supplied by the user.SVG_TRANSFORM_TRANSLATE
, e and f represent the translation amounts (a=1, b=0, c=0 and d=1).SVG_TRANSFORM_SCALE
, a and d represent the scale amounts (b=0, c=0, e=0 and f=0).SVG_TRANSFORM_SKEWX
and SVG_TRANSFORM_SKEWY
, a, b, c and d represent the matrix which will result in the given skew (e=0 and f=0).SVG_TRANSFORM_ROTATE
, a, b, c, d, e and f together represent the matrix which will result in the given rotation. When the rotation is around the center point (0, 0), e and f will be zero.int getType()
void setRotate(float angle, float cx, float cy)
Sets the transform type to SVG_TRANSFORM_ROTATE
, with parameter angle
defining the rotation angle and parameters cx
and cy
defining the optional center of rotation.
Exceptions:
DOMException
with code NO_MODIFICATION_ALLOWED_ERR
is raised when attempting to modify a read only attribute or when the object itself is read only.void setScale(float sx, float sy)
Sets the transform type to SVG_TRANSFORM_SCALE
, with parameters sx
and sy
defining the scale amounts.
Exceptions:
DOMException
with code NO_MODIFICATION_ALLOWED_ERR
is raised when attempting to modify a read only attribute or when the object itself is read only.void setSkewX(float angle)
Sets the transform type to SVG_TRANSFORM_SKEWX
, with parameter angle
defining the amount of skew.
Exceptions:
DOMException
with code NO_MODIFICATION_ALLOWED_ERR
is raised when attempting to modify a read only attribute or when the object itself is read only.void setSkewY(float angle)
Sets the transform type to SVG_TRANSFORM_SKEWY
, with parameter angle
defining the amount of skew.
Exceptions:
DOMException
with code NO_MODIFICATION_ALLOWED_ERR
is raised when attempting to modify a read only attribute or when the object itself is read only.void setTranslate(float tx, float ty)
Sets the transform type to SVG_TRANSFORM_TRANSLATE
, with parameters tx
and ty
defining the translation amounts.
Exceptions:
DOMException
with code NO_MODIFICATION_ALLOWED_ERR
is raised when attempting to modify a read only attribute or when the object itself is read only.Copyright © 2018. All rights reserved.