java.lang.Object
org.htmlunit.corejs.javascript.SlotMapOwner<org.htmlunit.corejs.javascript.Scriptable>
org.htmlunit.corejs.javascript.ScriptableObject
org.htmlunit.javascript.HtmlUnitScriptable
org.htmlunit.javascript.host.dom.DOMMatrixReadOnly
- All Implemented Interfaces:
Serializable,Cloneable,org.htmlunit.corejs.javascript.ConstProperties<org.htmlunit.corejs.javascript.Scriptable>,org.htmlunit.corejs.javascript.debug.DebuggableObject,org.htmlunit.corejs.javascript.PropHolder<org.htmlunit.corejs.javascript.Scriptable>,org.htmlunit.corejs.javascript.Scriptable,org.htmlunit.corejs.javascript.SymbolScriptable
- Direct Known Subclasses:
DOMMatrix
A JavaScript object for
DOMMatrixReadOnly.- Author:
- Ahmed Ashour, Ronald Brill
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.htmlunit.corejs.javascript.ScriptableObject
org.htmlunit.corejs.javascript.ScriptableObject.DescriptorInfo, org.htmlunit.corejs.javascript.ScriptableObject.KeyComparator, org.htmlunit.corejs.javascript.ScriptableObject.LambdaGetterFunction, org.htmlunit.corejs.javascript.ScriptableObject.LambdaSetterFunction -
Field Summary
Fields inherited from class org.htmlunit.corejs.javascript.ScriptableObject
CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONSTFields inherited from class org.htmlunit.corejs.javascript.SlotMapOwner
isSealedFields inherited from interface org.htmlunit.corejs.javascript.Scriptable
NOT_FOUND -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionflipX()Returns a new matrix being the result of the original matrix flipped about the x-axis.flipY()Returns a new matrix being the result of the original matrix flipped about the y-axis.doublegetA()Returns theaproperty.doublegetB()Returns thebproperty.doublegetC()Returns thecproperty.doublegetD()Returns thedproperty.doublegetE()Returns theeproperty.doublegetF()Returns thefproperty.booleanReturns whether this matrix is the identity matrix.doublegetM11()Returns them11property.doublegetM12()Returns them12property.doublegetM13()Returns them13property.doublegetM14()Returns them14property.doublegetM21()Returns them21property.doublegetM22()Returns them22property.doublegetM23()Returns them23property.doublegetM24()Returns them24property.doublegetM31()Returns them31property.doublegetM32()Returns them32property.doublegetM33()Returns them33property.doublegetM34()Returns them34property.doublegetM41()Returns them41property.doublegetM42()Returns them42property.doublegetM43()Returns them43property.doublegetM44()Returns them44property.protected voidinit(Object[] args, org.htmlunit.corejs.javascript.VarScope scope, org.htmlunit.corejs.javascript.Function ctorObj) inverse()Returns a new matrix which is the inverse of the original matrix.booleanisIs2D()Returns theis2Dproperty.Returns the values of the matrix as a CSS transform function string.static DOMMatrixReadOnlyjsConstructor(org.htmlunit.corejs.javascript.Context cx, org.htmlunit.corejs.javascript.VarScope scope, Object[] args, org.htmlunit.corejs.javascript.Function ctorObj, boolean inNewExpr) JavaScript constructor.Returns a new matrix which is the dot product of the matrix and the given matrix.Returns a new matrix rotated about the z-axis by the specified angle.rotateAxisAngle(Object xObj, Object yObj, Object zObj, Object alphaObj) Rotates the matrix by a given angle around the specified axis.voidsetIs2D(boolean is2D) Sets theis2Dproperty.voidsetM11(double m11) Sets them11property.voidsetM12(double m12) Sets them12property.voidsetM13(double m13) Sets them13property.voidsetM14(double m14) Sets them14property.voidsetM21(double m21) Sets them21property.voidsetM22(double m22) Sets them22property.voidsetM23(double m23) Sets them23property.voidsetM24(double m24) Sets them24property.voidsetM31(double m31) Sets them31property.voidsetM32(double m32) Sets them32property.voidsetM33(double m33) Sets them33property.voidsetM34(double m34) Sets them34property.voidsetM41(double m41) Sets them41property.voidsetM42(double m42) Sets them42property.voidsetM43(double m43) Sets them43property.voidsetM44(double m44) Sets them44property.Returns a new matrix skewed along the x-axis by the specified angle.Returns a new matrix skewed along the y-axis by the specified angle.org.htmlunit.corejs.javascript.typedarrays.NativeFloat32ArrayReturns a new Float32Array containing all 16 elements of the matrix.org.htmlunit.corejs.javascript.typedarrays.NativeFloat64ArrayReturns a new Float64Array containing all 16 elements of the matrix.org.htmlunit.corejs.javascript.ScriptabletoJSON()Returns a JSON representation of the DOMMatrixReadOnly object.Creates a new matrix being the result of the original matrix with a translation applied.Methods inherited from class org.htmlunit.javascript.HtmlUnitScriptable
clone, equivalentValues, get, getBrowserVersion, getClassName, getDefaultValue, getDomNodeOrDie, getDomNodeOrNull, getPrototype, getScriptableFor, getWindow, getWindow, getWindowOrWorkerGlobalScope, getWithPreemption, has, hasInstance, makeScriptableFor, put, setClassName, setDomNode, setDomNode, setupPromise, setupRejectedPromiseMethods inherited from class org.htmlunit.corejs.javascript.ScriptableObject
applyDescriptorToAttributeBitset, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkNotSealed, checkPropertyChangeForSlot, checkPropertyChangeForSlot, checkPropertyDefinition, checkPropertyDefinition, checkSlotRemoval, defineBuiltinProperty, defineBuiltinProperty, defineBuiltInProperty, defineBuiltInProperty, defineBuiltInProperty, defineBuiltInProperty, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineOwnProperty, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, delete, delete, deleteProperty, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureScriptableObjectButNotSymbol, ensureSymbolScriptable, ensureType, get, get, getAllIds, getAncestor, getArrayPrototype, getClassPrototype, getClassPrototype, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGeneratorFunctionPrototype, getGetterOrSetter, getGetterOrSetter, getObjectPrototype, getOwnPropertyDescriptor, getParentScope, getProperty, getProperty, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getSuperProperty, getSuperProperty, getSuperProperty, getThis, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, hasProperty, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGenericDescriptor, isGetterOrSetter, isGetterOrSetter, isTrue, preventExtensions, put, put, putConst, putConstProperty, putConstProperty, putOwnProperty, putOwnProperty, putOwnProperty, putProperty, putProperty, putProperty, putProperty, putSuperProperty, putSuperProperty, putSuperProperty, querySlot, redefineProperty, redefineProperty, sameValue, sealObject, setCommonDescriptorProperties, setExternalArrayData, setGetterOrSetter, setParentScope, setPrototype, sizeMethods inherited from class org.htmlunit.corejs.javascript.SlotMapOwner
associateValue, checkNotSealed, copyAssociatedValue, createSlotMap, defineProperty, defineProperty, get, getAssociatedValue, getAttributes, getAttributes, getAttributes, getAttributes, getAttributes, getIds, has, has, isSealed, readMaps, setAttributes, setAttributes, setAttributes, setAttributes, setAttributes, writeMapsMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.htmlunit.corejs.javascript.Scriptable
get, getIds, has, hasMethods inherited from interface org.htmlunit.corejs.javascript.SymbolScriptable
get, has
-
Constructor Details
-
DOMMatrixReadOnly
public DOMMatrixReadOnly()Ctor.
-
-
Method Details
-
jsConstructor
public static DOMMatrixReadOnly jsConstructor(org.htmlunit.corejs.javascript.Context cx, org.htmlunit.corejs.javascript.VarScope scope, Object[] args, org.htmlunit.corejs.javascript.Function ctorObj, boolean inNewExpr) JavaScript constructor.- Parameters:
cx- the current contextscope- the scopeargs- the arguments to the DOMMatrixReadOnly constructorctorObj- the function objectinNewExpr-trueif invoked with thenewoperator- Returns:
- the Java object that JavaScript can access
-
init
protected void init(Object[] args, org.htmlunit.corejs.javascript.VarScope scope, org.htmlunit.corejs.javascript.Function ctorObj) -
getM11
public double getM11()Returns them11property.- Returns:
- the
m11property
-
setM11
public void setM11(double m11) Sets them11property.- Parameters:
m11- the new value
-
getA
public double getA()Returns theaproperty.- Returns:
- the
aproperty
-
getM12
public double getM12()Returns them12property.- Returns:
- the
m12property
-
setM12
public void setM12(double m12) Sets them12property.- Parameters:
m12- the new value
-
getB
public double getB()Returns thebproperty.- Returns:
- the
bproperty
-
getM13
public double getM13()Returns them13property.- Returns:
- the
m13property
-
setM13
public void setM13(double m13) Sets them13property.- Parameters:
m13- the new value
-
getM14
public double getM14()Returns them14property.- Returns:
- the
m14property
-
setM14
public void setM14(double m14) Sets them14property.- Parameters:
m14- the new value
-
getM21
public double getM21()Returns them21property.- Returns:
- the
m21property
-
setM21
public void setM21(double m21) Sets them21property.- Parameters:
m21- the new value
-
getC
public double getC()Returns thecproperty.- Returns:
- the
cproperty
-
getM22
public double getM22()Returns them22property.- Returns:
- the
m22property
-
setM22
public void setM22(double m22) Sets them22property.- Parameters:
m22- the new value
-
getD
public double getD()Returns thedproperty.- Returns:
- the
dproperty
-
getM23
public double getM23()Returns them23property.- Returns:
- the
m23property
-
setM23
public void setM23(double m23) Sets them23property.- Parameters:
m23- the new value
-
getM24
public double getM24()Returns them24property.- Returns:
- the
m24property
-
setM24
public void setM24(double m24) Sets them24property.- Parameters:
m24- the new value
-
getM31
public double getM31()Returns them31property.- Returns:
- the
m31property
-
setM31
public void setM31(double m31) Sets them31property.- Parameters:
m31- the new value
-
getM32
public double getM32()Returns them32property.- Returns:
- the
m32property
-
setM32
public void setM32(double m32) Sets them32property.- Parameters:
m32- the new value
-
getM33
public double getM33()Returns them33property.- Returns:
- the
m33property
-
setM33
public void setM33(double m33) Sets them33property.- Parameters:
m33- the new value
-
getM34
public double getM34()Returns them34property.- Returns:
- the
m34property
-
setM34
public void setM34(double m34) Sets them34property.- Parameters:
m34- the new value
-
getM41
public double getM41()Returns them41property.- Returns:
- the
m41property
-
setM41
public void setM41(double m41) Sets them41property.- Parameters:
m41- the new value
-
getE
public double getE()Returns theeproperty.- Returns:
- the
eproperty
-
getM42
public double getM42()Returns them42property.- Returns:
- the
m42property
-
setM42
public void setM42(double m42) Sets them42property.- Parameters:
m42- the new value
-
getF
public double getF()Returns thefproperty.- Returns:
- the
fproperty
-
getM43
public double getM43()Returns them43property.- Returns:
- the
m43property
-
setM43
public void setM43(double m43) Sets them43property.- Parameters:
m43- the new value
-
getM44
public double getM44()Returns them44property.- Returns:
- the
m44property
-
setM44
public void setM44(double m44) Sets them44property.- Parameters:
m44- the new value
-
isIs2D
public boolean isIs2D()Returns theis2Dproperty.- Returns:
- the
is2Dproperty
-
setIs2D
public void setIs2D(boolean is2D) Sets theis2Dproperty.- Parameters:
is2D- the new value
-
getIsIdentity
public boolean getIsIdentity()Returns whether this matrix is the identity matrix.- Returns:
- true if m12 element, m13 element, m14 element, m21 element, m23 element, m24 element, m31 element, m32 element, m34 element, m41 element, m42 element, m43 element are 0 or -0 and m11 element, m22 element, m33 element, m44 element are 1. Otherwise it returns false.
-
flipX
Returns a new matrix being the result of the original matrix flipped about the x-axis.- Returns:
- a new matrix being the result of the original matrix flipped about the x-axis. This is equivalent to multiplying the matrix by DOMMatrix(-1, 0, 0, 1, 0, 0). The original matrix is not modified.
-
flipY
Returns a new matrix being the result of the original matrix flipped about the y-axis.- Returns:
- a new matrix being the result of the original matrix flipped about the y-axis. This is equivalent to multiplying the matrix by DOMMatrix(1, 0, 0, -1, 0, 0). The original matrix is not modified.
-
inverse
Returns a new matrix which is the inverse of the original matrix.- Returns:
- new matrix which is the inverse of the original matrix. If the matrix cannot be inverted, the new matrix's components are all set to NaN and its is2D property is set to false. The original matrix is not changed.
-
multiply
Returns a new matrix which is the dot product of the matrix and the given matrix.- Parameters:
other- the matrix to multiply with this matrix- Returns:
- a new matrix which is the dot product of the matrix and the otherMatrix parameter. If otherMatrix is omitted, the matrix is multiplied by a matrix in which every element is 0 except the bottom-right corner and the element immediately above and to its left: m33 and m34. These have the default value of 1. The original matrix is not modified.
-
rotate
Returns a new matrix rotated about the z-axis by the specified angle.- Parameters:
rotZ- the rotation angle in degrees. If omitted, defaults to 0.- Returns:
- a new matrix which is the result of the original matrix rotated by the specified angle. The rotation is applied around the origin (0, 0) in the 2D plane. The original matrix is not modified.
-
rotateAxisAngle
Rotates the matrix by a given angle around the specified axis.- Parameters:
xObj- the x component of the axisyObj- the y component of the axiszObj- the z component of the axisalphaObj- the rotation angle in degrees- Returns:
- a new matrix which is the result of the original matrix rotated by the specified axis and angle.
-
skewX
Returns a new matrix skewed along the x-axis by the specified angle.- Parameters:
alphaObj- the angle, in degrees, by which to skew the matrix along the x-axis- Returns:
- returns a new DOMMatrix created by applying the specified skew transformation to the source matrix along its x-axis. The original matrix is not modified.
-
skewY
Returns a new matrix skewed along the y-axis by the specified angle.- Parameters:
alphaObj- the angle, in degrees, by which to skew the matrix along the y-axis- Returns:
- returns a new DOMMatrix created by applying the specified skew transformation to the source matrix along its x-axis. The original matrix is not modified.
-
translate
Creates a new matrix being the result of the original matrix with a translation applied.- Parameters:
xObj- a number representing the abscissa (x-coordinate) of the translating vectoryObj- a number representing the ordinate (y-coordinate) of the translating vectorzObj- A number representing the z component of the translating vector. If not supplied, this defaults to 0. If this is anything other than 0, the resulting matrix will be 3D- Returns:
- a DOMMatrix containing a new matrix being the result of the matrix being translated by the given vector. The original matrix is not modified. If a translation is applied about the z-axis, the resulting matrix will be a 4x4 3D matrix.
-
toFloat32Array
public org.htmlunit.corejs.javascript.typedarrays.NativeFloat32Array toFloat32Array()Returns a new Float32Array containing all 16 elements of the matrix.- Returns:
- a new Float32Array containing all 16 elements (m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44) which comprise the matrix. The elements are stored into the array as single-precision floating-point numbers in column-major (colexographical access, or "colex") order. (In other words, down the first column from top to bottom, then the second column, and so forth.)
-
toFloat64Array
public org.htmlunit.corejs.javascript.typedarrays.NativeFloat64Array toFloat64Array()Returns a new Float64Array containing all 16 elements of the matrix.- Returns:
- a new Float64Array containing all 16 elements (m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44) which comprise the matrix. The elements are stored into the array as single-precision floating-point numbers in column-major (colexographical access, or "colex") order. (In other words, down the first column from top to bottom, then the second column, and so forth.)
-
js_toString
Returns the values of the matrix as a CSS transform function string.- Returns:
- the values of the list separated by commas, within matrix() or matrix3d() function syntax.
-
toJSON
public org.htmlunit.corejs.javascript.Scriptable toJSON()Returns a JSON representation of the DOMMatrixReadOnly object.- Returns:
- a JSON representation of the DOMMatrixReadOnly object
-