@speckle/viewer
Version:
A 3d viewer for Speckle, based on threejs.
78 lines (77 loc) • 3.94 kB
TypeScript
import { type FilteringState } from './extensions/FilteringExtension.js';
import { type InlineView, type PolarView, type CanonicalView } from './extensions/CameraController.js';
import type { Query, QueryArgsResultMap, QueryResult } from './queries/Query.js';
import { type SpeckleView, type SunLightConfiguration, type ViewerParams } from '../IViewer.js';
import { Viewer } from './Viewer.js';
import { WorldTree } from './tree/WorldTree.js';
import { type DiffResult, VisualDiffMode } from './extensions/DiffExtension.js';
import { type PropertyInfo } from './filtering/PropertyManager.js';
import { BatchObject } from './batching/BatchObject.js';
import { SpeckleViewer } from '@speckle/shared';
import { MeasurementOptions } from '@speckle/shared/viewer/state';
export declare class LegacyViewer extends Viewer {
private cameraController;
private selection;
private sections;
private measurements;
private filtering;
private explodeExtension;
private diffExtension;
private highlightExtension;
constructor(container: HTMLElement, params?: ViewerParams);
init(): Promise<void>;
getRenderer(): import("./SpeckleRenderer.js").default;
/** SECTION BOX */
setSectionBox(boxData?: SpeckleViewer.ViewerState.SectionBoxData, offset?: number): void;
getCurrentSectionBox(): SpeckleViewer.ViewerState.SectionBoxData;
toggleSectionBox(): void;
sectionBoxOff(): void;
sectionBoxOn(): void;
/** FILTERING */
selectObjects(objectIds: string[]): Promise<FilteringState>;
resetSelection(): Promise<FilteringState>;
hideObjects(objectIds: string[], stateKey?: string | undefined, includeDescendants?: boolean, ghost?: boolean): Promise<FilteringState>;
showObjects(objectIds: string[], stateKey?: string | undefined, includeDescendants?: boolean): Promise<FilteringState>;
isolateObjects(objectIds: string[], stateKey?: string | undefined, includeDescendants?: boolean, ghost?: boolean): Promise<FilteringState>;
unIsolateObjects(objectIds: string[], stateKey?: string | undefined, includeDescendants?: boolean): Promise<FilteringState>;
highlightObjects(objectIds: string[]): Promise<FilteringState>;
resetHighlight(): Promise<FilteringState>;
setColorFilter(property: PropertyInfo, ghost?: boolean): Promise<FilteringState>;
removeColorFilter(): Promise<FilteringState>;
setUserObjectColors(groups: {
objectIds: string[];
color: string;
}[]): Promise<FilteringState>;
resetFilters(): Promise<FilteringState | null>;
private preserveSelectionHighlightFilter;
/** TREE */
getDataTree(): void;
getWorldTree(): WorldTree;
/** QUERIES */
query<T extends Query>(query: T): QueryArgsResultMap[T['operation']];
queryAsync(query: Query): Promise<QueryResult> | null;
/** CAMERA */
zoom(objectIds?: string[], fit?: number, transition?: boolean): void;
setOrthoCameraOn(): void;
setPerspectiveCameraOn(): void;
toggleCameraProjection(): void;
setLightConfiguration(config: SunLightConfiguration): void;
getViews(): SpeckleView[];
setView(view: CanonicalView | SpeckleView | InlineView | PolarView, transition?: boolean): void;
/** MISC */
screenshot(): Promise<string>;
explode(time: number): void;
getObjects(id: string): BatchObject[];
/**
* OBJECT LOADING/UNLOADING
*/
loadObjectAsync(url: string, token?: string | undefined, enableCaching?: boolean, zoomToObject?: boolean): Promise<void>;
diff(urlA: string, urlB: string, mode: VisualDiffMode, authToken?: string): Promise<DiffResult>;
undiff(): Promise<void>;
setDiffTime(_diffResult: DiffResult, time: number): void;
setVisualDiffMode(_diffResult: DiffResult, mode: VisualDiffMode): void;
enableMeasurements(value: boolean): void;
setMeasurementOptions(options: MeasurementOptions): void;
removeMeasurement(): void;
dispose(): void;
}