index.ts 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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 { GLTF2 } from 'babylonjs-loaders';
  22. import 'pepjs';
  23. import { initListeners, InitTags } from './initializer';
  24. // promise polyfill, if needed!
  25. BABYLON.PromisePolyfill.Apply();
  26. initListeners();
  27. //deprectaed, here for backwards compatibility
  28. let disableInit: boolean = viewerGlobals.disableInit;
  29. /**
  30. * Dispose all viewers currently registered
  31. */
  32. function disposeAll() {
  33. viewerManager.dispose();
  34. mapperManager.dispose();
  35. telemetryManager.dispose();
  36. }
  37. const Version = viewerGlobals.version;
  38. console.log("Babylon.js viewer (v" + Version + ")");
  39. // public API for initialization
  40. export { BABYLON, GLTF2, Version, InitTags, DefaultViewer, AbstractViewer, viewerGlobals, telemetryManager, disableInit, viewerManager, mapperManager, disposeAll, ModelLoader, ViewerModel, AnimationPlayMode, AnimationState, ModelState, ILoaderPlugin, AbstractViewerNavbarButton, registerCustomOptimizer };
  41. // export publicliy all configuration interfaces
  42. export * from './configuration';