UNPKG

laya-coreui-es

Version:

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

150 lines (149 loc) 5.16 kB
import { Texture2D } from "./Texture2D"; import { EventDispatcher } from "../events/EventDispatcher"; import { Handler } from "../utils/Handler"; /** * 资源加载完成后调度。 * @eventType Event.READY */ /** * <code>Texture</code> 是一个纹理处理类。 */ export declare class Texture extends EventDispatcher { /**@private 默认 UV 信息。*/ static DEF_UV: Float32Array; /**@private */ static NO_UV: Float32Array; /**@private 反转 UV 信息。*/ static INV_UV: Float32Array; /**@private */ private static _rect1; /**@private */ private static _rect2; /**@private uv的范围*/ uvrect: any[]; /**@private */ private _destroyed; /**@private */ private _bitmap; /**@private */ private _referenceCount; /**沿 X 轴偏移量。*/ offsetX: number; /**沿 Y 轴偏移量。*/ offsetY: number; /** @private */ private _w; /** @private */ private _h; /**原始宽度(包括被裁剪的透明区域)。*/ sourceWidth: number; /**原始高度(包括被裁剪的透明区域)。*/ sourceHeight: number; /**图片地址*/ url: string; /** @private */ scaleRate: number; /** * 平移 UV。 * @param offsetX 沿 X 轴偏移量。 * @param offsetY 沿 Y 轴偏移量。 * @param uv 需要平移操作的的 UV。 * @return 平移后的UV。 */ static moveUV(offsetX: number, offsetY: number, uv: any[]): any[]; /** * 根据指定资源和坐标、宽高、偏移量等创建 <code>Texture</code> 对象。 * @param source 绘图资源 Texture2D 或者 Texture对象。 * @param x 起始绝对坐标 x 。 * @param y 起始绝对坐标 y 。 * @param width 宽绝对值。 * @param height 高绝对值。 * @param offsetX X 轴偏移量(可选)。 就是[x,y]相对于原始小图片的位置。一般都是正的,表示裁掉了空白边的大小,如果是负的一般表示加了保护边 * @param offsetY Y 轴偏移量(可选)。 * @param sourceWidth 原始宽度,包括被裁剪的透明区域(可选)。 * @param sourceHeight 原始高度,包括被裁剪的透明区域(可选)。 * @return <code>Texture</code> 对象。 */ static create(source: Texture2D | Texture, x: number, y: number, width: number, height: number, offsetX?: number, offsetY?: number, sourceWidth?: number, sourceHeight?: number): Texture; /** * 截取Texture的一部分区域,生成新的Texture,如果两个区域没有相交,则返回null。 * @param texture 目标Texture。 * @param x 相对于目标Texture的x位置。 * @param y 相对于目标Texture的y位置。 * @param width 截取的宽度。 * @param height 截取的高度。 * @return 返回一个新的Texture。 */ static createFromTexture(texture: Texture, x: number, y: number, width: number, height: number): Texture; get uv(): ArrayLike<number>; set uv(value: ArrayLike<number>); /** 实际宽度。*/ get width(): number; set width(value: number); /** 实际高度。*/ get height(): number; set height(value: number); /** * 获取位图。 * @return 位图。 */ get bitmap(): Texture2D | Texture; /** * 设置位图。 * @param 位图。 */ set bitmap(value: Texture2D | Texture); /** * 获取是否已经销毁。 * @return 是否已经销毁。 */ get destroyed(): boolean; /** * 创建一个 <code>Texture</code> 实例。 * @param bitmap 位图资源。 * @param uv UV 数据信息。 */ constructor(bitmap?: Texture2D | Texture, uv?: ArrayLike<number>, sourceWidth?: number, sourceHeight?: number); /** * @private */ private _onLoaded; /** * 获取是否可以使用。 */ getIsReady(): boolean; /** * 设置此对象的位图资源、UV数据信息。 * @param bitmap 位图资源 * @param uv UV数据信息 */ setTo(bitmap?: Texture2D | Texture, uv?: ArrayLike<number>, sourceWidth?: number, sourceHeight?: number): void; /** * 加载指定地址的图片。 * @param url 图片地址。 * @param complete 加载完成回调 */ load(url: string, complete?: Handler): void; getTexturePixels(x: number, y: number, width: number, height: number): Uint8Array; /** * 获取Texture上的某个区域的像素点 * @param x * @param y * @param width * @param height * @return 返回像素点集合 */ getPixels(x: number, y: number, width: number, height: number): Uint8Array; /** * 通过url强制恢复bitmap。 */ recoverBitmap(onok?: () => void): void; /** * 强制释放Bitmap,无论是否被引用。 */ disposeBitmap(): void; /** * 销毁纹理。 */ destroy(force?: boolean): void; }