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.

36 lines (35 loc) 976 B
import type { FederatedEvent } from '@pixi/events'; import type { Point } from '@pixi/math'; import type { Viewport } from './Viewport'; export type DragEvent = { event: FederatedEvent; screen: Point; world: Point; viewport: Viewport; }; export type ClickedEvent = DragEvent; export type MovedEvent = { viewport: Viewport; type: 'wheel' | 'pinch' | 'animate' | 'ensureVisible' | 'snap' | 'mouse-edges' | 'follow' | 'drag' | 'decelerate' | 'clamp-x' | 'clamp-y' | 'bounce-x' | 'bounce-y'; original?: Point; }; export type ZoomedEvent = { viewport: Viewport; type: 'wheel' | 'pinch' | 'animate' | 'ensureVisible' | 'clamp-zoom'; center?: Point; original?: Point; }; export type WheelStartEvent = { event: WheelEvent; viewport: Viewport; }; export type Events = { wheel: [ { event: FederatedEvent; screen: Point; world: Point; viewport: Viewport; } ]; };