@shapediver/viewer.rendering-engine.rendering-engine-threejs 3.16.8 → 3.16.10

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 (185) 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
  182. package/dist/managers/InstanceGroupManager.d.ts +0 -58
  183. package/dist/managers/InstanceGroupManager.d.ts.map +0 -1
  184. package/dist/managers/InstanceGroupManager.js +0 -372
  185. package/dist/managers/InstanceGroupManager.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RenderingManager.js","sourceRoot":"","sources":["../../src/managers/RenderingManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RenderingManager.js","sourceRoot":"","sources":["../../src/managers/RenderingManager.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,29 @@
1
- import { IConvert3Dto2DResult, IManager } from "@shapediver/viewer.rendering-engine.rendering-engine";
2
- import { ITreeNode } from "@shapediver/viewer.shared.node-tree";
3
- import { IGeometryData, IIntersectionFilter } from "@shapediver/viewer.shared.types";
4
- import { vec3 } from "gl-matrix";
5
- import { RenderingEngine } from "../RenderingEngine";
6
- export declare class SceneTracingManager implements IManager {
7
- private readonly _renderingEngine;
8
- private readonly _intersectionManager;
9
- private readonly _raycaster;
10
- constructor(_renderingEngine: RenderingEngine);
11
- convert3Dto2D(p: vec3): IConvert3Dto2DResult;
12
- init(): void;
13
- /**
14
- * Calculate the ray that is created by the mouse event and the camera.
15
- *
16
- * @param event
17
- * @returns
18
- */
19
- pointerEventToRay(event: PointerEvent): {
20
- origin: vec3;
21
- direction: vec3;
22
- };
23
- raytraceScene(origin: vec3, direction: vec3, filterCriteria?: IIntersectionFilter[]): {
24
- distance: number;
25
- node: ITreeNode;
26
- data?: IGeometryData;
27
- }[];
28
- }
1
+ import { IConvert3Dto2DResult, IManager } from "@shapediver/viewer.rendering-engine.rendering-engine";
2
+ import { ITreeNode } from "@shapediver/viewer.shared.node-tree";
3
+ import { IGeometryData, IIntersectionFilter } from "@shapediver/viewer.shared.types";
4
+ import { vec3 } from "gl-matrix";
5
+ import { RenderingEngine } from "../RenderingEngine";
6
+ export declare class SceneTracingManager implements IManager {
7
+ private readonly _renderingEngine;
8
+ private readonly _intersectionManager;
9
+ private readonly _raycaster;
10
+ constructor(_renderingEngine: RenderingEngine);
11
+ convert3Dto2D(p: vec3): IConvert3Dto2DResult;
12
+ init(): void;
13
+ /**
14
+ * Calculate the ray that is created by the mouse event and the camera.
15
+ *
16
+ * @param event
17
+ * @returns
18
+ */
19
+ pointerEventToRay(event: PointerEvent): {
20
+ origin: vec3;
21
+ direction: vec3;
22
+ };
23
+ raytraceScene(origin: vec3, direction: vec3, filterCriteria?: IIntersectionFilter[]): {
24
+ distance: number;
25
+ node: ITreeNode;
26
+ data?: IGeometryData;
27
+ }[];
28
+ }
29
29
  //# sourceMappingURL=SceneTracingManager.d.ts.map
