replay-viewer
Version:
Rocket League replay viewer React component and tooling
48 lines (47 loc) • 1.41 kB
TypeScript
export declare type DrawableMeshIndex = "box" | "sphere" | "line";
export interface DrawingState {
color?: string;
meshScale?: number;
drawObject?: DrawableMeshIndex;
is3dMode?: boolean;
}
export default class DrawingManager {
color: string;
drawObject: DrawableMeshIndex;
is3dMode: boolean;
meshScale: number;
private MAX_POINTS;
private isDrawing;
private field;
private activeCamera;
private canvas;
private cloneArray;
private activeLinePointIndex;
private drawableMeshes;
private constructor();
clearDrawings: () => void;
setColor: (newColor: string) => void;
private readonly getDrawableMeshes;
private readonly getCanvas;
private readonly onMouseDown;
private readonly onMouseMove;
private readonly onMouseUp;
private handleDrawing;
private readonly getMouseVector;
private readonly drawLine;
private readonly drawMesh;
private readonly removeClones;
private readonly refreshFrame;
private readonly isPaused;
private readonly updateSize;
private readonly onCameraChange;
/**
* ========================================
* Managers are singletons
* ========================================
*/
private static instance?;
static getInstance(): DrawingManager;
static init(state?: DrawingState): DrawingManager;
static destruct(): void;
}