import { Matrix4, Object3D, Scene, Vector2, Vector3, WebGLRenderer } from 'three'; import { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer"; import { RenderPass } from "three/examples/jsm/postprocessing/RenderPass"; import { AAType } from '../Common/SystemEnum'; import { Database } from '../DatabaseServices/Database'; import { Entity } from '../DatabaseServices/Entity/Entity'; import { ViewportEntity } from '../DatabaseServices/ViewportEntity'; import { CameraUpdate } from './CameraUpdate'; import { GripScene } from './GripScene'; import { IViewer } from './IView'; import { OutlinePass } from './OutlinePass'; import { PreViewer } from './PreViewer'; import { RenderType } from './RenderType'; export declare class Viewer { canvasContainer: HTMLElement; protected NeedUpdate: boolean; DisableRenderer: boolean; CameraCtrl: CameraUpdate; LookTarget: Vector3; Renderer: WebGLRenderer; PreViewer: PreViewer; RendererFollowView: boolean; /**使用后期渲染器 */ UsePass: boolean; /**后期渲染器 */ Composer: EffectComposer; _AAType: AAType; RenderPass: RenderPass; OutlinePass: OutlinePass; private _SMAAPass; private _Scene; private _RenderSelectScene; GripScene: GripScene; private _Width; private _Height; private _NeedUpdateEnts; isLayout: boolean; ViewPorts: ViewportEntity[]; LayoutScene: Scene; CurrentViewport: ViewportEntity; constructor(canvasContainer: HTMLElement); get Scene(): Scene; set Scene(s: Scene); get Camera(): import("three").PerspectiveCamera | import("three").OrthographicCamera; get Width(): number; get Height(): number; set AAType(type: AAType); get AAType(): AAType; InitRender(canvasContainer: HTMLElement): void; OnSize: (width?: number, height?: number) => void; OnSizeEvent(): void; private _TempMove; StartRender: () => void; UpdateRender(): void; Render(): void; private _constant; private _planNormal; ScreenToWorld(pt: Vector3, planNormal?: Vector3, constant?: Vector3): Vector3; /** * 世界坐标系转到屏幕坐标系的变换矩阵 * wcsP.applyMatrix4(dcs) => dcsP; */ get DCS(): Matrix4; WorldToScreen(pt: Vector3): Vector3; /** * 更新视角观测目标(物体中心) */ UpdateLockTarget(): void; IsLookSelect: boolean; private _OldUsePass; StartLookSelect(): void; EndLookSelect(): void; /**当前相机控制 */ get CameraControl(): CameraUpdate; Rotate(mouseMove: Vector3): void; Pan(mouseMove: Vector3): void; Zoom(scale: number, center?: Vector3): void; ZoomAll(UpdateRender?: boolean): void; ZoomtoEntitys(ens: Entity[]): void; ViewToTop(): void; ViewToFront(): void; ViewToSwiso(): void; /** * 获得当前视图显示图元的对象列表(Threejs对象). */ get VisibleObjects(): Object3D[]; get VisibleEntitys(): Entity[]; private LazyRenderDatabase; RenderDatabase(db: Database): void; RenderDatabaseEndEvent(): void; UpdateRenderType(db: Database, type: RenderType): Promise; SwitchLayout(): void; LayoutRenderEntity(en: Entity): void; ViewportPoint(pt: Vector3 | Vector2, viewport: ViewportEntity): void; GetIViewer(pts: (Vector3 | Vector2)[]): IViewer; } //# sourceMappingURL=Viewer.d.ts.map