@shapediver/viewer.rendering-engine.rendering-engine-threejs 3.16.7 → 3.16.9

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 (181) hide show
  1. package/dist/RenderingEngine.d.ts +294 -294
  2. package/dist/RenderingEngine.js +987 -977
  3. package/dist/RenderingEngine.js.map +1 -1
  4. package/dist/index.d.ts +16 -16
  5. package/dist/index.js +57 -57
  6. package/dist/injectors/TextureUnifierInjector.d.ts +13 -13
  7. package/dist/injectors/TextureUnifierInjector.js +181 -171
  8. package/dist/injectors/TextureUnifierInjector.js.map +1 -1
  9. package/dist/interfaces/ILoader.d.ts +3 -3
  10. package/dist/interfaces/ILoader.js +2 -2
  11. package/dist/interfaces/IRenderingEngine.d.ts +45 -45
  12. package/dist/interfaces/IRenderingEngine.js +2 -2
  13. package/dist/loaders/EnvironmentMapLoader.d.ts +119 -119
  14. package/dist/loaders/EnvironmentMapLoader.js +512 -502
  15. package/dist/loaders/EnvironmentMapLoader.js.map +1 -1
  16. package/dist/loaders/GeometryLoader.d.ts +39 -39
  17. package/dist/loaders/GeometryLoader.d.ts.map +1 -1
  18. package/dist/loaders/GeometryLoader.js +603 -593
  19. package/dist/loaders/GeometryLoader.js.map +1 -1
  20. package/dist/loaders/HTMLElementAnchorLoader.d.ts +15 -15
  21. package/dist/loaders/HTMLElementAnchorLoader.js +98 -98
  22. package/dist/loaders/HTMLElementAnchorLoader.js.map +1 -1
  23. package/dist/loaders/LightLoader.d.ts +19 -19
  24. package/dist/loaders/LightLoader.js +197 -187
  25. package/dist/loaders/LightLoader.js.map +1 -1
  26. package/dist/loaders/MaterialLoader.d.ts +115 -115
  27. package/dist/loaders/MaterialLoader.d.ts.map +1 -1
  28. package/dist/loaders/MaterialLoader.js +1612 -1602
  29. package/dist/loaders/MaterialLoader.js.map +1 -1
  30. package/dist/managers/ARManager.d.ts +17 -17
  31. package/dist/managers/ARManager.js +128 -128
  32. package/dist/managers/ARManager.js.map +1 -1
  33. package/dist/managers/CameraManager.d.ts +19 -19
  34. package/dist/managers/CameraManager.js +244 -234
  35. package/dist/managers/CameraManager.js.map +1 -1
  36. package/dist/managers/EnvironmentGeometryManager.d.ts +32 -32
  37. package/dist/managers/EnvironmentGeometryManager.js +114 -114
  38. package/dist/managers/EnvironmentGeometryManager.js.map +1 -1
  39. package/dist/managers/FlagManager.d.ts +19 -19
  40. package/dist/managers/FlagManager.js +143 -143
  41. package/dist/managers/FlagManager.js.map +1 -1
  42. package/dist/managers/PostProcessingManager.d.ts +1019 -1019
  43. package/dist/managers/PostProcessingManager.js +1306 -1296
  44. package/dist/managers/PostProcessingManager.js.map +1 -1
  45. package/dist/managers/RenderingManager.d.ts +84 -84
  46. package/dist/managers/RenderingManager.d.ts.map +1 -1
  47. package/dist/managers/RenderingManager.js +679 -669
  48. package/dist/managers/RenderingManager.js.map +1 -1
  49. package/dist/managers/SceneTracingManager.d.ts +28 -28
  50. package/dist/managers/SceneTracingManager.js +160 -150
  51. package/dist/managers/SceneTracingManager.js.map +1 -1
  52. package/dist/managers/SceneTreeManager.d.ts +81 -81
  53. package/dist/managers/SceneTreeManager.d.ts.map +1 -1
  54. package/dist/managers/SceneTreeManager.js +500 -490
  55. package/dist/managers/SceneTreeManager.js.map +1 -1
  56. package/dist/managers/SettingsManager.d.ts +28 -28
  57. package/dist/managers/SettingsManager.js +284 -284
  58. package/dist/managers/SettingsManager.js.map +1 -1
  59. package/dist/managers/environmentGeometry/ContactShadow.d.ts +42 -42
  60. package/dist/managers/environmentGeometry/ContactShadow.js +295 -285
  61. package/dist/managers/environmentGeometry/ContactShadow.js.map +1 -1
  62. package/dist/managers/environmentGeometry/Grid.d.ts +20 -20
  63. package/dist/managers/environmentGeometry/Grid.js +110 -100
  64. package/dist/managers/environmentGeometry/Grid.js.map +1 -1
  65. package/dist/managers/environmentGeometry/GroundPlane.d.ts +21 -21
  66. package/dist/managers/environmentGeometry/GroundPlane.js +105 -95
  67. package/dist/managers/environmentGeometry/GroundPlane.js.map +1 -1
  68. package/dist/managers/environmentGeometry/GroundPlaneShadow.d.ts +21 -21
  69. package/dist/managers/environmentGeometry/GroundPlaneShadow.js +96 -86
  70. package/dist/managers/environmentGeometry/GroundPlaneShadow.js.map +1 -1
  71. package/dist/managers/environmentGeometry/IEnvironmentGeometry.d.ts +8 -8
  72. package/dist/managers/environmentGeometry/IEnvironmentGeometry.js +2 -2
  73. package/dist/managers/postprocessing/GodRaysManager.d.ts +12 -12
  74. package/dist/managers/postprocessing/GodRaysManager.js +73 -63
  75. package/dist/managers/postprocessing/GodRaysManager.js.map +1 -1
  76. package/dist/managers/postprocessing/OutlineManager.d.ts +15 -15
  77. package/dist/managers/postprocessing/OutlineManager.js +86 -76
  78. package/dist/managers/postprocessing/OutlineManager.js.map +1 -1
  79. package/dist/managers/postprocessing/SSAARenderPass.d.ts +53 -53
  80. package/dist/managers/postprocessing/SSAARenderPass.js +281 -281
  81. package/dist/managers/postprocessing/SSAARenderPass.js.map +1 -1
  82. package/dist/managers/postprocessing/SelectiveBloomManager.d.ts +14 -14
  83. package/dist/managers/postprocessing/SelectiveBloomManager.js +76 -66
  84. package/dist/managers/postprocessing/SelectiveBloomManager.js.map +1 -1
  85. package/dist/managers/postprocessing/ao/ao/AOEffect.d.ts +46 -46
  86. package/dist/managers/postprocessing/ao/ao/AOEffect.js +142 -142
  87. package/dist/managers/postprocessing/ao/ao/AOEffect.js.map +1 -1
  88. package/dist/managers/postprocessing/ao/ao/AOPass.d.ts +12 -12
  89. package/dist/managers/postprocessing/ao/ao/AOPass.js +108 -108
  90. package/dist/managers/postprocessing/ao/ao/AOPass.js.map +1 -1
  91. package/dist/managers/postprocessing/ao/ao/shader/ao_compose.d.ts +1 -1
  92. package/dist/managers/postprocessing/ao/ao/shader/ao_compose.js +4 -4
  93. package/dist/managers/postprocessing/ao/ao/shader/ao_utils.d.ts +1 -1
  94. package/dist/managers/postprocessing/ao/ao/shader/ao_utils.js +4 -4
  95. package/dist/managers/postprocessing/ao/hbao/HBAOEffect.d.ts +14 -14
  96. package/dist/managers/postprocessing/ao/hbao/HBAOEffect.js +24 -24
  97. package/dist/managers/postprocessing/ao/hbao/shader/hbao.d.ts +1 -1
  98. package/dist/managers/postprocessing/ao/hbao/shader/hbao.js +4 -4
  99. package/dist/managers/postprocessing/ao/poissionDenoise/PoissionDenoisePass.d.ts +33 -33
  100. package/dist/managers/postprocessing/ao/poissionDenoise/PoissionDenoisePass.js +211 -211
  101. package/dist/managers/postprocessing/ao/poissionDenoise/PoissionDenoisePass.js.map +1 -1
  102. package/dist/managers/postprocessing/ao/poissionDenoise/shader/poissionDenoise.d.ts +1 -1
  103. package/dist/managers/postprocessing/ao/poissionDenoise/shader/poissionDenoise.js +4 -4
  104. package/dist/managers/postprocessing/ao/ssao/SSAOEffect.d.ts +14 -14
  105. package/dist/managers/postprocessing/ao/ssao/SSAOEffect.js +82 -82
  106. package/dist/managers/postprocessing/ao/ssao/SSAOEffect.js.map +1 -1
  107. package/dist/managers/postprocessing/ao/ssao/shader/ssao.d.ts +1 -1
  108. package/dist/managers/postprocessing/ao/ssao/shader/ssao.js +4 -4
  109. package/dist/managers/postprocessing/ao/utils/shader/basic.d.ts +1 -1
  110. package/dist/managers/postprocessing/ao/utils/shader/basic.js +4 -4
  111. package/dist/managers/postprocessing/ao/utils/shader/sampleBlueNoise.d.ts +1 -1
  112. package/dist/managers/postprocessing/ao/utils/shader/sampleBlueNoise.js +4 -4
  113. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.d.ts +165 -165
  114. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.js +299 -299
  115. package/dist/managers/postprocessing/effects/tone-mapping/ToneMappingEffect.js.map +1 -1
  116. package/dist/managers/postprocessing/effects/tone-mapping/tone-mapping.d.ts +1 -1
  117. package/dist/managers/postprocessing/effects/tone-mapping/tone-mapping.js +4 -4
  118. package/dist/managers/postprocessing/utils/CopyMaterial.d.ts +37 -37
  119. package/dist/managers/postprocessing/utils/CopyMaterial.js +69 -69
  120. package/dist/managers/postprocessing/utils/CopyShader.d.ts +13 -13
  121. package/dist/managers/postprocessing/utils/CopyShader.js +12 -12
  122. package/dist/managers/postprocessing/utils/FullScreenQuad.d.ts +9 -9
  123. package/dist/managers/postprocessing/utils/FullScreenQuad.js +28 -28
  124. package/dist/managers/postprocessing/utils/NormalPass.d.ts +87 -87
  125. package/dist/managers/postprocessing/utils/NormalPass.js +156 -156
  126. package/dist/managers/postprocessing/utils/NormalPass.js.map +1 -1
  127. package/dist/managers/postprocessing/utils/RenderPass.d.ts +114 -114
  128. package/dist/managers/postprocessing/utils/RenderPass.js +259 -259
  129. package/dist/managers/postprocessing/utils/RenderPass.js.map +1 -1
  130. package/dist/managers/sceneTree/SDTFUtils.d.ts +6 -6
  131. package/dist/managers/sceneTree/SDTFUtils.d.ts.map +1 -1
  132. package/dist/managers/sceneTree/SDTFUtils.js +50 -50
  133. package/dist/managers/sceneTree/SDTFUtils.js.map +1 -1
  134. package/dist/managers/sceneTree/SceenTreeManagerUtils.d.ts +7 -7
  135. package/dist/managers/sceneTree/SceenTreeManagerUtils.d.ts.map +1 -1
  136. package/dist/managers/sceneTree/SceenTreeManagerUtils.js +175 -165
  137. package/dist/managers/sceneTree/SceenTreeManagerUtils.js.map +1 -1
  138. package/dist/managers/sceneTree/ThreeJsDataUtils.d.ts +6 -6
  139. package/dist/managers/sceneTree/ThreeJsDataUtils.d.ts.map +1 -1
  140. package/dist/managers/sceneTree/ThreeJsDataUtils.js +80 -70
  141. package/dist/managers/sceneTree/ThreeJsDataUtils.js.map +1 -1
  142. package/dist/materials/GemMaterial.d.ts +37 -37
  143. package/dist/materials/GemMaterial.js +262 -252
  144. package/dist/materials/GemMaterial.js.map +1 -1
  145. package/dist/materials/MeshUnlitMaterialParameters.d.ts +3 -3
  146. package/dist/materials/MeshUnlitMaterialParameters.js +2 -2
  147. package/dist/materials/MultiPointsMaterial.d.ts +93 -93
  148. package/dist/materials/MultiPointsMaterial.js +577 -567
  149. package/dist/materials/MultiPointsMaterial.js.map +1 -1
  150. package/dist/materials/SpecularGlossinessMaterial.d.ts +13 -13
  151. package/dist/materials/SpecularGlossinessMaterial.js +171 -161
  152. package/dist/materials/SpecularGlossinessMaterial.js.map +1 -1
  153. package/dist/objects/SDColor.d.ts +16 -16
  154. package/dist/objects/SDColor.js +52 -52
  155. package/dist/objects/SDColor.js.map +1 -1
  156. package/dist/objects/SDObject.d.ts +27 -27
  157. package/dist/objects/SDObject.js +112 -102
  158. package/dist/objects/SDObject.js.map +1 -1
  159. package/dist/shaders/PCSS.d.ts +2 -2
  160. package/dist/shaders/PCSS.js +5 -5
  161. package/dist/shaders/gem.d.ts +2 -2
  162. package/dist/shaders/gem.js +5 -5
  163. package/dist/shaders/multi_points.d.ts +2 -2
  164. package/dist/shaders/multi_points.js +5 -5
  165. package/dist/styling/viewport-css.d.ts +1 -1
  166. package/dist/styling/viewport-css.js +4 -4
  167. package/dist/three/CSS2DRenderer.d.ts +31 -31
  168. package/dist/three/CSS2DRenderer.d.ts.map +1 -1
  169. package/dist/three/CSS2DRenderer.js +152 -152
  170. package/dist/three/CSS2DRenderer.js.map +1 -1
  171. package/dist/three/geometries/TextGeometry.d.ts +21 -21
  172. package/dist/three/geometries/TextGeometry.js +45 -45
  173. package/dist/three/geometries/TextGeometry.js.map +1 -1
  174. package/dist/three/loaders/RGBELoader.d.ts +23 -23
  175. package/dist/three/loaders/RGBELoader.js +311 -311
  176. package/dist/three/loaders/RGBELoader.js.map +1 -1
  177. package/dist/types/IThreejsData.d.ts +6 -6
  178. package/dist/types/IThreejsData.js +2 -2
  179. package/dist/types/ThreejsData.d.ts +10 -10
  180. package/dist/types/ThreejsData.js +41 -41
  181. package/package.json +18 -18