@@ -1,151 +1,161 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.SceneTracingManager = void 0;
27
- const THREE = __importStar(require("three"));
28
- const viewer_rendering_engine_camera_engine_1 = require("@shapediver/viewer.rendering-engine.camera-engine");
29
- const viewer_rendering_engine_intersection_engine_1 = require("@shapediver/viewer.rendering-engine.intersection-engine");
30
- const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
31
- const gl_matrix_1 = require("gl-matrix");
32
- class SceneTracingManager {
33
- constructor(_renderingEngine) {
34
- this._renderingEngine = _renderingEngine;
35
- this._intersectionManager = viewer_rendering_engine_intersection_engine_1.IntersectionEngine.instance;
36
- this._raycaster = new THREE.Raycaster();
37
- }
38
- convert3Dto2D(p) {
39
- const canvasPageCoordinates = this._renderingEngine.canvas.getBoundingClientRect(), width = this._renderingEngine.canvas.width, height = this._renderingEngine.canvas.height;
40
- const camera = this._renderingEngine.cameraEngine.camera;
41
- if (!camera)
42
- throw new viewer_shared_services_1.ShapeDiverViewerViewportError("SceneTracingManager.convert3Dto2D: No camera is defined for this viewer.");
43
- if (camera instanceof viewer_rendering_engine_camera_engine_1.OrthographicCamera) {
44
- const direction = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), camera.target, camera.position);
45
- const length = gl_matrix_1.vec3.length(direction);
46
- gl_matrix_1.vec3.divide(direction, direction, gl_matrix_1.vec3.fromValues(length, length, length));
47
- this._raycaster.ray.direction.set(direction[0], direction[1], direction[2]);
48
- // set the origin of the ray to the opposite direction of the camera with the start at the initial provided point
49
- this._raycaster.ray.origin.set(p[0] + direction[0] * length, p[1] + direction[1] * length, p[2] + direction[2] * length);
50
- }
51
- else {
52
- this._raycaster.ray.direction.set(p[0], p[1], p[2]);
53
- this._raycaster.ray.origin.set(0, 0, 0);
54
- camera.convertedObject[this._renderingEngine.id].localToWorld(this._raycaster.ray.origin);
55
- this._raycaster.ray.direction.sub(this._raycaster.ray.origin);
56
- this._raycaster.ray.direction.normalize();
57
- }
58
- let closestIntersectionDistance = Number.MAX_VALUE;
59
- this._renderingEngine.sceneTreeManager.scene.traverseVisible((obj) => {
60
- if (obj.userData.ignoreInRayTracingTest)
61
- return;
62
- if (obj instanceof THREE.Mesh) {
63
- const curIntersections = this._raycaster.intersectObject(obj);
64
- if (curIntersections.length)
65
- if (curIntersections[0].distance <
66
- closestIntersectionDistance)
67
- closestIntersectionDistance =
68
- curIntersections[0].distance;
69
- }
70
- });
71
- const pos = camera.project(gl_matrix_1.vec3.clone(p));
72
- pos[0] = pos[0] * (width / 2) + width / 2;
73
- pos[1] = -(pos[1] * (height / 2)) + height / 2;
74
- // take care of correction by device pixel ratio
75
- pos[0] = pos[0] / devicePixelRatio;
76
- pos[1] = pos[1] / devicePixelRatio;
77
- // epsilon is added as a distance spacer as users tend to put the anchors of html elements directly at the vertices
78
- // with this we prevent flickering
79
- const eps = 0.0001;
80
- // the distance to the point
81
- const distance = gl_matrix_1.vec3.distance(camera.position, p);
82
- return {
83
- distance,
84
- hidden: closestIntersectionDistance + eps < distance,
85
- container: gl_matrix_1.vec2.clone(pos),
86
- client: gl_matrix_1.vec2.fromValues(pos[0] + canvasPageCoordinates.left, pos[1] + canvasPageCoordinates.top),
87
- page: gl_matrix_1.vec2.fromValues(pos[0] + canvasPageCoordinates.left + window.pageXOffset, pos[1] + canvasPageCoordinates.top + window.pageYOffset),
88
- };
89
- }
90
- init() { }
91
- /**
92
- * Calculate the ray that is created by the mouse event and the camera.
93
- *
94
- * @param event
95
- * @returns
96
- */
97
- pointerEventToRay(event) {
98
- const rect = this._renderingEngine.canvas.getBoundingClientRect();
99
- const camera = this._renderingEngine.cameraEngine.camera;
100
- if (!camera)
101
- throw new viewer_shared_services_1.ShapeDiverViewerViewportError("SceneTracingManager.pointerEventToRay: No camera is defined for this viewer.");
102
- const _mouse_x = ((event.clientX - rect.left) / rect.width) * 2 - 1;
103
- const _mouse_y = -((event.clientY - rect.top) / rect.height) * 2 + 1;
104
- let origin = gl_matrix_1.vec3.clone(camera.position);
105
- let direction;
106
- if (camera instanceof viewer_rendering_engine_camera_engine_1.OrthographicCamera) {
107
- if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.TOP) {
108
- origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.right, _mouse_y * camera.top, 0));
109
- }
110
- else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BOTTOM) {
111
- origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.left, _mouse_y * camera.top, 0));
112
- }
113
- else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.LEFT) {
114
- origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(0, _mouse_x * camera.left, _mouse_y * camera.top));
115
- }
116
- else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.RIGHT) {
117
- origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(0, _mouse_x * camera.right, _mouse_y * camera.top));
118
- }
119
- else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.FRONT) {
120
- origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.right, 0, _mouse_y * camera.top));
121
- }
122
- else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BACK) {
123
- origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.left, 0, _mouse_y * camera.top));
124
- }
125
- else {
126
- // for the custom camera, the origin is on the camera plane and needs to be rotated according to the direction
127
- direction = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), camera.target, camera.position));
128
- const up = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), camera.up);
129
- const right = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.cross(gl_matrix_1.vec3.create(), direction, up));
130
- const x = _mouse_x * camera.right;
131
- const y = _mouse_y * camera.top;
132
- origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), right, x), gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), up, y)));
133
- }
134
- }
135
- if (!direction)
136
- direction = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), camera.unproject(gl_matrix_1.vec3.fromValues(_mouse_x, _mouse_y, 0.5)), origin));
137
- return { origin, direction };
138
- }
139
- raytraceScene(origin, direction, filterCriteria) {
140
- const intersect = this._intersectionManager.intersect({ origin, direction }, this._renderingEngine.id, filterCriteria);
141
- return intersect.map((i) => {
142
- return {
143
- distance: i.distance,
144
- node: i.node,
145
- data: i.geometryData,
146
- };
147
- });
148
- }
149
- }
150
- exports.SceneTracingManager = SceneTracingManager;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.SceneTracingManager = void 0;
37
+ const THREE = __importStar(require("three"));
38
+ const viewer_rendering_engine_camera_engine_1 = require("@shapediver/viewer.rendering-engine.camera-engine");
39
+ const viewer_rendering_engine_intersection_engine_1 = require("@shapediver/viewer.rendering-engine.intersection-engine");
40
+ const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
41
+ const gl_matrix_1 = require("gl-matrix");
42
+ class SceneTracingManager {
43
+ constructor(_renderingEngine) {
44
+ this._renderingEngine = _renderingEngine;
45
+ this._intersectionManager = viewer_rendering_engine_intersection_engine_1.IntersectionEngine.instance;
46
+ this._raycaster = new THREE.Raycaster();
47
+ }
48
+ convert3Dto2D(p) {
49
+ const canvasPageCoordinates = this._renderingEngine.canvas.getBoundingClientRect(), width = this._renderingEngine.canvas.width, height = this._renderingEngine.canvas.height;
50
+ const camera = this._renderingEngine.cameraEngine.camera;
51
+ if (!camera)
52
+ throw new viewer_shared_services_1.ShapeDiverViewerViewportError("SceneTracingManager.convert3Dto2D: No camera is defined for this viewer.");
53
+ if (camera instanceof viewer_rendering_engine_camera_engine_1.OrthographicCamera) {
54
+ const direction = gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), camera.target, camera.position);
55
+ const length = gl_matrix_1.vec3.length(direction);
56
+ gl_matrix_1.vec3.divide(direction, direction, gl_matrix_1.vec3.fromValues(length, length, length));
57
+ this._raycaster.ray.direction.set(direction[0], direction[1], direction[2]);
58
+ // set the origin of the ray to the opposite direction of the camera with the start at the initial provided point
59
+ this._raycaster.ray.origin.set(p[0] + direction[0] * length, p[1] + direction[1] * length, p[2] + direction[2] * length);
60
+ }
61
+ else {
62
+ this._raycaster.ray.direction.set(p[0], p[1], p[2]);
63
+ this._raycaster.ray.origin.set(0, 0, 0);
64
+ camera.convertedObject[this._renderingEngine.id].localToWorld(this._raycaster.ray.origin);
65
+ this._raycaster.ray.direction.sub(this._raycaster.ray.origin);
66
+ this._raycaster.ray.direction.normalize();
67
+ }
68
+ let closestIntersectionDistance = Number.MAX_VALUE;
69
+ this._renderingEngine.sceneTreeManager.scene.traverseVisible((obj) => {
70
+ if (obj.userData.ignoreInRayTracingTest)
71
+ return;
72
+ if (obj instanceof THREE.Mesh) {
73
+ const curIntersections = this._raycaster.intersectObject(obj);
74
+ if (curIntersections.length)
75
+ if (curIntersections[0].distance <
76
+ closestIntersectionDistance)
77
+ closestIntersectionDistance =
78
+ curIntersections[0].distance;
79
+ }
80
+ });
81
+ const pos = camera.project(gl_matrix_1.vec3.clone(p));
82
+ pos[0] = pos[0] * (width / 2) + width / 2;
83
+ pos[1] = -(pos[1] * (height / 2)) + height / 2;
84
+ // take care of correction by device pixel ratio
85
+ pos[0] = pos[0] / devicePixelRatio;
86
+ pos[1] = pos[1] / devicePixelRatio;
87
+ // epsilon is added as a distance spacer as users tend to put the anchors of html elements directly at the vertices
88
+ // with this we prevent flickering
89
+ const eps = 0.0001;
90
+ // the distance to the point
91
+ const distance = gl_matrix_1.vec3.distance(camera.position, p);
92
+ return {
93
+ distance,
94
+ hidden: closestIntersectionDistance + eps < distance,
95
+ container: gl_matrix_1.vec2.clone(pos),
96
+ client: gl_matrix_1.vec2.fromValues(pos[0] + canvasPageCoordinates.left, pos[1] + canvasPageCoordinates.top),
97
+ page: gl_matrix_1.vec2.fromValues(pos[0] + canvasPageCoordinates.left + window.pageXOffset, pos[1] + canvasPageCoordinates.top + window.pageYOffset),
98
+ };
99
+ }
100
+ init() { }
101
+ /**
102
+ * Calculate the ray that is created by the mouse event and the camera.
103
+ *
104
+ * @param event
105
+ * @returns
106
+ */
107
+ pointerEventToRay(event) {
108
+ const rect = this._renderingEngine.canvas.getBoundingClientRect();
109
+ const camera = this._renderingEngine.cameraEngine.camera;
110
+ if (!camera)
111
+ throw new viewer_shared_services_1.ShapeDiverViewerViewportError("SceneTracingManager.pointerEventToRay: No camera is defined for this viewer.");
112
+ const _mouse_x = ((event.clientX - rect.left) / rect.width) * 2 - 1;
113
+ const _mouse_y = -((event.clientY - rect.top) / rect.height) * 2 + 1;
114
+ let origin = gl_matrix_1.vec3.clone(camera.position);
115
+ let direction;
116
+ if (camera instanceof viewer_rendering_engine_camera_engine_1.OrthographicCamera) {
117
+ if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.TOP) {
118
+ origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.right, _mouse_y * camera.top, 0));
119
+ }
120
+ else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BOTTOM) {
121
+ origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.left, _mouse_y * camera.top, 0));
122
+ }
123
+ else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.LEFT) {
124
+ origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(0, _mouse_x * camera.left, _mouse_y * camera.top));
125
+ }
126
+ else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.RIGHT) {
127
+ origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(0, _mouse_x * camera.right, _mouse_y * camera.top));
128
+ }
129
+ else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.FRONT) {
130
+ origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.right, 0, _mouse_y * camera.top));
131
+ }
132
+ else if (camera.direction == viewer_rendering_engine_camera_engine_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BACK) {
133
+ origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.fromValues(_mouse_x * camera.left, 0, _mouse_y * camera.top));
134
+ }
135
+ else {
136
+ // for the custom camera, the origin is on the camera plane and needs to be rotated according to the direction
137
+ direction = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), camera.target, camera.position));
138
+ const up = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), camera.up);
139
+ const right = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.cross(gl_matrix_1.vec3.create(), direction, up));
140
+ const x = _mouse_x * camera.right;
141
+ const y = _mouse_y * camera.top;
142
+ origin = gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), camera.position, gl_matrix_1.vec3.add(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), right, x), gl_matrix_1.vec3.scale(gl_matrix_1.vec3.create(), up, y)));
143
+ }
144
+ }
145
+ if (!direction)
146
+ direction = gl_matrix_1.vec3.normalize(gl_matrix_1.vec3.create(), gl_matrix_1.vec3.sub(gl_matrix_1.vec3.create(), camera.unproject(gl_matrix_1.vec3.fromValues(_mouse_x, _mouse_y, 0.5)), origin));
147
+ return { origin, direction };
148
+ }
149
+ raytraceScene(origin, direction, filterCriteria) {
150
+ const intersect = this._intersectionManager.intersect({ origin, direction }, this._renderingEngine.id, filterCriteria);
151
+ return intersect.map((i) => {
152
+ return {
153
+ distance: i.distance,
154
+ node: i.node,
155
+ data: i.geometryData,
156
+ };
157
+ });
158
+ }
159
+ }
160
+ exports.SceneTracingManager = SceneTracingManager;
151
161
  //# sourceMappingURL=SceneTracingManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SceneTracingManager.js","sourceRoot":"","sources":["../../src/managers/SceneTracingManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SceneTracingManager.js","sourceRoot":"","sources":["../../src/managers/SceneTracingManager.ts"],"names":[],"mappings":"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"}