webcad-ue4-api/types/GraphicsSystem/PreViewer.d.ts
2022-02-16 11:15:31 +08:00

47 lines
1.7 KiB
TypeScript

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").OrthographicCamera | import("three").PerspectiveCamera;
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<import("three").BufferGeometry, LineBasicMaterial | LineDashedMaterial>;
/**
* 在视图中绘制线,并返回该对象
* @param pts 点表
* @param material 材质
* @param [isWCS] 点表是世界坐标系
* @param [type] 绘制类型 Line or LineSegment
* @returns
*/
DrawLine(pts: Vector3[], material: LineBasicMaterial | LineDashedMaterial, isWCS?: boolean, type?: typeof Line): Line<import("three").BufferGeometry, LineBasicMaterial | LineDashedMaterial>;
}
//# sourceMappingURL=PreViewer.d.ts.map