viral-viewer-2 6.3.0 → 6.3.2

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 (144) hide show
  1. package/dist/components/loader/viral-revit.loader.d.ts +2 -2
  2. package/dist/index.mjs +146 -144
  3. package/dist/threejs-addon/n8ao/post-processing.d.ts +109 -109
  4. package/package.json +1 -1
  5. package/dist/components/animation/viral-animation.js +0 -71
  6. package/dist/components/animation/viral-animation.js.map +0 -1
  7. package/dist/components/bvh/viral-bvh.js +0 -19
  8. package/dist/components/bvh/viral-bvh.js.map +0 -1
  9. package/dist/components/camera/viral-camera.js +0 -207
  10. package/dist/components/camera/viral-camera.js.map +0 -1
  11. package/dist/components/compress/viral-compress.processor.js +0 -13
  12. package/dist/components/compress/viral-compress.processor.js.map +0 -1
  13. package/dist/components/custom-objects/index.js +0 -6
  14. package/dist/components/custom-objects/index.js.map +0 -1
  15. package/dist/components/custom-objects/viral-instanced-mesh.js +0 -203
  16. package/dist/components/custom-objects/viral-instanced-mesh.js.map +0 -1
  17. package/dist/components/custom-objects/viral-mesh.js +0 -25
  18. package/dist/components/custom-objects/viral-mesh.js.map +0 -1
  19. package/dist/components/data-manager/viral-data-manager.js +0 -35
  20. package/dist/components/data-manager/viral-data-manager.js.map +0 -1
  21. package/dist/components/event-handler/base/event-dispatcher.js +0 -35
  22. package/dist/components/event-handler/base/event-dispatcher.js.map +0 -1
  23. package/dist/components/event-handler/keyboard/viral-keyboard.js +0 -78
  24. package/dist/components/event-handler/keyboard/viral-keyboard.js.map +0 -1
  25. package/dist/components/event-handler/mouse/viral-mouse.js +0 -239
  26. package/dist/components/event-handler/mouse/viral-mouse.js.map +0 -1
  27. package/dist/components/event-handler/viral-centralized-event-handler.js +0 -186
  28. package/dist/components/event-handler/viral-centralized-event-handler.js.map +0 -1
  29. package/dist/components/event-handler/viral-lifecycle-event-handler.js +0 -55
  30. package/dist/components/event-handler/viral-lifecycle-event-handler.js.map +0 -1
  31. package/dist/components/loader/viral-point-cloud.loader.js +0 -33
  32. package/dist/components/loader/viral-point-cloud.loader.js.map +0 -1
  33. package/dist/components/loader/viral-revit.loader.js +0 -344
  34. package/dist/components/loader/viral-revit.loader.js.map +0 -1
  35. package/dist/components/loader/viral-three.loader.js +0 -20
  36. package/dist/components/loader/viral-three.loader.js.map +0 -1
  37. package/dist/components/loader/viral.loader.js +0 -16
  38. package/dist/components/loader/viral.loader.js.map +0 -1
  39. package/dist/components/material/viral-material-manager.js +0 -60
  40. package/dist/components/material/viral-material-manager.js.map +0 -1
  41. package/dist/components/post-processing/post-processing-renderer.js +0 -46
  42. package/dist/components/post-processing/post-processing-renderer.js.map +0 -1
  43. package/dist/components/renderer/viral-renderer.js +0 -55
  44. package/dist/components/renderer/viral-renderer.js.map +0 -1
  45. package/dist/components/scene/viral-scene.js +0 -131
  46. package/dist/components/scene/viral-scene.js.map +0 -1
  47. package/dist/components/stats/viral-stats.js +0 -17
  48. package/dist/components/stats/viral-stats.js.map +0 -1
  49. package/dist/components/visibility-manager/viral-visibility-manager.js +0 -175
  50. package/dist/components/visibility-manager/viral-visibility-manager.js.map +0 -1
  51. package/dist/components/worker/base/worker-pool.js +0 -68
  52. package/dist/components/worker/base/worker-pool.js.map +0 -1
  53. package/dist/components/worker/base/worker-thread.js +0 -35
  54. package/dist/components/worker/base/worker-thread.js.map +0 -1
  55. package/dist/components/worker/fetch-data.worker.js +0 -31
  56. package/dist/components/worker/fetch-data.worker.js.map +0 -1
  57. package/dist/components/worker/load-element-by-material-v2.worker.js +0 -80
  58. package/dist/components/worker/load-element-by-material-v2.worker.js.map +0 -1
  59. package/dist/components/worker/load-element-by-material.worker.js +0 -59
  60. package/dist/components/worker/load-element-by-material.worker.js.map +0 -1
  61. package/dist/components/worker/load-element-standalone.worker.js +0 -109
  62. package/dist/components/worker/load-element-standalone.worker.js.map +0 -1
  63. package/dist/components/worker/viral-viewer-2.worker.js +0 -127
  64. package/dist/components/worker/viral-viewer-2.worker.js.map +0 -1
  65. package/dist/components/worker/viral-viewer-3.worker.js +0 -82
  66. package/dist/components/worker/viral-viewer-3.worker.js.map +0 -1
  67. package/dist/components/worker/viral-viewer.worker.js +0 -107
  68. package/dist/components/worker/viral-viewer.worker.js.map +0 -1
  69. package/dist/components/worker-script/fetch-data-worker.script.js +0 -56
  70. package/dist/components/worker-script/fetch-data-worker.script.js.map +0 -1
  71. package/dist/components/worker-script/load-element-by-material.script.js +0 -131
  72. package/dist/components/worker-script/load-element-by-material.script.js.map +0 -1
  73. package/dist/components/worker-script/load-element-standalone.script.js +0 -34172
  74. package/dist/components/worker-script/load-element-standalone.script.js.map +0 -1
  75. package/dist/components/worker-script/load-model-worker-2.script.js +0 -2704
  76. package/dist/components/worker-script/load-model-worker-2.script.js.map +0 -1
  77. package/dist/components/worker-script/load-model-worker.script.js +0 -148
  78. package/dist/components/worker-script/load-model-worker.script.js.map +0 -1
  79. package/dist/components/worker-script/material-aproach/load-element-by-material-instanced-mesh.script.js +0 -34152
  80. package/dist/components/worker-script/material-aproach/load-element-by-material-instanced-mesh.script.js.map +0 -1
  81. package/dist/components/worker-script/material-aproach/load-element-by-material-mesh.script.js +0 -127
  82. package/dist/components/worker-script/material-aproach/load-element-by-material-mesh.script.js.map +0 -1
  83. package/dist/components/worker-script/threejs.types.js +0 -34162
  84. package/dist/components/worker-script/threejs.types.js.map +0 -1
  85. package/dist/const/colors.js +0 -39
  86. package/dist/const/colors.js.map +0 -1
  87. package/dist/const/fonts.js +0 -17
  88. package/dist/const/fonts.js.map +0 -1
  89. package/dist/const/icons.js +0 -11
  90. package/dist/const/icons.js.map +0 -1
  91. package/dist/gui/context-menu/viral-context-menu.js +0 -78
  92. package/dist/gui/context-menu/viral-context-menu.js.map +0 -1
  93. package/dist/gui/draggable-modal/viral-draggable-modal.js +0 -167
  94. package/dist/gui/draggable-modal/viral-draggable-modal.js.map +0 -1
  95. package/dist/gui/fonts/fonts.js +0 -20
  96. package/dist/gui/fonts/fonts.js.map +0 -1
  97. package/dist/gui/navigation-cube/components/cube-camera.js +0 -74
  98. package/dist/gui/navigation-cube/components/cube-camera.js.map +0 -1
  99. package/dist/gui/navigation-cube/components/cube-renderer.js +0 -31
  100. package/dist/gui/navigation-cube/components/cube-renderer.js.map +0 -1
  101. package/dist/gui/navigation-cube/components/cube-scene.js +0 -546
  102. package/dist/gui/navigation-cube/components/cube-scene.js.map +0 -1
  103. package/dist/gui/navigation-cube/components/cube.mouse.js +0 -109
  104. package/dist/gui/navigation-cube/components/cube.mouse.js.map +0 -1
  105. package/dist/gui/navigation-cube/viral-navigation-cube.js +0 -50
  106. package/dist/gui/navigation-cube/viral-navigation-cube.js.map +0 -1
  107. package/dist/gui/spinner/viral-spinner.js +0 -102
  108. package/dist/gui/spinner/viral-spinner.js.map +0 -1
  109. package/dist/gui/tools/tools/viral-tool-ambient-occlusion.js +0 -25
  110. package/dist/gui/tools/tools/viral-tool-ambient-occlusion.js.map +0 -1
  111. package/dist/gui/tools/tools/viral-tool-dark-mode.js +0 -21
  112. package/dist/gui/tools/tools/viral-tool-dark-mode.js.map +0 -1
  113. package/dist/gui/tools/tools/viral-tool-elevation.js +0 -30
  114. package/dist/gui/tools/tools/viral-tool-elevation.js.map +0 -1
  115. package/dist/gui/tools/tools/viral-tool-export-scene.js +0 -36
  116. package/dist/gui/tools/tools/viral-tool-export-scene.js.map +0 -1
  117. package/dist/gui/tools/tools/viral-tool-measure.js +0 -243
  118. package/dist/gui/tools/tools/viral-tool-measure.js.map +0 -1
  119. package/dist/gui/tools/tools/viral-tool-sunlight.js +0 -46
  120. package/dist/gui/tools/tools/viral-tool-sunlight.js.map +0 -1
  121. package/dist/gui/tools/viral-tools.js +0 -213
  122. package/dist/gui/tools/viral-tools.js.map +0 -1
  123. package/dist/index.js +0 -21
  124. package/dist/index.js.map +0 -1
  125. package/dist/services/local-storage.service.js +0 -57
  126. package/dist/services/local-storage.service.js.map +0 -1
  127. package/dist/threejs-addon/n8ao/n8ao.js +0 -1952
  128. package/dist/threejs-addon/n8ao/n8ao.js.map +0 -1
  129. package/dist/threejs-addon/n8ao/post-processing.js +0 -15145
  130. package/dist/threejs-addon/n8ao/post-processing.js.map +0 -1
  131. package/dist/threejs-addon/stats.js +0 -102
  132. package/dist/threejs-addon/stats.js.map +0 -1
  133. package/dist/types.js +0 -173
  134. package/dist/types.js.map +0 -1
  135. package/dist/utils/html.js +0 -12
  136. package/dist/utils/html.js.map +0 -1
  137. package/dist/utils/index.js +0 -10
  138. package/dist/utils/index.js.map +0 -1
  139. package/dist/utils/log.js +0 -14
  140. package/dist/utils/log.js.map +0 -1
  141. package/dist/utils/threejs.js +0 -44
  142. package/dist/utils/threejs.js.map +0 -1
  143. package/dist/viral-viewer-api.js +0 -76
  144. package/dist/viral-viewer-api.js.map +0 -1
