index.ts 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import { mapperManager } from './configuration/mappers';
  2. import { viewerGlobals } from './configuration/globals';
  3. import { viewerManager } from './viewer/viewerManager';
  4. import { DefaultViewer } from './viewer/defaultViewer';
  5. import { AbstractViewer } from './viewer/viewer';
  6. import { telemetryManager } from './managers/telemetryManager';
  7. import { ModelLoader } from './loader/modelLoader';
  8. import { ViewerModel, ModelState } from './model/viewerModel';
  9. import { AnimationPlayMode, AnimationState } from './model/modelAnimation';
  10. import { ILoaderPlugin } from './loader/plugins/loaderPlugin';
  11. import { AbstractViewerNavbarButton } from './templating/viewerTemplatePlugin';
  12. import { registerCustomOptimizer } from './optimizer/custom';
  13. /**
  14. * BabylonJS Viewer
  15. *
  16. * An HTML-Based viewer for 3D models, based on BabylonJS and its extensions.
  17. */
  18. import * as BABYLON from 'babylonjs';
  19. // load needed modules.
  20. import 'babylonjs-loaders';
  21. import 'pepjs';
  22. import { initListeners, InitTags } from './initializer';
  23. // promise polyfill, if needed!
  24. BABYLON.PromisePolyfill.Apply();
  25. initListeners();
  26. //deprectaed, here for backwards compatibility
  27. let disableInit: boolean = viewerGlobals.disableInit;
  28. /**
  29. * Dispose all viewers currently registered
  30. */
  31. function disposeAll() {
  32. viewerManager.dispose();
  33. mapperManager.dispose();
  34. telemetryManager.dispose();
  35. }
  36. const Version = viewerGlobals.version;
  37. console.log("Babylon.js viewer (v" + Version + ")");
  38. // public API for initialization
  39. export { BABYLON, Version, InitTags, DefaultViewer, AbstractViewer, viewerGlobals, telemetryManager, disableInit, viewerManager, mapperManager, disposeAll, ModelLoader, ViewerModel, AnimationPlayMode, AnimationState, ModelState, ILoaderPlugin, AbstractViewerNavbarButton, registerCustomOptimizer };
  40. export { GLTF2 } from 'babylonjs-loaders';
  41. // export publicliy all configuration interfaces
  42. export * from './configuration';