@@ -1,115 +1,115 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EnvironmentGeometryManager = void 0;
4
- const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
5
- const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
6
- const gl_matrix_1 = require("gl-matrix");
7
- const SDObject_1 = require("../objects/SDObject");
8
- const ContactShadow_1 = require("./environmentGeometry/ContactShadow");
9
- const Grid_1 = require("./environmentGeometry/Grid");
10
- const GroundPlane_1 = require("./environmentGeometry/GroundPlane");
11
- const GroundPlaneShadow_1 = require("./environmentGeometry/GroundPlaneShadow");
12
- class EnvironmentGeometryManager {
13
- // #endregion Properties (9)
14
- // #region Constructors (1)
15
- constructor(_renderingEngine) {
16
- this._renderingEngine = _renderingEngine;
17
- // #region Properties (9)
18
- this._converter = viewer_shared_services_1.Converter.instance;
19
- this._eventEngine = viewer_shared_services_1.EventEngine.instance;
20
- this._initialized = false;
21
- this._eventEngine.addListener(viewer_shared_services_1.EVENTTYPE.SCENE.SCENE_BOUNDING_BOX_CHANGE, () => {
22
- this.updateEnvironmentGeometryPosition();
23
- });
24
- }
25
- // #endregion Constructors (1)
26
- // #region Public Getters And Setters (5)
27
- get contactShadow() {
28
- return this._contactShadow;
29
- }
30
- get grid() {
31
- return this._grid;
32
- }
33
- get groundPlane() {
34
- return this._groundPlane;
35
- }
36
- get groundPlaneShadow() {
37
- return this._groundPlaneShadow;
38
- }
39
- // #endregion Public Getters And Setters (5)
40
- // #region Public Methods (3)
41
- changeSceneExtents(bb) {
42
- var _a, _b, _c, _d;
43
- if ((bb.min[0] === 0 &&
44
- bb.min[1] === 0 &&
45
- bb.min[2] === 0 &&
46
- bb.max[0] === 0 &&
47
- bb.max[1] === 0 &&
48
- bb.max[2] === 0) ||
49
- bb.isEmpty())
50
- return;
51
- this._initialized = true;
52
- const sceneExtents = gl_matrix_1.vec3.distance(bb.min, bb.max);
53
- const { divisions, gridExtents } = this.evaluateGridMeasurements(sceneExtents);
54
- const bs = bb.boundingSphere;
55
- const position = gl_matrix_1.vec3.fromValues(bs.center[0], bs.center[1], bb.min[2]);
56
- const eps = bb.boundingSphere.radius * 0.001;
57
- (_a = this._grid) === null || _a === void 0 ? void 0 : _a.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps)), divisions, gridExtents);
58
- (_b = this._groundPlaneShadow) === null || _b === void 0 ? void 0 : _b.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 3)), divisions, gridExtents);
59
- (_c = this._contactShadow) === null || _c === void 0 ? void 0 : _c.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 2)), divisions, gridExtents);
60
- (_d = this._groundPlane) === null || _d === void 0 ? void 0 : _d.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 4)), divisions, gridExtents);
61
- }
62
- init() {
63
- this._environmentGeometryObject = new SDObject_1.SDObject("environmentGeometry", "");
64
- this._renderingEngine.sceneTreeManager.scene.add(this._environmentGeometryObject);
65
- this._contactShadow = new ContactShadow_1.ContactShadow(this._renderingEngine, this._environmentGeometryObject);
66
- this._grid = new Grid_1.Grid(this._renderingEngine, this._environmentGeometryObject);
67
- this._groundPlaneShadow = new GroundPlaneShadow_1.GroundPlaneShadow(this._renderingEngine, this._environmentGeometryObject);
68
- this._groundPlane = new GroundPlane_1.GroundPlane(this._renderingEngine, this._environmentGeometryObject);
69
- }
70
- updateEnvironmentGeometryPosition() {
71
- var _a, _b, _c, _d;
72
- const bb = new viewer_shared_math_1.Box(this._renderingEngine.sceneTreeManager.boundingBox.min, this._renderingEngine.sceneTreeManager.boundingBox.max);
73
- if ((bb.min[0] === 0 &&
74
- bb.min[1] === 0 &&
75
- bb.min[2] === 0 &&
76
- bb.max[0] === 0 &&
77
- bb.max[1] === 0 &&
78
- bb.max[2] === 0) ||
79
- bb.isEmpty())
80
- return;
81
- if (!this._initialized) {
82
- this.changeSceneExtents(bb);
83
- }
84
- else {
85
- const bs = bb.boundingSphere;
86
- const eps = bb.boundingSphere.radius * 0.001;
87
- const sceneExtents = gl_matrix_1.vec3.distance(bb.min, bb.max);
88
- const { divisions, gridExtents } = this.evaluateGridMeasurements(sceneExtents);
89
- // only shadow plane needs to be updated
90
- const position = gl_matrix_1.vec3.fromValues(bs.center[0], bs.center[1], bb.min[2]);
91
- (_a = this._grid) === null || _a === void 0 ? void 0 : _a.updatePosition(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps)));
92
- (_b = this._contactShadow) === null || _b === void 0 ? void 0 : _b.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 3)), divisions, gridExtents);
93
- (_c = this._groundPlaneShadow) === null || _c === void 0 ? void 0 : _c.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 2)), divisions, gridExtents);
94
- (_d = this._groundPlane) === null || _d === void 0 ? void 0 : _d.updatePosition(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 4)));
95
- }
96
- }
97
- // #endregion Public Methods (3)
98
- // #region Private Methods (1)
99
- /**
100
- * Creates the grid extents and divisions with the specified scene extents.
101
- *
102
- * https://shapediver.atlassian.net/browse/SS-2961 evaluate this magic.
103
- */
104
- evaluateGridMeasurements(sceneExtents) {
105
- if (sceneExtents === 0)
106
- return { divisions: 0.1, gridExtents: 1.0 };
107
- const exponent = Math.floor(Math.log10(sceneExtents));
108
- const temp = Math.pow(10, exponent);
109
- const gridExtents = Math.ceil(sceneExtents / temp) * temp;
110
- const divisions = gridExtents / (temp / 10);
111
- return { divisions, gridExtents };
112
- }
113
- }
114
- exports.EnvironmentGeometryManager = EnvironmentGeometryManager;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EnvironmentGeometryManager = void 0;
4
+ const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
5
+ const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
6
+ const gl_matrix_1 = require("gl-matrix");
7
+ const SDObject_1 = require("../objects/SDObject");
8
+ const ContactShadow_1 = require("./environmentGeometry/ContactShadow");
9
+ const Grid_1 = require("./environmentGeometry/Grid");
10
+ const GroundPlane_1 = require("./environmentGeometry/GroundPlane");
11
+ const GroundPlaneShadow_1 = require("./environmentGeometry/GroundPlaneShadow");
12
+ class EnvironmentGeometryManager {
13
+ // #endregion Properties (9)
14
+ // #region Constructors (1)
15
+ constructor(_renderingEngine) {
16
+ this._renderingEngine = _renderingEngine;
17
+ // #region Properties (9)
18
+ this._converter = viewer_shared_services_1.Converter.instance;
19
+ this._eventEngine = viewer_shared_services_1.EventEngine.instance;
20
+ this._initialized = false;
21
+ this._eventEngine.addListener(viewer_shared_services_1.EVENTTYPE.SCENE.SCENE_BOUNDING_BOX_CHANGE, () => {
22
+ this.updateEnvironmentGeometryPosition();
23
+ });
24
+ }
25
+ // #endregion Constructors (1)
26
+ // #region Public Getters And Setters (5)
27
+ get contactShadow() {
28
+ return this._contactShadow;
29
+ }
30
+ get grid() {
31
+ return this._grid;
32
+ }
33
+ get groundPlane() {
34
+ return this._groundPlane;
35
+ }
36
+ get groundPlaneShadow() {
37
+ return this._groundPlaneShadow;
38
+ }
39
+ // #endregion Public Getters And Setters (5)
40
+ // #region Public Methods (3)
41
+ changeSceneExtents(bb) {
42
+ var _a, _b, _c, _d;
43
+ if ((bb.min[0] === 0 &&
44
+ bb.min[1] === 0 &&
45
+ bb.min[2] === 0 &&
46
+ bb.max[0] === 0 &&
47
+ bb.max[1] === 0 &&
48
+ bb.max[2] === 0) ||
49
+ bb.isEmpty())
50
+ return;
51
+ this._initialized = true;
52
+ const sceneExtents = gl_matrix_1.vec3.distance(bb.min, bb.max);
53
+ const { divisions, gridExtents } = this.evaluateGridMeasurements(sceneExtents);
54
+ const bs = bb.boundingSphere;
55
+ const position = gl_matrix_1.vec3.fromValues(bs.center[0], bs.center[1], bb.min[2]);
56
+ const eps = bb.boundingSphere.radius * 0.001;
57
+ (_a = this._grid) === null || _a === void 0 ? void 0 : _a.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps)), divisions, gridExtents);
58
+ (_b = this._groundPlaneShadow) === null || _b === void 0 ? void 0 : _b.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 3)), divisions, gridExtents);
59
+ (_c = this._contactShadow) === null || _c === void 0 ? void 0 : _c.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 2)), divisions, gridExtents);
60
+ (_d = this._groundPlane) === null || _d === void 0 ? void 0 : _d.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 4)), divisions, gridExtents);
61
+ }
62
+ init() {
63
+ this._environmentGeometryObject = new SDObject_1.SDObject("environmentGeometry", "");
64
+ this._renderingEngine.sceneTreeManager.scene.add(this._environmentGeometryObject);
65
+ this._contactShadow = new ContactShadow_1.ContactShadow(this._renderingEngine, this._environmentGeometryObject);
66
+ this._grid = new Grid_1.Grid(this._renderingEngine, this._environmentGeometryObject);
67
+ this._groundPlaneShadow = new GroundPlaneShadow_1.GroundPlaneShadow(this._renderingEngine, this._environmentGeometryObject);
68
+ this._groundPlane = new GroundPlane_1.GroundPlane(this._renderingEngine, this._environmentGeometryObject);
69
+ }
70
+ updateEnvironmentGeometryPosition() {
71
+ var _a, _b, _c, _d;
72
+ const bb = new viewer_shared_math_1.Box(this._renderingEngine.sceneTreeManager.boundingBox.min, this._renderingEngine.sceneTreeManager.boundingBox.max);
73
+ if ((bb.min[0] === 0 &&
74
+ bb.min[1] === 0 &&
75
+ bb.min[2] === 0 &&
76
+ bb.max[0] === 0 &&
77
+ bb.max[1] === 0 &&
78
+ bb.max[2] === 0) ||
79
+ bb.isEmpty())
80
+ return;
81
+ if (!this._initialized) {
82
+ this.changeSceneExtents(bb);
83
+ }
84
+ else {
85
+ const bs = bb.boundingSphere;
86
+ const eps = bb.boundingSphere.radius * 0.001;
87
+ const sceneExtents = gl_matrix_1.vec3.distance(bb.min, bb.max);
88
+ const { divisions, gridExtents } = this.evaluateGridMeasurements(sceneExtents);
89
+ // only shadow plane needs to be updated
90
+ const position = gl_matrix_1.vec3.fromValues(bs.center[0], bs.center[1], bb.min[2]);
91
+ (_a = this._grid) === null || _a === void 0 ? void 0 : _a.updatePosition(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps)));
92
+ (_b = this._contactShadow) === null || _b === void 0 ? void 0 : _b.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 3)), divisions, gridExtents);
93
+ (_c = this._groundPlaneShadow) === null || _c === void 0 ? void 0 : _c.changeSceneExtents(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 2)), divisions, gridExtents);
94
+ (_d = this._groundPlane) === null || _d === void 0 ? void 0 : _d.updatePosition(gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), position, gl_matrix_1.vec3.fromValues(0, 0, eps * 4)));
95
+ }
96
+ }
97
+ // #endregion Public Methods (3)
98
+ // #region Private Methods (1)
99
+ /**
100
+ * Creates the grid extents and divisions with the specified scene extents.
101
+ *
102
+ * https://shapediver.atlassian.net/browse/SS-2961 evaluate this magic.
103
+ */
104
+ evaluateGridMeasurements(sceneExtents) {
105
+ if (sceneExtents === 0)
106
+ return { divisions: 0.1, gridExtents: 1.0 };
107
+ const exponent = Math.floor(Math.log10(sceneExtents));
108
+ const temp = Math.pow(10, exponent);
109
+ const gridExtents = Math.ceil(sceneExtents / temp) * temp;
110
+ const divisions = gridExtents / (temp / 10);
111
+ return { divisions, gridExtents };
112
+ }
113
+ }
114
+ exports.EnvironmentGeometryManager = EnvironmentGeometryManager;
115
115
  //# sourceMappingURL=EnvironmentGeometryManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EnvironmentGeometryManager.js","sourceRoot":"","sources":["../../src/managers/EnvironmentGeometryManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnvironmentGeometryManager.js","sourceRoot":"","sources":["../../src/managers/EnvironmentGeometryManager.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,20 @@
