@aurigma/design-atoms-model
Version:
Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.
37 lines (36 loc) • 1.37 kB
TypeScript
import { PointF } from "./PointF";
/**
* Creates a 2D transform matrix.
* [ x'] [ m00 m01 m02 ] [ x ] [ m00x + m01y + m02 ]
* [ y'] = [ m10 m11 m12 ] [ y ] = [ m10x + m11y + m12 ]
* [ 1 ] [ 0 0 1 ] [ 1 ] [ 1 ]
*/
export declare class Matrix {
private readonly _equalityTolerance;
m00: number;
m10: number;
m01: number;
m11: number;
m02: number;
m12: number;
constructor(m00?: number, m10?: number, m01?: number, m11?: number, m02?: number, m12?: number);
get angle(): number;
get scaleX(): number;
get scaleY(): number;
get translateX(): number;
get translateY(): number;
get isIdentity(): boolean;
setTransform(m00: number, m10: number, m01: number, m11: number, m02: number, m12: number): void;
transformPoint(p: PointF, clone?: boolean): PointF;
concatenate(m: Matrix): this;
rotate(angle: number): this;
rotateAt(angle: number, x: number, y: number): this;
scale(sx: number, sy: number): this;
scaleRelativeToPoint(sx: number, sy: number, origin: PointF): this;
translate(dx: number, dy: number): this;
clone(): Matrix;
updateObjectByMatrix(object: Object, key1: string, key2: string): Object;
getInversed(): Matrix;
equals(other: Matrix): boolean;
private get _determinant();
}