mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-09-01 11:50:54 +08:00
@@ -0,0 +1,25 @@
|
||||
/// <reference path="./geometry-dom.d.ts" />
|
||||
|
||||
var point = new DOMPoint(5, 4);
|
||||
var matrix = new DOMMatrix(2, 0, 0, 2, 10, 10);
|
||||
var transformedPoint = point.matrixTransform(matrix);
|
||||
|
||||
var point = new DOMPoint(2, 0);
|
||||
var quad1 = new DOMQuad(point, {x: 12, y: 0}, {x: 2, y: 10}, {x: 12, y: 10});
|
||||
|
||||
var rect = new DOMRect(2, 0, 10, 10);
|
||||
var quad2 = new DOMQuad(rect);
|
||||
|
||||
new DOMQuad({x: 40, y: 25}, {x: 180, y: 8}, {x: 210, y: 150}, {x: 10, y: 180});
|
||||
|
||||
var matrix = new DOMMatrix();
|
||||
matrix.scaleSelf(2);
|
||||
matrix.translateSelf(20,20);
|
||||
|
||||
var matrix = new DOMMatrix();
|
||||
matrix.translateSelf(20, 20);
|
||||
matrix.scaleSelf(2);
|
||||
matrix.translateSelf(-20, -20);
|
||||
|
||||
var matrix = new DOMMatrix();
|
||||
matrix.translateSelf(20, 20).scaleSelf(2).translateSelf(-20, -20);
|
||||
Vendored
+326
@@ -0,0 +1,326 @@
|
||||
// Type definitions for Geometry Format Specification
|
||||
// Project: http://www.w3.org/TR/geometry-1/
|
||||
// Definitions by: Toshiya Nakakura <https://github.com/nakakura>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
declare module GeometryDom {
|
||||
export interface DOMPointReadOnly {
|
||||
/**
|
||||
* x coordinate / readonly
|
||||
*/
|
||||
x: number;
|
||||
/**
|
||||
* y coordinate / readonly
|
||||
*/
|
||||
y: number;
|
||||
/**
|
||||
* z coordinate / readonly
|
||||
*/
|
||||
z: number;
|
||||
/**
|
||||
* w coordinate / readonly
|
||||
*/
|
||||
w: number;
|
||||
|
||||
/**
|
||||
* Post-multiply point with matrix.
|
||||
* @param matrix
|
||||
*/
|
||||
matrixTransform(matrix:DOMMatrixReadOnly): DOMPoint;
|
||||
}
|
||||
|
||||
interface DOMPoint extends DOMPointReadOnly {
|
||||
/**
|
||||
* x coordinate
|
||||
*/
|
||||
x: number;
|
||||
/**
|
||||
* y coordinate
|
||||
*/
|
||||
y: number;
|
||||
/**
|
||||
* z coordinate
|
||||
*/
|
||||
z: number;
|
||||
/**
|
||||
* w coordinate
|
||||
*/
|
||||
w: number;
|
||||
}
|
||||
|
||||
interface DOMRect extends DOMRectReadOnly {
|
||||
/**
|
||||
* x coordinate
|
||||
*/
|
||||
x: number;
|
||||
/**
|
||||
* y coordinate
|
||||
*/
|
||||
y: number;
|
||||
/**
|
||||
* width value
|
||||
*/
|
||||
width: number;
|
||||
/**
|
||||
* height value
|
||||
*/
|
||||
height: number;
|
||||
}
|
||||
|
||||
interface DOMRectReadOnly {
|
||||
/**
|
||||
* x coordinate
|
||||
*/
|
||||
x: number;
|
||||
/**
|
||||
* y coordinate
|
||||
*/
|
||||
y: number;
|
||||
/**
|
||||
* width value
|
||||
*/
|
||||
width: number;
|
||||
/**
|
||||
* height value
|
||||
*/
|
||||
height: number;
|
||||
/**
|
||||
* min(y coordinate, y coordinate + height dimension)
|
||||
*/
|
||||
top: number;
|
||||
/**
|
||||
* max(x coordinate, x coordinate + width dimension)
|
||||
*/
|
||||
right: number;
|
||||
/**
|
||||
* max(y coordinate, y coordinate + height dimension)
|
||||
*/
|
||||
bottom: number;
|
||||
/**
|
||||
* min(x coordinate, x coordinate + width dimension)
|
||||
*/
|
||||
left: number;
|
||||
}
|
||||
|
||||
interface DOMRectList {
|
||||
/**
|
||||
* total number of DOMRect objects associated with the object.
|
||||
* readonly unsigned long length
|
||||
*/
|
||||
length: number;
|
||||
/**
|
||||
* the DOMRect object at index must be returned.
|
||||
* @param index
|
||||
*/
|
||||
item(index: number): DOMRect;
|
||||
}
|
||||
|
||||
interface DOMQuad {
|
||||
/**
|
||||
* a DOMPoint that represents p1 of the quadrilateral
|
||||
*/
|
||||
p1: DOMPoint;
|
||||
/**
|
||||
* a DOMPoint that represents p2 of the quadrilateral
|
||||
*/
|
||||
p2: DOMPoint;
|
||||
/**
|
||||
* a DOMPoint that represents p3 of the quadrilateral
|
||||
*/
|
||||
p3: DOMPoint;
|
||||
/**
|
||||
* a DOMPoint that represents p4 of the quadrilateral
|
||||
*/
|
||||
p4: DOMPoint;
|
||||
/**
|
||||
* the associated bounding rectangle of the quadrilateral
|
||||
*/
|
||||
bounds: DOMRectReadOnly;
|
||||
}
|
||||
|
||||
interface DOMMatrixReadOnly {
|
||||
/**
|
||||
* These attributes are simple aliases for certain elements of the 4x4 matrix
|
||||
*/
|
||||
a: number;
|
||||
b: number;
|
||||
c: number;
|
||||
d: number;
|
||||
e: number;
|
||||
f: number;
|
||||
|
||||
m11: number;
|
||||
m12: number;
|
||||
m13: number;
|
||||
m14: number;
|
||||
m21: number;
|
||||
m22: number;
|
||||
m23: number;
|
||||
m24: number;
|
||||
m31: number;
|
||||
m32: number;
|
||||
m33: number;
|
||||
m34: number;
|
||||
m41: number;
|
||||
m42: number;
|
||||
m43: number;
|
||||
m44: number;
|
||||
|
||||
is2D: boolean;
|
||||
isIdentity: boolean;
|
||||
|
||||
translate(tx: number, ty: number, tz?: number): DOMMatrix;
|
||||
scale(scale: number, originX?: number, originY?: number): DOMMatrix;
|
||||
scale3d(scale: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
|
||||
scaleNonUniform(scale: number, scaleX: number, scaleY: number, scaleZ: number, originX: number, originY: number, originZ: number): DOMMatrix;
|
||||
rotate(angle: number, originX?: number, originY?: number): DOMMatrix;
|
||||
rotateFromVector(x: number, y: number): DOMMatrix;
|
||||
rotateAxisAngle(x: number, y: number, z: number, angle: number): DOMMatrix;
|
||||
skewX(sx: number): DOMMatrix;
|
||||
skewY(sx: number): DOMMatrix;
|
||||
|
||||
multiply(other: DOMMatrix): DOMMatrix;
|
||||
flipX(): DOMMatrix;
|
||||
flipY(): DOMMatrix;
|
||||
inverse(): DOMMatrix;
|
||||
|
||||
transformPoint(point?: DOMPointInit): DOMPoint;
|
||||
|
||||
toFloat32Array(): Array<number>;
|
||||
toFloat64Array(): Array<number>;
|
||||
}
|
||||
|
||||
interface DOMMatrix extends DOMMatrixReadOnly {
|
||||
a: number;
|
||||
b: number;
|
||||
c: number;
|
||||
d: number;
|
||||
e: number;
|
||||
f: number;
|
||||
|
||||
m11: number;
|
||||
m12: number;
|
||||
m13: number;
|
||||
m14: number;
|
||||
m21: number;
|
||||
m22: number;
|
||||
m23: number;
|
||||
m24: number;
|
||||
m31: number;
|
||||
m32: number;
|
||||
m33: number;
|
||||
m34: number;
|
||||
m41: number;
|
||||
m42: number;
|
||||
m43: number;
|
||||
m44: number;
|
||||
|
||||
|
||||
multiplySelf(other: DOMMatrix): DOMMatrix;
|
||||
preMultiplySelf(other: DOMMatrix): DOMMatrix;
|
||||
translateSelf(tx: number, ty: number, tz?: number): DOMMatrix;
|
||||
scaleSelf(scale: number, originX?: number, originY?: number): DOMMatrix;
|
||||
scale3dSelf(scale: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
|
||||
scaleNonUniformSelf(scaleX: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
|
||||
rotateSelf(angle: number, originX?: number, originY?: number): DOMMatrix;
|
||||
rotateFromVectorSelf(x: number, y: number): DOMMatrix;
|
||||
rotateAxisAngleSelf(x: number, y: number, z: number, angle: number): DOMMatrix;
|
||||
|
||||
skewXSelf(sx: number): DOMMatrix;
|
||||
skewYSelf(sy: number): DOMMatrix;
|
||||
invertSelf(): DOMMatrix;
|
||||
setMatrixValue(transformList: DOMMatrix): DOMMatrix;
|
||||
}
|
||||
}
|
||||
|
||||
declare var DOMPointReadOnly: {
|
||||
prototype: GeometryDom.DOMPointReadOnly;
|
||||
new (x: number, y: number, z: number, w: number): GeometryDom.DOMPointReadOnly;
|
||||
};
|
||||
|
||||
declare var DOMPoint: {
|
||||
prototype: GeometryDom.DOMPoint;
|
||||
new (x?:number, y?:number, z?:number, w?:number): GeometryDom.DOMPoint;
|
||||
};
|
||||
|
||||
interface DOMPointInit {
|
||||
/**
|
||||
* x coordinate: 0
|
||||
*/
|
||||
x: number;
|
||||
/**
|
||||
* y coordinate: 0
|
||||
*/
|
||||
y: number;
|
||||
/**
|
||||
* z coordinate: 0
|
||||
*/
|
||||
z?: number;
|
||||
/**
|
||||
* w coordinate: 1
|
||||
*/
|
||||
w?: number;
|
||||
}
|
||||
|
||||
declare var DOMRect: {
|
||||
prototype: GeometryDom.DOMRect;
|
||||
new (x: number, y: number, width: number, height: number): GeometryDom.DOMRect;
|
||||
};
|
||||
|
||||
declare var DOMRectReadOnly: {
|
||||
prototype: GeometryDom.DOMRectReadOnly;
|
||||
new (x: number, y: number, width: number, height: number): GeometryDom.DOMRectReadOnly;
|
||||
};
|
||||
|
||||
interface DOMRectInit {
|
||||
/**
|
||||
* x coordinate
|
||||
*/
|
||||
x: number;
|
||||
/**
|
||||
* y coordinate
|
||||
*/
|
||||
y: number;
|
||||
/**
|
||||
* width value
|
||||
*/
|
||||
width: number;
|
||||
/**
|
||||
* height value
|
||||
*/
|
||||
height: number;
|
||||
}
|
||||
|
||||
interface DOMRectList {
|
||||
/**
|
||||
* total number of DOMRect objects associated with the object.
|
||||
* readonly unsigned long length
|
||||
*/
|
||||
length: number;
|
||||
/**
|
||||
* the DOMRect object at index must be returned.
|
||||
* @param index
|
||||
*/
|
||||
item(index: number): GeometryDom.DOMRect;
|
||||
}
|
||||
|
||||
declare var DOMQuad: {
|
||||
prototype: GeometryDom.DOMQuad;
|
||||
new (rect?: DOMRectInit): GeometryDom.DOMQuad;
|
||||
new (p1?: DOMPointInit, p2?: DOMPointInit, p3?: DOMPointInit, p4?: DOMPointInit): GeometryDom.DOMQuad;
|
||||
};
|
||||
|
||||
declare var DOMMatrixReadOnly: {
|
||||
prototype: GeometryDom.DOMMatrixReadOnly;
|
||||
new (numberSequence: Array<number>): GeometryDom.DOMMatrixReadOnly;
|
||||
};
|
||||
|
||||
declare var DOMMatrix: {
|
||||
prototype: GeometryDom.DOMMatrix;
|
||||
new (): GeometryDom.DOMMatrix;
|
||||
new (transformList: string): GeometryDom.DOMMatrix;
|
||||
new (other: GeometryDom.DOMMatrixReadOnly): GeometryDom.DOMMatrix;
|
||||
new (array: Array<number>): GeometryDom.DOMMatrix;
|
||||
new (a: number, b: number, c: number, d: number, e: number, f: number): GeometryDom.DOMMatrix;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user