@@ -1,131 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.workerCode = void 0;
4
- function workerFunction() {
5
- function progressGeometry(instance, solids) {
6
- let numbers = [
7
- instance.BasisX.X,
8
- -instance.BasisX.Z,
9
- -instance.BasisX.Y,
10
- 0,
11
- -instance.BasisZ.X,
12
- instance.BasisZ.Z,
13
- instance.BasisZ.Y,
14
- 0,
15
- -instance.BasisY.X,
16
- instance.BasisY.Z,
17
- instance.BasisY.Y,
18
- 0,
19
- -instance.Offset.X,
20
- instance.Offset.Z,
21
- instance.Offset.Y,
22
- 1,
23
- ];
24
- let matrix4 = new Matrix4();
25
- matrix4.fromArray(numbers);
26
- let result = [];
27
- for (let g = 0; g < solids.length; g++) {
28
- const solid = solids[g];
29
- let vertices = solid.Vertices;
30
- let indices = solid.Indices;
31
- const materialIndex = solid.MaterialIndex;
32
- let newVertices = [];
33
- for (let i = 0; i < vertices.length; i++) {
34
- const point = vertices[i];
35
- const point2 = new Vector3(-point.X, point.Z, point.Y);
36
- point2.applyMatrix4(matrix4);
37
- newVertices.push(point2);
38
- }
39
- let verticePoints = [];
40
- for (let i = 0; i < indices.length; i++) {
41
- const index = indices[i];
42
- const point = newVertices[index];
43
- verticePoints.push(point.x);
44
- verticePoints.push(point.y);
45
- verticePoints.push(point.z);
46
- }
47
- const buffer = new Float32Array(verticePoints);
48
- let object = { materialIndex: materialIndex, buffer: buffer };
49
- result.push(object);
50
- }
51
- return result;
52
- }
53
- function progressGeometry2(solids) {
54
- let result = [];
55
- for (let index = 0; index < solids.length; index++) {
56
- const solid = solids[index];
57
- const vertices = solid.Vertices;
58
- const indices = solid.Indices;
59
- const materialIndex = solid.MaterialIndex;
60
- let verticePoints = [];
61
- for (let i = 0; i < indices.length; i++) {
62
- const index = indices[i];
63
- const point = vertices[index];
64
- verticePoints.push(-point.X);
65
- verticePoints.push(point.Z);
66
- verticePoints.push(point.Y);
67
- }
68
- const buffer = new Float32Array(verticePoints);
69
- let object = { materialIndex: materialIndex, buffer: buffer };
70
- result.push(object);
71
- }
72
- return result;
73
- }
74
- self.addEventListener("message", (event) => {
75
- const rootElements = event.data;
76
- let result = [];
77
- for (let j = 0; j < rootElements.length; j++) {
78
- const element = rootElements[j];
79
- let solids = element.Solids;
80
- let instances = element.Instances;
81
- if (instances.length > 0) {
82
- for (let index = 0; index < instances.length; index++) {
83
- const instance = instances[index];
84
- const elementId = instance.Id;
85
- let geometries = progressGeometry(instance, solids);
86
- let object = { elementId: elementId, geometries: geometries };
87
- result.push(object);
88
- }
89
- }
90
- else {
91
- const elementId = element.Id;
92
- let geometries = progressGeometry2(solids);
93
- let object = { elementId: elementId, geometries: geometries };
94
- result.push(object);
95
- }
96
- }
97
- self.postMessage(result);
98
- });
99
- class Matrix4 {
100
- constructor() {
101
- this.elements = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
102
- }
103
- fromArray(array, offset = 0) {
104
- for (let i = 0; i < 16; i++) {
105
- this.elements[i] = array[i + offset];
106
- }
107
- return this;
108
- }
109
- }
110
- class Vector3 {
111
- constructor(x = 0, y = 0, z = 0) {
112
- this.x = 0;
113
- this.y = 0;
114
- this.z = 0;
115
- this.x = x;
116
- this.y = y;
117
- this.z = z;
118
- }
119
- applyMatrix4(m) {
120
- const x = this.x, y = this.y, z = this.z;
121
- const e = m.elements;
122
- const w = 1 / (e[3] * x + e[7] * y + e[11] * z + e[15]);
123
- this.x = (e[0] * x + e[4] * y + e[8] * z + e[12]) * w;
124
- this.y = (e[1] * x + e[5] * y + e[9] * z + e[13]) * w;
125
- this.z = (e[2] * x + e[6] * y + e[10] * z + e[14]) * w;
126
- return this;
127
- }
128
- }
129
- }
130
- exports.workerCode = workerFunction;
131
- //# sourceMappingURL=load-element-by-material.script.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"load-element-by-material.script.js","sourceRoot":"","sources":["../../../src/components/worker-script/load-element-by-material.script.ts"],"names":[],"mappings":"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"}