UNPKG

laya-coreui-es

Version:

laya核心库、ui库es版本,剔除了媒体、TTF等功能。基于 LayaAir-release_2.12.0 修改

181 lines (180 loc) 7.23 kB
import { Point } from "./Point"; /** * <p> <code>Matrix</code> 类表示一个转换矩阵,它确定如何将点从一个坐标空间映射到另一个坐标空间。</p> * <p>您可以对一个显示对象执行不同的图形转换,方法是设置 Matrix 对象的属性,将该 Matrix 对象应用于 Transform 对象的 matrix 属性,然后应用该 Transform 对象作为显示对象的 transform 属性。这些转换函数包括平移(x 和 y 重新定位)、旋转、缩放和倾斜。</p> */ export declare class Matrix { /**@private 一个初始化的 <code>Matrix</code> 对象,不允许修改此对象内容。*/ static EMPTY: Matrix; /**用于中转使用的 <code>Matrix</code> 对象。*/ static TEMP: Matrix; /**缩放或旋转图像时影响像素沿 x 轴定位的值。*/ a: number; /**旋转或倾斜图像时影响像素沿 y 轴定位的值。*/ b: number; /**旋转或倾斜图像时影响像素沿 x 轴定位的值。*/ c: number; /**缩放或旋转图像时影响像素沿 y 轴定位的值。*/ d: number; /**沿 x 轴平移每个点的距离。*/ tx: number; /**沿 y 轴平移每个点的距离。*/ ty: number; /** * 使用指定参数创建新的 <code>Matrix</code> 对象。 * @param a (可选)缩放或旋转图像时影响像素沿 x 轴定位的值。 * @param b (可选)旋转或倾斜图像时影响像素沿 y 轴定位的值。 * @param c (可选)旋转或倾斜图像时影响像素沿 x 轴定位的值。 * @param d (可选)缩放或旋转图像时影响像素沿 y 轴定位的值。 * @param tx (可选)沿 x 轴平移每个点的距离。 * @param ty (可选)沿 y 轴平移每个点的距离。 */ constructor(a?: number, b?: number, c?: number, d?: number, tx?: number, ty?: number, nums?: number); /** * 将本矩阵设置为单位矩阵。 * @return 返回当前矩形。 */ identity(): Matrix; /** * 设置沿 x 、y 轴平移每个点的距离。 * @param x 沿 x 轴平移每个点的距离。 * @param y 沿 y 轴平移每个点的距离。 * @return 返回对象本身 */ setTranslate(x: number, y: number): Matrix; /** * 沿 x 和 y 轴平移矩阵,平移的变化量由 x 和 y 参数指定。 * @param x 沿 x 轴向右移动的量(以像素为单位)。 * @param y 沿 y 轴向下移动的量(以像素为单位)。 * @return 返回此矩形对象。 */ translate(x: number, y: number): Matrix; /** * 对矩阵应用缩放转换。 * @param x 用于沿 x 轴缩放对象的乘数。 * @param y 用于沿 y 轴缩放对象的乘数。 * @return 返回矩阵对象本身 */ scale(x: number, y: number): Matrix; /** * 对 Matrix 对象应用旋转转换。 * @param angle 以弧度为单位的旋转角度。 * @return 返回矩阵对象本身 */ rotate(angle: number): Matrix; /** * 对 Matrix 对象应用倾斜转换。 * @param x 沿着 X 轴的 2D 倾斜弧度。 * @param y 沿着 Y 轴的 2D 倾斜弧度。 * @return 当前 Matrix 对象。 */ skew(x: number, y: number): Matrix; /** * 对指定的点应用当前矩阵的逆转化并返回此点。 * @param out 待转化的点 Point 对象。 * @return 返回out */ invertTransformPoint(out: Point): Point; /** * 将 Matrix 对象表示的几何转换应用于指定点。 * @param out 用来设定输出结果的点。 * @return 返回out */ transformPoint(out: Point): Point; /** * 将 Matrix 对象表示的几何转换应用于指定点,忽略tx、ty。 * @param out 用来设定输出结果的点。 * @return 返回out */ transformPointN(out: Point): Point; /** * 获取 X 轴缩放值。 * @return X 轴缩放值。 */ getScaleX(): number; /** * 获取 Y 轴缩放值。 * @return Y 轴缩放值。 */ getScaleY(): number; /** * 执行原始矩阵的逆转换。 * @return 当前矩阵对象。 */ invert(): Matrix; /** * 将 Matrix 的成员设置为指定值。 * @param a 缩放或旋转图像时影响像素沿 x 轴定位的值。 * @param b 旋转或倾斜图像时影响像素沿 y 轴定位的值。 * @param c 旋转或倾斜图像时影响像素沿 x 轴定位的值。 * @param d 缩放或旋转图像时影响像素沿 y 轴定位的值。 * @param tx 沿 x 轴平移每个点的距离。 * @param ty 沿 y 轴平移每个点的距离。 * @return 当前矩阵对象。 */ setTo(a: number, b: number, c: number, d: number, tx: number, ty: number): Matrix; /** * 将指定矩阵与当前矩阵连接,从而将这两个矩阵的几何效果有效地结合在一起。 * @param matrix 要连接到源矩阵的矩阵。 * @return 当前矩阵。 */ concat(matrix: Matrix): Matrix; /** * 将指定的两个矩阵相乘后的结果赋值给指定的输出对象。 * @param m1 矩阵一。 * @param m2 矩阵二。 * @param out 输出对象。 * @return 结果输出对象 out。 */ static mul(m1: Matrix, m2: Matrix, out: Matrix): Matrix; /** * 将指定的两个矩阵相乘,结果赋值给指定的输出数组,长度为16。 * @param m1 矩阵一。 * @param m2 矩阵二。 * @param out 输出对象Array。 * @return 结果输出对象 out。 */ static mul16(m1: Matrix, m2: Matrix, out: any[]): any[]; /** * @private * 对矩阵应用缩放转换。反向相乘 * @param x 用于沿 x 轴缩放对象的乘数。 * @param y 用于沿 y 轴缩放对象的乘数。 */ scaleEx(x: number, y: number): void; /** * @private * 对 Matrix 对象应用旋转转换。反向相乘 * @param angle 以弧度为单位的旋转角度。 */ rotateEx(angle: number): void; /** * 返回此 Matrix 对象的副本。 * @return 与原始实例具有完全相同的属性的新 Matrix 实例。 */ clone(): Matrix; /** * 将当前 Matrix 对象中的所有矩阵数据复制到指定的 Matrix 对象中。 * @param dec 要复制当前矩阵数据的 Matrix 对象。 * @return 已复制当前矩阵数据的 Matrix 对象。 */ copyTo(dec: Matrix): Matrix; /** * 返回列出该 Matrix 对象属性的文本值。 * @return 一个字符串,它包含 Matrix 对象的属性值:a、b、c、d、tx 和 ty。 */ toString(): string; /** * 销毁此对象。 */ destroy(): void; /** * 回收到对象池,方便复用 */ recover(): void; /** * 从对象池中创建一个 <code>Matrix</code> 对象。 * @return <code>Matrix</code> 对象。 */ static create(): Matrix; }