laya-coreui-es
Version:
laya核心库、ui库es版本,剔除了媒体、TTF等功能。基于 LayaAir-release_2.12.0 修改
150 lines (149 loc) • 5.16 kB
TypeScript
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;
}