UNPKG

konva

Version:

HTML5 2d canvas library for interactive graphics, design editors, whiteboards, and diagrams.

111 lines (110 loc) 2.88 kB
import type { Context } from '../Context.ts'; import type { ShapeConfig } from '../Shape.ts'; import { Shape } from '../Shape.ts'; import { Animation } from '../Animation.ts'; import type { GetSet } from '../types.ts'; export interface SpriteConfig extends ShapeConfig { animation: string; animations: any; frameIndex?: number; image: HTMLImageElement; frameRate?: number; } /** * Sprite constructor * @constructor * @memberof Konva * @augments Konva.Shape * @param {Object} config * @param {String} config.animation animation key * @param {Object} config.animations animation map * @param {Integer} [config.frameIndex] animation frame index * @param {Image} config.image image object * @param {Integer} [config.frameRate] animation frame rate * @@shapeParams * @@nodeParams * @example * var imageObj = new Image(); * imageObj.onload = function() { * var sprite = new Konva.Sprite({ * x: 200, * y: 100, * image: imageObj, * animation: 'standing', * animations: { * standing: [ * // x, y, width, height (6 frames) * 0, 0, 49, 109, * 52, 0, 49, 109, * 105, 0, 49, 109, * 158, 0, 49, 109, * 210, 0, 49, 109, * 262, 0, 49, 109 * ], * kicking: [ * // x, y, width, height (6 frames) * 0, 109, 45, 98, * 45, 109, 45, 98, * 95, 109, 63, 98, * 156, 109, 70, 98, * 229, 109, 60, 98, * 287, 109, 41, 98 * ] * }, * frameRate: 7, * frameIndex: 0 * }); * }; * imageObj.src = '/path/to/image.jpg' */ export declare class Sprite extends Shape<SpriteConfig> { _updated: boolean; anim: Animation; interval: any; constructor(config: SpriteConfig); _getFrame(): { x: any; y: any; width: any; height: any; offsetX: any; offsetY: any; } | undefined; _sceneFunc(context: Context): void; _hitFunc(context: Context): void; getSelfRect(): { x: any; y: any; width: any; height: any; }; _useBufferCanvas(): boolean; _setInterval(): void; /** * start sprite animation * @method * @name Konva.Sprite#start */ start(): void; /** * stop sprite animation * @method * @name Konva.Sprite#stop */ stop(): void; destroy(): this; /** * determine if animation of sprite is running or not. returns true or false * @method * @name Konva.Sprite#isRunning * @returns {Boolean} */ isRunning(): boolean; _updateIndex(): void; frameIndex: GetSet<number, this>; animation: GetSet<string, this>; image: GetSet<CanvasImageSource, this>; animations: GetSet<any, this>; frameOffsets: GetSet<any, this>; frameRate: GetSet<number, this>; }