@combeenation/3d-viewer 13.0.0 → 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/dist/lib-cjs/buildinfo.json +1 -1
  2. package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
  3. package/dist/lib-cjs/index.d.ts +11 -12
  4. package/dist/lib-cjs/index.js +11 -12
  5. package/dist/lib-cjs/index.js.map +1 -1
  6. package/dist/lib-cjs/internal/{cbnCustomBabylonLoaderPlugin.js → cbn-custom-babylon-loader-plugin.js} +17 -9
  7. package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.js.map +1 -0
  8. package/dist/lib-cjs/internal/{cloningHelper.js → cloning-helper.js} +15 -16
  9. package/dist/lib-cjs/internal/cloning-helper.js.map +1 -0
  10. package/dist/lib-cjs/internal/{deviceHelper.js → device-helper.js} +1 -1
  11. package/dist/lib-cjs/internal/device-helper.js.map +1 -0
  12. package/dist/lib-cjs/internal/{geometryHelper.js → geometry-helper.js} +5 -5
  13. package/dist/lib-cjs/internal/geometry-helper.js.map +1 -0
  14. package/dist/lib-cjs/internal/{metadataHelper.js → metadata-helper.js} +1 -1
  15. package/dist/lib-cjs/internal/metadata-helper.js.map +1 -0
  16. package/dist/lib-cjs/internal/{paintableHelper.js → paintable-helper.js} +1 -1
  17. package/dist/lib-cjs/internal/paintable-helper.js.map +1 -0
  18. package/dist/lib-cjs/internal/{tagsHelper.js → tags-helper.js} +1 -1
  19. package/dist/lib-cjs/internal/tags-helper.js.map +1 -0
  20. package/dist/lib-cjs/manager/camera-manager.d.ts +110 -0
  21. package/dist/lib-cjs/manager/{cameraManager.js → camera-manager.js} +63 -10
  22. package/dist/lib-cjs/manager/camera-manager.js.map +1 -0
  23. package/dist/lib-cjs/manager/{debugManager.js → debug-manager.js} +1 -1
  24. package/dist/lib-cjs/manager/debug-manager.js.map +1 -0
  25. package/dist/lib-cjs/manager/{eventManager.js → event-manager.js} +1 -1
  26. package/dist/lib-cjs/manager/event-manager.js.map +1 -0
  27. package/dist/lib-cjs/manager/{gltfExportManager.js → gltf-export-manager.js} +25 -25
  28. package/dist/lib-cjs/manager/gltf-export-manager.js.map +1 -0
  29. package/dist/lib-cjs/manager/{materialManager.js → material-manager.js} +6 -6
  30. package/dist/lib-cjs/manager/material-manager.js.map +1 -0
  31. package/dist/lib-cjs/manager/{modelManager.js → model-manager.js} +8 -6
  32. package/dist/lib-cjs/manager/model-manager.js.map +1 -0
  33. package/dist/lib-cjs/manager/{parameterManager.js → parameter-manager.js} +12 -12
  34. package/dist/lib-cjs/manager/parameter-manager.js.map +1 -0
  35. package/dist/lib-cjs/manager/{sceneManager.js → scene-manager.js} +1 -1
  36. package/dist/lib-cjs/manager/scene-manager.js.map +1 -0
  37. package/dist/lib-cjs/manager/{textureManager.js → texture-manager.js} +1 -1
  38. package/dist/lib-cjs/manager/texture-manager.js.map +1 -0
  39. package/dist/lib-cjs/{viewerError.js → viewer-error.js} +1 -1
  40. package/dist/lib-cjs/viewer-error.js.map +1 -0
  41. package/dist/lib-cjs/viewer.d.ts +1 -3
  42. package/dist/lib-cjs/viewer.js +6 -10
  43. package/dist/lib-cjs/viewer.js.map +1 -1
  44. package/package.json +1 -1
  45. package/src/index.ts +11 -12
  46. package/src/internal/{cbnCustomBabylonLoaderPlugin.ts → cbn-custom-babylon-loader-plugin.ts} +13 -3
  47. package/src/internal/{cloningHelper.ts → cloning-helper.ts} +3 -3
  48. package/src/internal/{geometryHelper.ts → geometry-helper.ts} +2 -2
  49. package/src/manager/{cameraManager.ts → camera-manager.ts} +140 -11
  50. package/src/manager/{gltfExportManager.ts → gltf-export-manager.ts} +4 -4
  51. package/src/manager/{materialManager.ts → material-manager.ts} +1 -1
  52. package/src/manager/{modelManager.ts → model-manager.ts} +5 -3
  53. package/src/manager/{parameterManager.ts → parameter-manager.ts} +3 -3
  54. package/src/viewer.ts +3 -9
  55. package/dist/lib-cjs/internal/cbnCustomBabylonLoaderPlugin.js.map +0 -1
  56. package/dist/lib-cjs/internal/cloningHelper.js.map +0 -1
  57. package/dist/lib-cjs/internal/deviceHelper.js.map +0 -1
  58. package/dist/lib-cjs/internal/geometryHelper.js.map +0 -1
  59. package/dist/lib-cjs/internal/metadataHelper.js.map +0 -1
  60. package/dist/lib-cjs/internal/paintableHelper.js.map +0 -1
  61. package/dist/lib-cjs/internal/tagsHelper.js.map +0 -1
  62. package/dist/lib-cjs/manager/cameraManager.d.ts +0 -51
  63. package/dist/lib-cjs/manager/cameraManager.js.map +0 -1
  64. package/dist/lib-cjs/manager/debugManager.js.map +0 -1
  65. package/dist/lib-cjs/manager/eventManager.js.map +0 -1
  66. package/dist/lib-cjs/manager/gltfExportManager.js.map +0 -1
  67. package/dist/lib-cjs/manager/materialManager.js.map +0 -1
  68. package/dist/lib-cjs/manager/modelManager.js.map +0 -1
  69. package/dist/lib-cjs/manager/parameterManager.js.map +0 -1
  70. package/dist/lib-cjs/manager/sceneManager.js.map +0 -1
  71. package/dist/lib-cjs/manager/screenshotManager.d.ts +0 -36
  72. package/dist/lib-cjs/manager/screenshotManager.js +0 -40
  73. package/dist/lib-cjs/manager/screenshotManager.js.map +0 -1
  74. package/dist/lib-cjs/manager/textureManager.js.map +0 -1
  75. package/dist/lib-cjs/viewerError.js.map +0 -1
  76. package/src/manager/screenshotManager.ts +0 -59
  77. /package/dist/lib-cjs/internal/{cbnCustomBabylonLoaderPlugin.d.ts → cbn-custom-babylon-loader-plugin.d.ts} +0 -0
  78. /package/dist/lib-cjs/internal/{cloningHelper.d.ts → cloning-helper.d.ts} +0 -0
  79. /package/dist/lib-cjs/internal/{deviceHelper.d.ts → device-helper.d.ts} +0 -0
  80. /package/dist/lib-cjs/internal/{geometryHelper.d.ts → geometry-helper.d.ts} +0 -0
  81. /package/dist/lib-cjs/internal/{metadataHelper.d.ts → metadata-helper.d.ts} +0 -0
  82. /package/dist/lib-cjs/internal/{paintableHelper.d.ts → paintable-helper.d.ts} +0 -0
  83. /package/dist/lib-cjs/internal/{tagsHelper.d.ts → tags-helper.d.ts} +0 -0
  84. /package/dist/lib-cjs/manager/{debugManager.d.ts → debug-manager.d.ts} +0 -0
  85. /package/dist/lib-cjs/manager/{eventManager.d.ts → event-manager.d.ts} +0 -0
  86. /package/dist/lib-cjs/manager/{gltfExportManager.d.ts → gltf-export-manager.d.ts} +0 -0
  87. /package/dist/lib-cjs/manager/{materialManager.d.ts → material-manager.d.ts} +0 -0
  88. /package/dist/lib-cjs/manager/{modelManager.d.ts → model-manager.d.ts} +0 -0
  89. /package/dist/lib-cjs/manager/{parameterManager.d.ts → parameter-manager.d.ts} +0 -0
  90. /package/dist/lib-cjs/manager/{sceneManager.d.ts → scene-manager.d.ts} +0 -0
  91. /package/dist/lib-cjs/manager/{textureManager.d.ts → texture-manager.d.ts} +0 -0
  92. /package/dist/lib-cjs/{viewerError.d.ts → viewer-error.d.ts} +0 -0
  93. /package/src/{globalTypes.d.ts → global-types.d.ts} +0 -0
  94. /package/src/internal/{deviceHelper.ts → device-helper.ts} +0 -0
  95. /package/src/internal/{metadataHelper.ts → metadata-helper.ts} +0 -0
  96. /package/src/internal/{paintableHelper.ts → paintable-helper.ts} +0 -0
  97. /package/src/internal/{tagsHelper.ts → tags-helper.ts} +0 -0
  98. /package/src/manager/{debugManager.ts → debug-manager.ts} +0 -0
  99. /package/src/manager/{eventManager.ts → event-manager.ts} +0 -0
  100. /package/src/manager/{sceneManager.ts → scene-manager.ts} +0 -0
  101. /package/src/manager/{textureManager.ts → texture-manager.ts} +0 -0
  102. /package/src/{viewerError.ts → viewer-error.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"sceneManager.js","sourceRoot":"","sources":["../../../src/manager/sceneManager.ts"],"names":[],"mappings":";;;AAAA,oCAAgG;AAChG,yCAAkC;AA6BlC;;;;;;GAMG;AACH,MAAa,YAAY;IAyBvB,YAA6B,MAAc,EAAE,oBAAwD;QAAxE,WAAM,GAAN,MAAM,CAAQ;QAtB3C,yBAAyB;QACzB,yCAAyC;QAC/B,0BAAqB,GAAyB;YACtD,eAAe,EAAE,IAAI,cAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACvC,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI;gBACZ,eAAe,EAAE,qBAAa,CAAC,uBAAuB;gBACtD,QAAQ,EAAE;oBACR,IAAI,EAAE,GAAG;oBACT,gBAAgB,EAAE,CAAC;oBACnB,cAAc,EAAE,GAAG;oBACnB,kBAAkB,EAAE,IAAI;iBACzB;aACF;YAED,WAAW,EAAE;gBACX,MAAM,EAAE,IAAI;gBACZ,GAAG,EAAE,mEAAmE;gBACxE,SAAS,EAAE,CAAC;aACb;SACF,CAAC;QAGA,IAAA,iBAAK,EAAC,IAAI,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACI,2BAA2B;QAChC,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC;QAE3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC;QAE1E,SAAS;QACT,IAAI,cAAc,CAAC,MAAM,EAAE;YACzB,MAAM,MAAM,GAAG,IAAI,uBAAe,CAChC,GAAG,YAAY,CAAC,mBAAmB,SAAS,EAC5C,cAAc,CAAC,eAAe,CAAC,KAAK,EACpC,cAAc,CAAC,eAAe,CAAC,IAAI,EACnC,cAAc,CAAC,eAAe,CAAC,MAAM,EACrC,cAAc,CAAC,eAAe,CAAC,MAAM,EACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAClB,CAAC;YACF,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAC9D,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC3C,MAAM,CAAC,gBAAgB,GAAG,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACnE,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC/D,MAAM,CAAC,kBAAkB,GAAG,cAAc,CAAC,QAAQ,CAAC,kBAAkB,CAAC;SACxE;QAED,cAAc;QACd,IAAI,WAAW,CAAC,MAAM,EAAE;YACtB,MAAM,UAAU,GAAG,mBAAW,CAAC,yBAAyB,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,UAAU,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,GAAG,WAAW,CAAC,SAAS,CAAC;SAChE;IACH,CAAC;;AA9DH,oCA+DC;AA9DkB,gCAAmB,GAAG,kBAAkB,CAAC"}
