import { Control } from "./Control"; import type { IControlParams } from "./Control"; import type { IMouseState } from "../renderer/RendererEvents"; import { Vec2 } from "../math/Vec2"; import { Vec3 } from "../math/Vec3"; interface ISimpleNavigationParams extends IControlParams { speed?: number; } /** * Simple keyboard camera navigation with W,S,A,D and shift keys to fly around the scene. */ export declare class SimpleNavigation extends Control { speed: number; force: Vec3; vel: Vec3; mass: number; focusVel: number; focusForce: number; protected _lookPos: Vec3 | undefined; protected _up: Vec3 | null; protected _grabbedPoint: Vec3 | undefined; protected _grabbedScreenPoint: Vec2; protected _eye0: Vec3; protected _wheelDist: number; protected _wheelPos: Vec3; protected _nx: number; protected _ny: number; constructor(options?: ISimpleNavigationParams); oninit(): void; onactivate(): void; ondeactivate(): void; protected _onMouseLeftButtonDown: (e: IMouseState) => void; protected _onMouseLeftButtonUp: (e: IMouseState) => void; protected _onMouseLeftButtonHold: (e: IMouseState) => void; protected _onRHold: (e: IMouseState) => void; protected _onRDown: (e: IMouseState) => void; protected _onMouseWheel: (e: IMouseState) => void; protected onCameraMoveForward: () => void; protected onCameraMoveBackward: () => void; protected onCameraStrifeLeft: () => void; protected onCameraStrifeRight: () => void; protected onCameraLookUp: () => void; protected onCameraLookDown: () => void; protected onCameraTurnLeft: () => void; protected onCameraTurnRight: () => void; protected onCameraRollLeft: () => void; protected onCameraRollRight: () => void; protected _handleMouseWheel(): void; protected onDraw(): void; protected get dt(): number; protected _updateVel(): void; stop(): void; } export {};