1
- import { IManager } from "@shapediver/viewer.rendering-engine.rendering-engine";
2
- import { FLAG_TYPE } from "@shapediver/viewer.shared.types";
3
- import { RenderingEngine } from "..";
4
- export declare class FlagManager implements IManager {
5
- #private;
6
- private readonly _renderingEngine;
7
- private readonly _eventEngine;
8
- private readonly _stateEngine;
9
- private readonly _uuidGenerator;
10
- constructor(_renderingEngine: RenderingEngine, props: {
11
- flags?: {
12
- [key: string]: FLAG_TYPE;
13
- };
14
- });
15
- addFlag(flag: FLAG_TYPE, inputToken?: string): string;
16
- evaluateFlagState(): void;
17
- init(): void;
18
- removeFlag(token: string): boolean;
19
- }
1
+ import { IManager } from "@shapediver/viewer.rendering-engine.rendering-engine";
2
+ import { FLAG_TYPE } from "@shapediver/viewer.shared.types";
3
+ import { RenderingEngine } from "..";
4
+ export declare class FlagManager implements IManager {
5
+ #private;
6
+ private readonly _renderingEngine;
7
+ private readonly _eventEngine;
8
+ private readonly _stateEngine;
9
+ private readonly _uuidGenerator;
10
+ constructor(_renderingEngine: RenderingEngine, props: {
11
+ flags?: {
12
+ [key: string]: FLAG_TYPE;
13
+ };
14
+ });
15
+ addFlag(flag: FLAG_TYPE, inputToken?: string): string;
16
+ evaluateFlagState(): void;
17
+ init(): void;
18
+ removeFlag(token: string): boolean;
19
+ }
20
20
  //# sourceMappingURL=FlagManager.d.ts.map
