soonspacejs
Version:
soonspacejs 2.x
84 lines (83 loc) • 2.51 kB
TypeScript
import { Object3D } from 'three';
import Viewport from '../Viewport';
import { BaseObject3D } from '../Library';
import LightManage from './LightManage';
import ModelManage from './ModelManage';
import PoiManage from './PoiManage';
import PoiNodeManage from './PoiNodeManage';
import Canvas3DManage from './Canvas3DManage';
import TopologyManage from './TopologyManage';
import HelperManage from './HelperManage';
import PluginObjectManage from './PluginObjectManage';
import GroupManage from './GroupManage';
import DecalManage from './DecalManage';
import { UserDataPropertyFindFunc } from '../Interface';
import { ObjectsCache } from '../Cache';
interface ManagerStore {
groupManager: GroupManage;
lightManager: LightManage;
modelManager: ModelManage;
poiManager: PoiManage;
poiNodeManager: PoiNodeManage;
canvas3DManager: Canvas3DManage;
topologyManager: TopologyManage;
helperManager: HelperManage;
decalManager: DecalManage;
pluginObjectManager: PluginObjectManage;
}
declare class Manager {
readonly viewport: Viewport;
readonly cache: ObjectsCache;
readonly scene: import("three").Scene;
readonly store: ManagerStore;
constructor(viewport: Viewport, cache: ObjectsCache);
/**
* level update
* @returns
*/
levelUpdate(): void;
/**
* scale fixed
*/
scaleFixedUpdate(): void;
/**
*
* frame update
*
*/
update(): void;
/**
*
* objects
*
*/
/**
* 检查是否存在于场景
* @param object
* @returns
*/
private isObjectInScene;
getObjectById<T extends Object3D>(id: BaseObject3D['sid']): T | null;
getObjectByName<T extends Object3D>(name: string): T[];
getObjectByUserDataProperty<T extends Object3D>(propNameOrFindFunc: string | UserDataPropertyFindFunc, propValue?: any): T[];
removeObjectById(id: BaseObject3D['sid']): boolean;
_getObjectByProps<T extends Object3D>(key: 'sid' | 'name', value: any): T[];
/**
*
* cache
*
*/
getObjectCache<T extends Object3D>(sid: BaseObject3D['sid']): T | undefined;
setObjectCache<T extends Object3D>(object?: T): void;
deleteObjectCache<T extends Object3D>(object?: T): void;
/**
*
* clear object
*
*/
clearObject(): void;
clear(): void;
dispose(): void;
}
export { ManagerStore, };
export default Manager;