47 lines
1.7 KiB
TypeScript
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").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<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
|