@@ -1,144 +1,144 @@
1
- "use strict";
2
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
- };
7
- var _FlagManager_flags;
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.FlagManager = void 0;
10
- const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
11
- const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
12
- class FlagManager {
13
- constructor(_renderingEngine, props) {
14
- this._renderingEngine = _renderingEngine;
15
- this._eventEngine = viewer_shared_services_1.EventEngine.instance;
16
- this._stateEngine = viewer_shared_services_1.StateEngine.instance;
17
- this._uuidGenerator = viewer_shared_services_1.UuidGenerator.instance;
18
- _FlagManager_flags.set(this, {
19
- [viewer_shared_types_1.FLAG_TYPE.CAMERA_FREEZE]: [],
20
- [viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_RENDERING]: [],
21
- [viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_SHADOW_MAP_UPDATE]: [],
22
- [viewer_shared_types_1.FLAG_TYPE.SUSPEND_SCENE_UPDATES]: [],
23
- });
24
- for (const token in props.flags) {
25
- this.addFlag(props.flags[token], token);
26
- }
27
- }
28
- addFlag(flag, inputToken) {
29
- var _a;
30
- const token = inputToken || this._uuidGenerator.create();
31
- if (flag === viewer_shared_types_1.FLAG_TYPE.BUSY_MODE) {
32
- (_a = this._stateEngine.viewportEngines[this._renderingEngine.id]) === null || _a === void 0 ? void 0 : _a.busy.push(token);
33
- }
34
- else {
35
- __classPrivateFieldGet(this, _FlagManager_flags, "f")[flag].push(token);
36
- }
37
- this.evaluateFlagState();
38
- return token;
39
- }
40
- evaluateFlagState() {
41
- // busy
42
- {
43
- const currentBusyState = this._renderingEngine.busy;
44
- if (this._stateEngine.viewportEngines[this._renderingEngine.id] &&
45
- this._stateEngine.viewportEngines[this._renderingEngine.id]
46
- .busy.length > 0) {
47
- if (!currentBusyState) {
48
- this._renderingEngine.busy = true;
49
- this._renderingEngine.renderingManager.render();
50
- this._eventEngine.emitEvent(viewer_shared_services_1.EVENTTYPE.VIEWPORT.BUSY_MODE_ON, { viewportId: this._renderingEngine.id });
51
- }
52
- }
53
- else {
54
- if (currentBusyState) {
55
- this._renderingEngine.busy = false;
56
- this._renderingEngine.renderingManager.render();
57
- this._eventEngine.emitEvent(viewer_shared_services_1.EVENTTYPE.VIEWPORT.BUSY_MODE_OFF, { viewportId: this._renderingEngine.id });
58
- }
59
- }
60
- }
61
- // camera freeze
62
- {
63
- if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.CAMERA_FREEZE].length > 0) {
64
- this._renderingEngine.cameraEngine.deactivateCameraEvents();
65
- }
66
- else {
67
- this._renderingEngine.cameraEngine.activateCameraEvents();
68
- }
69
- }
70
- // continuous rendering
71
- {
72
- const currentContinuousRenderingState = this._renderingEngine.continuousRendering;
73
- if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_RENDERING].length > 0) {
74
- if (!currentContinuousRenderingState) {
75
- this._renderingEngine.continuousRendering = true;
76
- this._renderingEngine.renderingManager.render();
77
- }
78
- }
79
- else {
80
- if (currentContinuousRenderingState) {
81
- this._renderingEngine.continuousRendering = false;
82
- }
83
- }
84
- }
85
- // continuous shadow map update
86
- {
87
- const currentShadowMapUpdateState = this._renderingEngine.continuousShadowMapUpdate;
88
- if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_SHADOW_MAP_UPDATE].length > 0) {
89
- if (!currentShadowMapUpdateState) {
90
- this._renderingEngine.continuousShadowMapUpdate = true;
91
- this._renderingEngine.renderingManager.render();
92
- }
93
- }
94
- else {
95
- if (currentShadowMapUpdateState) {
96
- this._renderingEngine.continuousShadowMapUpdate = false;
97
- }
98
- }
99
- }
100
- // suspend scene updates
101
- {
102
- const currentSuspendSceneUpdatesState = this._renderingEngine.suspendSceneUpdates;
103
- if (currentSuspendSceneUpdatesState) {
104
- if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.SUSPEND_SCENE_UPDATES].length === 0) {
105
- this._renderingEngine.suspendSceneUpdates = false;
106
- this._renderingEngine.update("suspendSceneUpdates: false");
107
- this._renderingEngine.renderingManager.render();
108
- }
109
- }
110
- else {
111
- if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.SUSPEND_SCENE_UPDATES].length > 0) {
112
- this._renderingEngine.suspendSceneUpdates = true;
113
- }
114
- }
115
- }
116
- }
117
- init() { }
118
- removeFlag(token) {
119
- let success = false;
120
- const Flags = Object.values(viewer_shared_types_1.FLAG_TYPE);
121
- for (const f of Flags) {
122
- if (f === viewer_shared_types_1.FLAG_TYPE.BUSY_MODE) {
123
- if (this._stateEngine.viewportEngines[this._renderingEngine.id] &&
124
- this._stateEngine.viewportEngines[this._renderingEngine.id].busy.includes(token)) {
125
- this._stateEngine.viewportEngines[this._renderingEngine.id].busy.splice(this._stateEngine.viewportEngines[this._renderingEngine.id].busy.indexOf(token), 1);
126
- success = true;
127
- break;
128
- }
129
- }
130
- else {
131
- if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[f].includes(token)) {
132
- __classPrivateFieldGet(this, _FlagManager_flags, "f")[f].splice(__classPrivateFieldGet(this, _FlagManager_flags, "f")[f].indexOf(token), 1);
133
- success = true;
134
- break;
135
- }
136
- }
137
- }
138
- this.evaluateFlagState();
139
- return success;
140
- }
141
- }
142
- exports.FlagManager = FlagManager;
143
- _FlagManager_flags = new WeakMap();
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var _FlagManager_flags;
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.FlagManager = void 0;
10
+ const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
11
+ const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
12
+ class FlagManager {
13
+ constructor(_renderingEngine, props) {
14
+ this._renderingEngine = _renderingEngine;
15
+ this._eventEngine = viewer_shared_services_1.EventEngine.instance;
16
+ this._stateEngine = viewer_shared_services_1.StateEngine.instance;
17
+ this._uuidGenerator = viewer_shared_services_1.UuidGenerator.instance;
18
+ _FlagManager_flags.set(this, {
19
+ [viewer_shared_types_1.FLAG_TYPE.CAMERA_FREEZE]: [],
20
+ [viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_RENDERING]: [],
21
+ [viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_SHADOW_MAP_UPDATE]: [],
22
+ [viewer_shared_types_1.FLAG_TYPE.SUSPEND_SCENE_UPDATES]: [],
23
+ });
24
+ for (const token in props.flags) {
25
+ this.addFlag(props.flags[token], token);
26
+ }
27
+ }
28
+ addFlag(flag, inputToken) {
29
+ var _a;
30
+ const token = inputToken || this._uuidGenerator.create();
31
+ if (flag === viewer_shared_types_1.FLAG_TYPE.BUSY_MODE) {
32
+ (_a = this._stateEngine.viewportEngines[this._renderingEngine.id]) === null || _a === void 0 ? void 0 : _a.busy.push(token);
33
+ }
34
+ else {
35
+ __classPrivateFieldGet(this, _FlagManager_flags, "f")[flag].push(token);
36
+ }
37
+ this.evaluateFlagState();
38
+ return token;
39
+ }
40
+ evaluateFlagState() {
41
+ // busy
42
+ {
43
+ const currentBusyState = this._renderingEngine.busy;
44
+ if (this._stateEngine.viewportEngines[this._renderingEngine.id] &&
45
+ this._stateEngine.viewportEngines[this._renderingEngine.id]
46
+ .busy.length > 0) {
47
+ if (!currentBusyState) {
48
+ this._renderingEngine.busy = true;
49
+ this._renderingEngine.renderingManager.render();
50
+ this._eventEngine.emitEvent(viewer_shared_services_1.EVENTTYPE.VIEWPORT.BUSY_MODE_ON, { viewportId: this._renderingEngine.id });
51
+ }
52
+ }
53
+ else {
54
+ if (currentBusyState) {
55
+ this._renderingEngine.busy = false;
56
+ this._renderingEngine.renderingManager.render();
57
+ this._eventEngine.emitEvent(viewer_shared_services_1.EVENTTYPE.VIEWPORT.BUSY_MODE_OFF, { viewportId: this._renderingEngine.id });
58
+ }
59
+ }
60
+ }
61
+ // camera freeze
62
+ {
63
+ if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.CAMERA_FREEZE].length > 0) {
64
+ this._renderingEngine.cameraEngine.deactivateCameraEvents();
65
+ }
66
+ else {
67
+ this._renderingEngine.cameraEngine.activateCameraEvents();
68
+ }
69
+ }
70
+ // continuous rendering
71
+ {
72
+ const currentContinuousRenderingState = this._renderingEngine.continuousRendering;
73
+ if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_RENDERING].length > 0) {
74
+ if (!currentContinuousRenderingState) {
75
+ this._renderingEngine.continuousRendering = true;
76
+ this._renderingEngine.renderingManager.render();
77
+ }
78
+ }
79
+ else {
80
+ if (currentContinuousRenderingState) {
81
+ this._renderingEngine.continuousRendering = false;
82
+ }
83
+ }
84
+ }
85
+ // continuous shadow map update
86
+ {
87
+ const currentShadowMapUpdateState = this._renderingEngine.continuousShadowMapUpdate;
88
+ if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.CONTINUOUS_SHADOW_MAP_UPDATE].length > 0) {
89
+ if (!currentShadowMapUpdateState) {
90
+ this._renderingEngine.continuousShadowMapUpdate = true;
91
+ this._renderingEngine.renderingManager.render();
92
+ }
93
+ }
94
+ else {
95
+ if (currentShadowMapUpdateState) {
96
+ this._renderingEngine.continuousShadowMapUpdate = false;
97
+ }
98
+ }
99
+ }
100
+ // suspend scene updates
101
+ {
102
+ const currentSuspendSceneUpdatesState = this._renderingEngine.suspendSceneUpdates;
103
+ if (currentSuspendSceneUpdatesState) {
104
+ if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.SUSPEND_SCENE_UPDATES].length === 0) {
105
+ this._renderingEngine.suspendSceneUpdates = false;
106
+ this._renderingEngine.update("suspendSceneUpdates: false");
107
+ this._renderingEngine.renderingManager.render();
108
+ }
109
+ }
110
+ else {
111
+ if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[viewer_shared_types_1.FLAG_TYPE.SUSPEND_SCENE_UPDATES].length > 0) {
112
+ this._renderingEngine.suspendSceneUpdates = true;
113
+ }
114
+ }
115
+ }
116
+ }
117
+ init() { }
118
+ removeFlag(token) {
119
+ let success = false;
120
+ const Flags = Object.values(viewer_shared_types_1.FLAG_TYPE);
121
+ for (const f of Flags) {
122
+ if (f === viewer_shared_types_1.FLAG_TYPE.BUSY_MODE) {
123
+ if (this._stateEngine.viewportEngines[this._renderingEngine.id] &&
124
+ this._stateEngine.viewportEngines[this._renderingEngine.id].busy.includes(token)) {
125
+ this._stateEngine.viewportEngines[this._renderingEngine.id].busy.splice(this._stateEngine.viewportEngines[this._renderingEngine.id].busy.indexOf(token), 1);
126
+ success = true;
127
+ break;
128
+ }
129
+ }
130
+ else {
131
+ if (__classPrivateFieldGet(this, _FlagManager_flags, "f")[f].includes(token)) {
132
+ __classPrivateFieldGet(this, _FlagManager_flags, "f")[f].splice(__classPrivateFieldGet(this, _FlagManager_flags, "f")[f].indexOf(token), 1);
133
+ success = true;
134
+ break;
135
+ }
136
+ }
137
+ }
138
+ this.evaluateFlagState();
139
+ return success;
140
+ }
141
+ }
142
+ exports.FlagManager = FlagManager;
143
+ _FlagManager_flags = new WeakMap();
144
144
  //# sourceMappingURL=FlagManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FlagManager.js","sourceRoot":"","sources":["../../src/managers/FlagManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FlagManager.js","sourceRoot":"","sources":["../../src/managers/FlagManager.ts"],"names":[],"mappings":"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"}