UNPKG

@ahmafi/pixi-viewport

Version:

A highly configurable viewport/2D camera designed to work with pixi.js. Features include dragging, pinch-to-zoom, mouse wheel zooming, decelerated dragging, follow target, snap to point, snap to zoom, clamping, bouncing on edges, and move on mouse edges.

40 lines (39 loc) 1.19 kB
import { IPointData } from '@pixi/core'; import { Plugin } from './Plugin'; import type { Viewport } from '../Viewport'; export interface IAnimateOptions { time?: number; position?: IPointData; width?: number; height?: number; scale?: number; scaleX?: number; scaleY?: number; ease?: any; callbackOnComplete?: (viewport: Viewport) => void; removeOnInterrupt?: boolean; } export declare class Animate extends Plugin { readonly options: IAnimateOptions & { ease: any; time: number; }; protected startX?: number; protected startY?: number; protected deltaX?: number; protected deltaY?: number; protected keepCenter: boolean; protected startWidth: number | null; protected startHeight: number | null; protected deltaWidth: number | null; protected deltaHeight: number | null; protected width: number | null; protected height: number | null; protected time: number; constructor(parent: Viewport, options?: IAnimateOptions); protected setupPosition(): void; protected setupZoom(): void; down(): boolean; complete(): void; update(elapsed: number): void; }