@evoke-ui/zsort3d
Version:
TypeScript z-plane rendering engine with 3D depth simulation using Canvas 2D and mouse-based navigation
57 lines • 1.73 kB
TypeScript
import { IZ3DSortable } from '../interfaces/IZ3DSortable';
import { TouchEventData } from './TouchManager';
import { ITouchConfig } from '../interfaces/ITouchConfig';
export declare class Z3DRenderer {
private canvas;
private ctx;
private canvasWidth;
private canvasHeight;
private data;
private centerX;
private centerY;
private currentX;
private currentY;
private diffX;
private diffY;
private offsetY;
private offsetX;
private addX;
private addY;
private angleX;
private angleY;
private perspective;
private mouseDrag;
private touchInteracting;
private depths;
private animationId;
private touchManager;
private touchConfig;
private onTapHandler;
constructor(canvas: HTMLCanvasElement, data: IZ3DSortable[], touchConfig?: Partial<ITouchConfig>);
resize(w: number, h: number): void;
get perspectiveDistance(): number;
set perspectiveDistance(n: number);
get mouseX(): number;
set mouseX(x: number);
get mouseY(): number;
set mouseY(y: number);
private init;
private setupObjects;
private setupEventHandlers;
private onMouseMove;
private onMouseDown;
private onMouseUp;
private setupTouchSupport;
private startRenderLoop;
private calculateDelta;
private render3DStage;
enableTouch(config?: Partial<ITouchConfig>): Promise<void>;
disableTouch(): void;
updateTouchConfig(config: Partial<ITouchConfig>): Promise<void>;
isTouchEnabled(): boolean;
getTouchConfig(): Required<ITouchConfig> | null;
onTap(handler: (data: TouchEventData) => void): void;
offTap(): void;
destroy(): void;
}
//# sourceMappingURL=Z3DRenderer.d.ts.map