web-ifc-viewer
Version:
53 lines (52 loc) • 2.01 kB
TypeScript
import { Mesh, Object3D, Plane, Vector2, Vector3 } from 'three';
import { IfcCamera } from './camera/camera';
import { IfcRenderer } from './renderer/renderer';
import { IfcScene } from './scene';
import { Animator } from './animator';
import { IfcEvents } from './ifcEvent';
import { IfcComponent, Items, ViewerOptions } from '../../base-types';
import { IfcMouse } from './mouse';
export declare class IfcContext {
options: ViewerOptions;
items: Items;
ifcCamera: IfcCamera;
stats: any;
mouse: IfcMouse;
readonly scene: IfcScene;
readonly renderer: IfcRenderer;
readonly events: IfcEvents;
private readonly clippingPlanes;
private readonly clock;
private readonly ifcCaster;
private readonly ifcAnimator;
private isThisBeingDisposed;
constructor(options: ViewerOptions);
dispose(): void;
getScene(): import("three").Scene;
getRenderer(): import("three").WebGLRenderer;
getRenderer2D(): import("three/examples/jsm/renderers/CSS2DRenderer").CSS2DRenderer;
getCamera(): import("three").Camera;
getIfcCamera(): IfcCamera;
getDomElement(): HTMLCanvasElement;
getDomElement2D(): HTMLElement;
getContainerElement(): HTMLElement;
getDimensions(): Vector2;
getClippingPlanes(): Plane[];
getAnimator(): Animator;
getCenter(mesh: Mesh): Vector3;
addComponent(component: IfcComponent): void;
addClippingPlane(plane: Plane): void;
removeClippingPlane(plane: Plane): void;
castRay(items: Object3D[]): import("three").Intersection<Object3D<import("three").Event>>[];
castRayIfc(): import("three").Intersection<Object3D<import("three").Event>> | null;
fitToFrame(): void;
toggleCameraControls(active: boolean): void;
updateAspect(): void;
private render;
private renderForWebXR;
private updateAllComponents;
private setupWindowRescale;
private unsetWindowRescale;
private resize;
private newItems;
}