@@ -1,36 +0,0 @@
1
- import { IScreenshotSize, Viewer } from '../index';
2
- export declare type ScreenshotSettings = {
3
- /** Defaults to canvas width & height */
4
- size?: IScreenshotSize;
5
- /**
6
- * Default `image/png`
7
- *
8
- * **Info regarding JPEG:** \
9
- * Use mimeType `image/jpeg` (**not** `image/jpg`) when creating jpeg's. \
10
- * Also ensure that the viewer scenes `clearColor` has an alpha value of `1` as jpeg's don't
11
- * support transparency. Otherwise background will always be black for jpeg's.
12
- */
13
- mimeType?: string;
14
- /** Default `1` */
15
- samples?: number;
16
- /** Default `false` */
17
- antialiasing?: boolean;
18
- /** NOTE: after update to Babylon.js V6: if file name is given, the screenshot image will be downloaded and the base64
19
- * string will NOT be returned! */
20
- fileName?: string;
21
- /** Default `false` */
22
- renderSprites?: boolean;
23
- };
24
- /**
25
- * Manager for tasks related to screenshots
26
- */
27
- export declare class ScreenshotManager {
28
- protected viewer: Viewer;
29
- /** @internal */
30
- constructor(viewer: Viewer);
31
- /**
32
- * Takes a sceenshot the the current scene.\
33
- * The result is a string containing a base64 encoded image.
34
- */
35
- takeScreenshot(settings?: ScreenshotSettings): Promise<string>;
36
- }
@@ -1,40 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ScreenshotManager = void 0;
13
- const index_1 = require("../index");
14
- /**
15
- * Manager for tasks related to screenshots
16
- */
17
- class ScreenshotManager {
18
- /** @internal */
19
- constructor(viewer) {
20
- this.viewer = viewer;
21
- }
22
- /**
23
- * Takes a sceenshot the the current scene.\
24
- * The result is a string containing a base64 encoded image.
25
- */
26
- takeScreenshot(settings) {
27
- var _a;
28
- return __awaiter(this, void 0, void 0, function* () {
29
- // in combination with a render target, we need to refresh the scene manually to get the latest view
30
- this.viewer.scene.render();
31
- const size = (_a = settings === null || settings === void 0 ? void 0 : settings.size) !== null && _a !== void 0 ? _a : { width: this.viewer.canvas.clientWidth, height: this.viewer.canvas.clientHeight };
32
- const imageStr = yield index_1.ScreenshotTools.CreateScreenshotUsingRenderTargetAsync(this.viewer.engine,
33
- // mark as non-nullable as we wouldn't come this far if no camera is active anyway
34
- this.viewer.scene.activeCamera, size, settings === null || settings === void 0 ? void 0 : settings.mimeType, settings === null || settings === void 0 ? void 0 : settings.samples, settings === null || settings === void 0 ? void 0 : settings.antialiasing, settings === null || settings === void 0 ? void 0 : settings.fileName, settings === null || settings === void 0 ? void 0 : settings.renderSprites);
35
- return imageStr;
36
- });
37
- }
38
- }
39
- exports.ScreenshotManager = ScreenshotManager;
40
- //# sourceMappingURL=screenshotManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"screenshotManager.js","sourceRoot":"","sources":["../../../src/manager/screenshotManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oCAAoE;AA2BpE;;GAEG;AACH,MAAa,iBAAiB;IAC5B,gBAAgB;IAChB,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C;;;OAGG;IACU,cAAc,CAAC,QAA6B;;;YACvD,oGAAoG;YACpG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAE3B,MAAM,IAAI,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAElH,MAAM,QAAQ,GAAG,MAAM,uBAAe,CAAC,sCAAsC,CAC3E,IAAI,CAAC,MAAM,CAAC,MAAM;YAClB,kFAAkF;YAClF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAa,EAC/B,IAAI,EACJ,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,EAClB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,EACjB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,EACtB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,EAClB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,CACxB,CAAC;YAEF,OAAO,QAAQ,CAAC;;KACjB;CACF;AA5BD,8CA4BC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"textureManager.js","sourceRoot":"","sources":["../../../src/manager/textureManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA;;;;;GAKG;AACH,MAAa,cAAc;IACzB,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9F,CAAC;IAEe,eAAe,CAAC,OAAoB;;YAClD,cAAc;YACd,mGAAmG;YACnG,8EAA8E;YAC9E,iGAAiG;YACjG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YAE5D,2GAA2G;YAC3G,8FAA8F;YAC9F,iBAAiB;YACjB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,kBAAkB,GAAG,QAAQ,CAAC;YACpC,MAAM,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;YAE9E,IAAI,KAAK,IAAI,wBAAwB,GAAG,CAAC,CAAC,EAAE;gBAC1C,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,wBAAwB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;aAC7F;QACH,CAAC;KAAA;CACF;AAvBD,wCAuBC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"viewerError.js","sourceRoot":"","sources":["../../src/viewerError.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAQH;;;;;;;;GAQG;AACU,QAAA,cAAc,GAAG;IAC5B,qBAAqB,EAAE,uBAAuB;IAC9C,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;IACxC,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,wBAAwB,EAAE,0BAA0B;CACrD,CAAC;AAEF,gBAAgB;AAChB,MAAa,WAAY,SAAQ,KAAK;IAGpC,YAAY,IAAqB;QAC/B,mHAAmH;QACnH,oDAAoD;QACpD,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAe;;QACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEzD,SAAS;QACT,2CAA2C;QAC3C,uCAAuC;QACvC,kGAAkG;QAClG,wCAAwC;QACxC,2GAA2G;QAC3G,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,GAAG,QAAQ,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnF,MAAM,EAAE,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,GAAG,KAAI,OAAO,CAAC;QAE3C,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;IACrB,CAAC;CACF;AApCD,kCAoCC"}
@@ -1,59 +0,0 @@
1
- import { IScreenshotSize, ScreenshotTools, Viewer } from '../index';
2
-
3
- // NOTE: this module will be reworked in the near future (CB-8789)
4
-
5
- export type ScreenshotSettings = {
6
- /** Defaults to canvas width & height */
7
- size?: IScreenshotSize;
8
- /**
9
- * Default `image/png`
10
- *
11
- * **Info regarding JPEG:** \
12
- * Use mimeType `image/jpeg` (**not** `image/jpg`) when creating jpeg's. \
13
- * Also ensure that the viewer scenes `clearColor` has an alpha value of `1` as jpeg's don't
14
- * support transparency. Otherwise background will always be black for jpeg's.
15
- */
16
- mimeType?: string;
17
- /** Default `1` */
18
- samples?: number;
19
- /** Default `false` */
20
- antialiasing?: boolean;
21
- /** NOTE: after update to Babylon.js V6: if file name is given, the screenshot image will be downloaded and the base64
22
- * string will NOT be returned! */
23
- fileName?: string;
24
- /** Default `false` */
25
- renderSprites?: boolean;
26
- };
27
-
28
- /**
29
- * Manager for tasks related to screenshots
30
- */
31
- export class ScreenshotManager {
32
- /** @internal */
33
- public constructor(protected viewer: Viewer) {}
34
-
35
- /**
36
- * Takes a sceenshot the the current scene.\
37
- * The result is a string containing a base64 encoded image.
38
- */
39
- public async takeScreenshot(settings?: ScreenshotSettings): Promise<string> {
40
- // in combination with a render target, we need to refresh the scene manually to get the latest view
41
- this.viewer.scene.render();
42
-
43
- const size = settings?.size ?? { width: this.viewer.canvas.clientWidth, height: this.viewer.canvas.clientHeight };
44
-
45
- const imageStr = await ScreenshotTools.CreateScreenshotUsingRenderTargetAsync(
46
- this.viewer.engine,
47
- // mark as non-nullable as we wouldn't come this far if no camera is active anyway
48
- this.viewer.scene.activeCamera!,
49
- size,
50
- settings?.mimeType,
51
- settings?.samples,
52
- settings?.antialiasing,
53
- settings?.fileName,
54
- settings?.renderSprites
55
- );
56
-
57
- return imageStr;
58
- }
59
- }
File without changes
File without changes
File without changes