the-world-engine
Version:
three.js based, unity like game engine for browser
125 lines (124 loc) • 3.66 kB
TypeScript
import { CssRenderer } from "./CssRenderer";
/**
* Option for the css object that renders the image
*/
export interface ICssImageRenderOption {
/**
* image rendering mode (default: ImageRenderingMode.Pixelated)
*
* @see https://developer.mozilla.org/en-US/docs/Web/CSS/image-rendering
*/
imageRenderingMode: ImageRenderingMode;
}
/**
* css image-rendering property enum
*/
export declare enum ImageRenderingMode {
/**
* The scaling algorithm is UA dependent. Since version 1.9 (Firefox 3.0), Gecko uses bilinear resampling (high quality).
*/
Auto = "auto",
/**
* The image is scaled with the nearest-neighbor algorithm.
*/
CrispEdges = "crisp-edges",
/**
* Using the nearest-neighbor algorithm,
* the image is scaled up to the next integer multiple that is greater than or equal to its original size,
* then scaled down to the target size, as for smooth. When scaling up to integer multiples of the original size,
* this will have the same effect as crisp-edges.
*/
Pixelated = "pixelated"
}
/**
* css sprite renderer
*/
export declare class CssSpriteRenderer extends CssRenderer<HTMLImageElement> implements ICssImageRenderOption {
private _imageWidth;
private _imageHeight;
private _imageFlipX;
private _imageFlipY;
private _opacity;
private _imageRenderingMode;
private _initializeFunction;
protected renderInitialize(): void;
protected updateCenterOffset(updateTransform: boolean): void;
protected updateViewScale(updateTransform: boolean): void;
/**
* image (default: null)
*/
get image(): HTMLImageElement | null;
/**
* set image from path asynchronously
* @param path image path
* @param onComplete on complete callback
* @returns
*/
asyncSetImageFromPath(path: string, onComplete?: () => void): void;
/**
* set image from `HTMLImageElement`
* @param image image must be loaded
* @returns
*/
setImage(image: HTMLImageElement): void;
/**
* image width (default: 0)
*
* if this value is 0, it will automatically update when image is set
*/
get imageWidth(): number;
/**
* image width (default: 0)
*
* if this value is 0, it will automatically update when image is set
*/
set imageWidth(value: number);
/**
* image height (default: 0)
*
* if this value is 0, it will automatically update when image is set
*/
get imageHeight(): number;
/**
* image height (default: 0)
*
* if this value is 0, it will automatically update when image is set
*/
set imageHeight(value: number);
/**
* image flip x (default: false)
*/
get imageFlipX(): boolean;
/**
* image flip x (default: false)
*/
set imageFlipX(value: boolean);
/**
* image flip y (default: false)
*/
get imageFlipY(): boolean;
/**
* image flip y (default: false)
*/
set imageFlipY(value: boolean);
/**
* image opacity (default: 1)
*/
get opacity(): number;
/**
* image opacity (default: 1)
*/
set opacity(value: number);
/**
* image rendering mode (default: ImageRenderingMode.Pixelated)
*
* @see https://developer.mozilla.org/en-US/docs/Web/CSS/image-rendering
*/
get imageRenderingMode(): ImageRenderingMode;
/**
* image rendering mode (default: ImageRenderingMode.Pixelated)
*
* @see https://developer.mozilla.org/en-US/docs/Web/CSS/image-rendering
*/
set imageRenderingMode(value: ImageRenderingMode);
}