import { Box3, OrthographicCamera, PerspectiveCamera, Vector3 } from 'three'; import { CADFiler } from '../DatabaseServices/CADFiler'; export declare enum CameraType { OrthographicCamera = 1, PerspectiveCamera = 2 } declare type Camera = OrthographicCamera | PerspectiveCamera; /** * * 相机的控制. * ->切换相机 * ->设置视口大小 * ->旋转和移动相机. */ export declare class CameraUpdate { private _CurCamera; private _CameraArray; private _Width; private _Height; private _ViewHeight; private _Target; private _Direction; private _Orbit; _MinViewHeight: number; _MaxViewHeight: number; constructor(); get Aspect(): number; get Camera(): Camera; get ViewHeight(): number; set ViewHeight(height: number); get Direction(): Vector3; SetSize(width: number, height: number): void; get Width(): number; get Height(): number; /** * 平移相机. * @param {Vector3} mouseMove */ Pan(mouseMove: Vector3): void; Rotate(mouseMove: Vector3, target: Vector3): void; Zoom(scale: number, scaleCenter?: Vector3): void; ZoomExtensBox3(box3: Box3): void; /** * 设置相机的观察向量. * @param {Vector3} dir 方向向量,这个向量传入后会被更改为单位向量 */ LookAt(dir: Vector3): void; LookAtEvent(dir: Vector3): void; UpdateUp(): void; /** * 根据视口大小,设置相机视口范围. */ Update(): void; ZoomEvent(): void; set CameraType(type: CameraType); get CameraType(): CameraType; SwitchCamera(): void; ReadFile(file: CADFiler): void; WriteFile(file: CADFiler): void; } export {}; //# sourceMappingURL=CameraUpdate.d.ts.map