import { Line, LineBasicMaterial, LineDashedMaterial, Scene, Vector3, WebGLRenderer } from 'three'; import { CameraUpdate } from './CameraUpdate'; import { Cursor } from './Cursor'; export declare enum DrawMode { Square = 0, Cross = 1, ObliqueCross = 2 } export declare class PreViewer { private container; private _bNeedUpdate; private _Render; private _Scene; protected _Camera: CameraUpdate; private _Width; private _Height; /** * 光标对象 */ Cursor: Cursor; constructor(container: HTMLElement); get Renderer(): WebGLRenderer; UpdateSize(width: number, height: number): void; get Width(): number; get Height(): number; get Scene(): Scene; get Camera(): import("three").PerspectiveCamera | import("three").OrthographicCamera; UpdateScreen(): void; StartRender: () => void; Render(): void; private InitCamera; private InitRender; WorldToViewPoint(pWcs: Vector3): Vector3; ScreenPointToViewerPoint(p: Vector3): Vector3; ViewerPointToScreenPoint(p: Vector3): Vector3; Draw(mode: DrawMode, size: number, pt: Vector3, material: LineBasicMaterial | LineDashedMaterial, isWcs?: boolean): Line; /** * 在视图中绘制线,并返回该对象 * @param pts 点表 * @param material 材质 * @param [isWCS] 点表是世界坐标系 * @param [type] 绘制类型 Line or LineSegment * @returns */ DrawLine(pts: Vector3[], material: LineBasicMaterial | LineDashedMaterial, isWCS?: boolean, type?: typeof Line): Line; } //# sourceMappingURL=PreViewer.d.ts.map