soonspacejs
Version:
soonspacejs 2.x
44 lines (43 loc) • 2.13 kB
TypeScript
import { Scene, Mesh, Object3D } from 'three';
import localforage from 'localforage';
import { EdgeSelectOptions, StrokeSelectOptions, OpacitySelectOptions, HighlightSelectOptions, EmissiveSelectOptions, FogOptions, SignalsState, ViewportState } from '../Interface';
declare class Scener {
readonly signals: SignalsState;
readonly viewportState: ViewportState;
scene: Scene;
selectedObjects: {
edge: Set<Object3D>;
stroke: Set<Object3D>;
opacity: Set<Object3D>;
highlight: Set<Object3D>;
emissive: Set<Object3D>;
};
intersectsList: {
meshOfModelList: Mesh[];
poiIconList: Object3D[];
otherObjList: Object3D[];
getAll: () => Object3D[];
};
/**
* 线框
*/
strokeStore: typeof localforage;
constructor(signals: SignalsState, viewportState: ViewportState);
addObject(object: Object3D, parent?: Object3D | null): void;
attachObject(object: Object3D, parent?: Object3D | null): void;
removeObject(object: Object3D): void;
openSceneFog(options?: FogOptions): void;
closeSceneFog(): void;
edgeShow(object: Object3D | Object3D[], options?: EdgeSelectOptions): Promise<void>;
unEdgeShow(objects?: Object3D | Object3D[]): Promise<void | void[]>;
strokeShow(object: Object3D | Object3D[], options?: StrokeSelectOptions): Promise<void | void[]>;
unStrokeShow(objects?: Object3D | Object3D[]): Promise<void | void[]>;
opacityShow(object: Object3D | Object3D[], options?: OpacitySelectOptions): Promise<void | void[]>;
unOpacityShow(objects?: Object3D | Object3D[]): Promise<void | void[]>;
highlightShow(object: Object3D | Object3D[], options?: HighlightSelectOptions): Promise<void | void[]>;
unHighlightShow(objects?: Object3D | Object3D[]): Promise<void | void[]>;
emissiveShow(object: Object3D | Object3D[], options?: EmissiveSelectOptions): Promise<void | void[]>;
unEmissiveShow(objects?: Object3D | Object3D[]): Promise<void | void[]>;
_triggerObjectAdded(object: Object3D): void;
}
export default Scener;