@inweb/viewer-three
Version:
JavaScript library for rendering CAD and BIM files in a browser using Three.js
44 lines (43 loc) • 1.36 kB
TypeScript
import { Camera, Controls, Vector2, Object3D } from "three";
interface WalkControlsEventMap {
change: {
type: "change";
};
walkspeedchange: {
type: "walkspeedchange";
data: number;
};
}
export declare class WalkControls extends Controls<WalkControlsEventMap> {
readonly EYE_HEIGHT = 1.7;
readonly FAILING_DISTANCE = 2;
readonly GROUND_FOLLOWING_SPEED = 0.05;
readonly LOOK_SPEED = 0.1;
readonly WALK_SPEED_DELIMITER = 4;
readonly WHEEL_SPEED_DELIMITER = 15000;
movementSpeed: number;
multiplier: number;
private raycaster;
private groundObjects;
private moveKeys;
private moveWheel;
private moveClock;
private quaternion;
private downPosition;
private mouseDragOn;
rotateDelta: Vector2;
private camera;
constructor(camera: Camera, canvas: HTMLElement, groundObjects: Object3D[]);
dispose(): void;
onPointerDown: (event: PointerEvent) => void;
onPointerMove: (event: PointerEvent) => void;
onPointerUp: (event: PointerEvent) => void;
onPointerCancel: (event: PointerEvent) => void;
onWheel: (event: WheelEvent) => void;
onKeyDown: (event: KeyboardEvent) => void;
onKeyUp: (event: KeyboardEvent) => void;
private updateGroundFollowing;
update(): void;
rotateCamera(delta: Vector2): void;
}
export {};