@crystaldesign/real-time-viewer 24.12.0-beta.9 → 24.13.0-beta.1
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.
- package/build/esm/index.js +303 -119
- package/build/types/real-time-viewer/src/CustomMaterial/index.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/SelectionHandler/index.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/ViewpointGui.d.ts +3 -2
- package/build/types/real-time-viewer/src/ViewpointGui.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/controls/index.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/index.d.ts +1 -1
- package/build/types/real-time-viewer/src/index.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/parser/buildScene/index.d.ts +1 -1
- package/build/types/real-time-viewer/src/parser/buildScene/index.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/parser/createCams/index.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/parser/index.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/store/GridStore.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/store/SceneStore.d.ts +18 -1
- package/build/types/real-time-viewer/src/store/SceneStore.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/store/UIStore.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/store/UtilStore.d.ts +1 -0
- package/build/types/real-time-viewer/src/store/UtilStore.d.ts.map +1 -1
- package/build/types/real-time-viewer/src/useRealTimeRenderData.d.ts +0 -1
- package/build/types/real-time-viewer/src/useRealTimeRenderData.d.ts.map +1 -1
- package/build/umd/1309.real-time-viewer.umd.min.js +2 -0
- package/build/umd/1309.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/1447.real-time-viewer.umd.min.js +2 -0
- package/build/umd/1447.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/1499.real-time-viewer.umd.min.js +2 -0
- package/build/umd/1499.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/1731.real-time-viewer.umd.min.js +2 -0
- package/build/umd/1731.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/1781.real-time-viewer.umd.min.js +2 -0
- package/build/umd/1781.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/1896.real-time-viewer.umd.min.js +2 -0
- package/build/umd/1896.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/2011.real-time-viewer.umd.min.js +2 -0
- package/build/umd/2011.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/2439.real-time-viewer.umd.min.js +2 -0
- package/build/umd/2439.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/2817.real-time-viewer.umd.min.js +2 -0
- package/build/umd/2817.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/2871.real-time-viewer.umd.min.js +2 -0
- package/build/umd/2871.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/3116.real-time-viewer.umd.min.js +2 -0
- package/build/umd/3116.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/3243.real-time-viewer.umd.min.js +2 -0
- package/build/umd/3243.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/3351.real-time-viewer.umd.min.js +2 -0
- package/build/umd/3351.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/3456.real-time-viewer.umd.min.js +2 -0
- package/build/umd/3456.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/3631.real-time-viewer.umd.min.js +2 -0
- package/build/umd/3631.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/3945.real-time-viewer.umd.min.js +2 -0
- package/build/umd/3945.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/3956.real-time-viewer.umd.min.js +2 -0
- package/build/umd/3956.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4091.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4091.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/410.real-time-viewer.umd.min.js +2 -0
- package/build/umd/410.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4153.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4153.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4248.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4248.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4378.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4378.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4431.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4431.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4542.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4542.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4602.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4602.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4661.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4661.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4669.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4669.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4711.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4711.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/4823.real-time-viewer.umd.min.js +2 -0
- package/build/umd/4823.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/5462.real-time-viewer.umd.min.js +2 -0
- package/build/umd/5462.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/5478.real-time-viewer.umd.min.js +2 -0
- package/build/umd/5478.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/5483.real-time-viewer.umd.min.js +2 -0
- package/build/umd/5483.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/5555.real-time-viewer.umd.min.js +2 -0
- package/build/umd/5555.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/5860.real-time-viewer.umd.min.js +2 -0
- package/build/umd/5860.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/5922.real-time-viewer.umd.min.js +2 -0
- package/build/umd/5922.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/6095.real-time-viewer.umd.min.js +2 -0
- package/build/umd/6095.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/615.real-time-viewer.umd.min.js +2 -0
- package/build/umd/615.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/6230.real-time-viewer.umd.min.js +2 -0
- package/build/umd/6230.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/6357.real-time-viewer.umd.min.js +2 -0
- package/build/umd/6357.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/6373.real-time-viewer.umd.min.js +2 -0
- package/build/umd/6373.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/653.real-time-viewer.umd.min.js +2 -0
- package/build/umd/653.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/6656.real-time-viewer.umd.min.js +2 -0
- package/build/umd/6656.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/6829.real-time-viewer.umd.min.js +2 -0
- package/build/umd/6829.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/6912.real-time-viewer.umd.min.js +2 -0
- package/build/umd/6912.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7042.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7042.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/710.real-time-viewer.umd.min.js +2 -0
- package/build/umd/710.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7142.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7142.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7229.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7229.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7276.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7276.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7352.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7352.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7501.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7501.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7607.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7607.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7729.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7729.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7751.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7751.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/7754.real-time-viewer.umd.min.js +2 -0
- package/build/umd/7754.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8078.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8078.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8105.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8105.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/815.real-time-viewer.umd.min.js +2 -0
- package/build/umd/815.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8240.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8240.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8333.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8333.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8526.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8526.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8620.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8620.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8728.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8728.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8729.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8729.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/8991.real-time-viewer.umd.min.js +2 -0
- package/build/umd/8991.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/9078.real-time-viewer.umd.min.js +2 -0
- package/build/umd/9078.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/913.real-time-viewer.umd.min.js +2 -0
- package/build/umd/913.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/930.real-time-viewer.umd.min.js +2 -0
- package/build/umd/930.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/9334.real-time-viewer.umd.min.js +2 -0
- package/build/umd/9334.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/9383.real-time-viewer.umd.min.js +2 -0
- package/build/umd/9383.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/9568.real-time-viewer.umd.min.js +2 -0
- package/build/umd/9568.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/9712.real-time-viewer.umd.min.js +2 -0
- package/build/umd/9712.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/9884.real-time-viewer.umd.min.js +2 -0
- package/build/umd/9884.real-time-viewer.umd.min.js.LICENSE.txt +1 -0
- package/build/umd/real-time-viewer.umd.min.js +1 -1
- package/build/umd/real-time-viewer.umd.min.js.LICENSE.txt +2 -7
- package/build/umd/report.html +1 -1
- package/package.json +19 -19
- package/build/umd/100.real-time-viewer.umd.min.js +0 -2
- package/build/umd/100.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/132.real-time-viewer.umd.min.js +0 -2
- package/build/umd/132.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/145.real-time-viewer.umd.min.js +0 -2
- package/build/umd/145.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/152.real-time-viewer.umd.min.js +0 -2
- package/build/umd/152.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/173.real-time-viewer.umd.min.js +0 -2
- package/build/umd/173.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/190.real-time-viewer.umd.min.js +0 -2
- package/build/umd/190.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/224.real-time-viewer.umd.min.js +0 -2
- package/build/umd/224.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/292.real-time-viewer.umd.min.js +0 -2
- package/build/umd/292.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/333.real-time-viewer.umd.min.js +0 -2
- package/build/umd/333.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/360.real-time-viewer.umd.min.js +0 -2
- package/build/umd/360.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/508.real-time-viewer.umd.min.js +0 -2
- package/build/umd/508.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/552.real-time-viewer.umd.min.js +0 -2
- package/build/umd/552.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/593.real-time-viewer.umd.min.js +0 -2
- package/build/umd/593.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/595.real-time-viewer.umd.min.js +0 -2
- package/build/umd/595.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/662.real-time-viewer.umd.min.js +0 -2
- package/build/umd/662.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/664.real-time-viewer.umd.min.js +0 -2
- package/build/umd/664.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/67.real-time-viewer.umd.min.js +0 -2
- package/build/umd/67.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/689.real-time-viewer.umd.min.js +0 -2
- package/build/umd/689.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/691.real-time-viewer.umd.min.js +0 -2
- package/build/umd/691.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/856.real-time-viewer.umd.min.js +0 -2
- package/build/umd/856.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/882.real-time-viewer.umd.min.js +0 -2
- package/build/umd/882.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/934.real-time-viewer.umd.min.js +0 -2
- package/build/umd/934.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/942.real-time-viewer.umd.min.js +0 -2
- package/build/umd/942.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/951.real-time-viewer.umd.min.js +0 -2
- package/build/umd/951.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/964.real-time-viewer.umd.min.js +0 -2
- package/build/umd/964.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/974.real-time-viewer.umd.min.js +0 -2
- package/build/umd/974.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
- package/build/umd/98.real-time-viewer.umd.min.js +0 -2
- package/build/umd/98.real-time-viewer.umd.min.js.LICENSE.txt +0 -1
package/build/esm/index.js
CHANGED
|
@@ -27,13 +27,14 @@ import { SceneOptimizerOptions, ShadowsOptimization, RenderTargetsOptimization,
|
|
|
27
27
|
import { getLogger, DivaError } from '@crystaldesign/diva-core';
|
|
28
28
|
import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
|
|
29
29
|
import { Ellipse, Rectangle, Button, TextBlock, AdvancedDynamicTexture, Image } from '@babylonjs/gui';
|
|
30
|
-
import { Matrix as Matrix$1, Vector3 as Vector3$1 } from '@babylonjs/core/Maths/math';
|
|
30
|
+
import { Matrix as Matrix$1, Vector3 as Vector3$1, Frustum } from '@babylonjs/core/Maths/math';
|
|
31
31
|
import { Engine } from '@babylonjs/core/Engines/engine';
|
|
32
32
|
import { Scene } from '@babylonjs/core/scene';
|
|
33
33
|
import { DracoCompression } from '@babylonjs/core/Meshes/Compression/dracoCompression';
|
|
34
34
|
import { SceneLoader } from '@babylonjs/core/Loading/sceneLoader';
|
|
35
35
|
import { PBRMetallicRoughnessMaterial } from '@babylonjs/core/Materials/PBR/pbrMetallicRoughnessMaterial';
|
|
36
36
|
import { DirectionalLight } from '@babylonjs/core/Lights/directionalLight';
|
|
37
|
+
import { BoundingInfo } from '@babylonjs/core/Culling/boundingInfo';
|
|
37
38
|
import '@babylonjs/loaders/glTF/2.0/';
|
|
38
39
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
39
40
|
|
|
@@ -59,17 +60,18 @@ function GetCameraControls(camera) {
|
|
|
59
60
|
var initDistance = 0;
|
|
60
61
|
function renderLoop() {
|
|
61
62
|
if (!sceneStore.doRenderControlLoop || sceneStore.isInitializing || uistore.isStaticBg) return;
|
|
63
|
+
if (sceneStore.cameraTargetPosition.x == 0 && sceneStore.cameraTargetPosition.y == 0 && sceneStore.cameraTargetPosition.z == 0) sceneStore.setCameraTarget();
|
|
62
64
|
uistore.onMove();
|
|
63
65
|
var stopRender = true;
|
|
64
66
|
var delta = sceneStore.scene.getEngine().getDeltaTime();
|
|
65
67
|
var deltaCamPos = sceneStore.targetCameraPosition.subtract(camera.position).multiplyByFloats(delta / 100, delta / 100, delta / 100);
|
|
66
68
|
var deltaTarget = sceneStore.cameraTargetPosition.subtract(camera.target).multiplyByFloats(delta / 100, delta / 100, delta / 100);
|
|
67
|
-
if (Math.abs(deltaCamPos.x) + Math.abs(deltaCamPos.y) + Math.abs(deltaCamPos.z) > 0.
|
|
69
|
+
if (Math.abs(deltaCamPos.x) + Math.abs(deltaCamPos.y) + Math.abs(deltaCamPos.z) > 0.0001) {
|
|
68
70
|
camera.position = camera.position.addInPlaceFromFloats(deltaCamPos.x, deltaCamPos.y, deltaCamPos.z);
|
|
69
71
|
camera.setTarget(sceneStore.cameraTargetPosition);
|
|
70
72
|
stopRender = false;
|
|
71
73
|
}
|
|
72
|
-
if (Math.abs(deltaTarget.x) + Math.abs(deltaTarget.y) + Math.abs(deltaTarget.z) > 0.
|
|
74
|
+
if (Math.abs(deltaTarget.x) + Math.abs(deltaTarget.y) + Math.abs(deltaTarget.z) > 0.0001) {
|
|
73
75
|
camera.setTarget(camera.target.addInPlaceFromFloats(deltaTarget.x, deltaTarget.y, deltaTarget.z));
|
|
74
76
|
stopRender = false;
|
|
75
77
|
}
|
|
@@ -93,6 +95,7 @@ function GetCameraControls(camera) {
|
|
|
93
95
|
if (stopRender) sceneStore.doRenderControlLoop = false;
|
|
94
96
|
}
|
|
95
97
|
function moveTarget(deltaX, deltaY) {
|
|
98
|
+
sceneStore.isControlledViewpoint = false;
|
|
96
99
|
var localRight = Vector3.TransformNormal(Vector3.Right(), camera.getWorldMatrix());
|
|
97
100
|
var localUp = Vector3.TransformNormal(Vector3.Up(), camera.getWorldMatrix());
|
|
98
101
|
localRight = localRight.normalize();
|
|
@@ -125,7 +128,7 @@ function GetCameraControls(camera) {
|
|
|
125
128
|
var newPosition = sceneStore.targetCameraPosition.add(directionVector.scale(distance * previousDistToTarget));
|
|
126
129
|
var distToTarget = Vector3.Distance(sceneStore.cameraTargetPosition, newPosition);
|
|
127
130
|
if (distToTarget < 0.1) return;
|
|
128
|
-
if (distToTarget >
|
|
131
|
+
if (distToTarget > 75) return;
|
|
129
132
|
sceneStore.targetCameraPosition = newPosition;
|
|
130
133
|
}
|
|
131
134
|
function onRotate(deltaX, deltaY) {
|
|
@@ -338,9 +341,9 @@ function getGridControls(scene, element, selected, elements, selectMesh) {
|
|
|
338
341
|
};
|
|
339
342
|
}
|
|
340
343
|
|
|
341
|
-
function _createForOfIteratorHelper$
|
|
342
|
-
function _unsupportedIterableToArray$
|
|
343
|
-
function _arrayLikeToArray$
|
|
344
|
+
function _createForOfIteratorHelper$9(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$9(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
345
|
+
function _unsupportedIterableToArray$9(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$9(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$9(r, a) : void 0; } }
|
|
346
|
+
function _arrayLikeToArray$9(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
344
347
|
function Grids () {
|
|
345
348
|
var utilStore = useUtilStoreContext();
|
|
346
349
|
var sceneStore = useSceneStoreContext();
|
|
@@ -407,7 +410,7 @@ function Grids () {
|
|
|
407
410
|
var _Object$entries2$_i = _slicedToArray(_Object$entries2[_i2], 2),
|
|
408
411
|
gridName = _Object$entries2$_i[0];
|
|
409
412
|
_Object$entries2$_i[1];
|
|
410
|
-
var _iterator = _createForOfIteratorHelper$
|
|
413
|
+
var _iterator = _createForOfIteratorHelper$9(plannedPlaceOnGrid.grids[gridName].accessories),
|
|
411
414
|
_step;
|
|
412
415
|
try {
|
|
413
416
|
var _loop4 = function _loop4() {
|
|
@@ -911,9 +914,11 @@ function createCams(scene, activeViewpoint, viewPoints) {
|
|
|
911
914
|
})];
|
|
912
915
|
}
|
|
913
916
|
function updateCam(camera, scene) {
|
|
917
|
+
if (camera.pos.x == 0 && camera.pos.y == 0 && camera.pos.z == 0) return;
|
|
914
918
|
var utilStore = useUtilStoreContext();
|
|
915
919
|
var sceneStore = useSceneStoreContext();
|
|
916
920
|
var cam = scene.getCameraByName('defaultCam');
|
|
921
|
+
if (camera.pos.x == cam.position.x && camera.pos.y == cam.position.y && camera.pos.z == camera.pos.z) return;
|
|
917
922
|
var newPos = utilStore.vector3ToBVector3(camera.pos).multiply(new Vector3(-0.01, 0.01, 0.01));
|
|
918
923
|
cam.position = newPos;
|
|
919
924
|
cam.rotation = utilStore.degreesToRadians(utilStore.vector3ToBVector3(_objectSpread$1(_objectSpread$1({}, camera.rot), {}, {
|
|
@@ -922,9 +927,9 @@ function updateCam(camera, scene) {
|
|
|
922
927
|
sceneStore.targetCameraPosition = newPos;
|
|
923
928
|
}
|
|
924
929
|
|
|
925
|
-
function _createForOfIteratorHelper$
|
|
926
|
-
function _unsupportedIterableToArray$
|
|
927
|
-
function _arrayLikeToArray$
|
|
930
|
+
function _createForOfIteratorHelper$8(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$8(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
931
|
+
function _unsupportedIterableToArray$8(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$8(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$8(r, a) : void 0; } }
|
|
932
|
+
function _arrayLikeToArray$8(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
928
933
|
/*
|
|
929
934
|
SceneStore
|
|
930
935
|
Wraps the scene with additional data and methods
|
|
@@ -940,6 +945,7 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
940
945
|
_defineProperty(this, "_geos", []);
|
|
941
946
|
_defineProperty(this, "_sceneConstruct", {});
|
|
942
947
|
_defineProperty(this, "_hasRendered", false);
|
|
948
|
+
_defineProperty(this, "_hasPlanned", false);
|
|
943
949
|
_defineProperty(this, "_utilStore", void 0);
|
|
944
950
|
_defineProperty(this, "_cache", []);
|
|
945
951
|
_defineProperty(this, "_ssao", undefined);
|
|
@@ -956,6 +962,9 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
956
962
|
_defineProperty(this, "_cameraTargetPosition", Vector3.Zero());
|
|
957
963
|
_defineProperty(this, "_targetCameraPosition", Vector3.Zero());
|
|
958
964
|
_defineProperty(this, "_selectedElement", void 0);
|
|
965
|
+
_defineProperty(this, "_focusedElement", void 0);
|
|
966
|
+
_defineProperty(this, "_isControlledViewpoint", true);
|
|
967
|
+
// if the current viewpoint should automatically change with the planning
|
|
959
968
|
_defineProperty(this, "light", undefined);
|
|
960
969
|
_defineProperty(this, "changedElements", void 0);
|
|
961
970
|
scene.clearColor = new Color4(1, 1, 1, 1);
|
|
@@ -1042,6 +1051,37 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
1042
1051
|
set: function set(element) {
|
|
1043
1052
|
this._selectedElement = element;
|
|
1044
1053
|
}
|
|
1054
|
+
}, {
|
|
1055
|
+
key: "focusedElement",
|
|
1056
|
+
get: function get() {
|
|
1057
|
+
var _this$_focusedElement;
|
|
1058
|
+
if (!this._focusedElement) {
|
|
1059
|
+
var root = this.scene.getTransformNodeByName('Root');
|
|
1060
|
+
if (root) {
|
|
1061
|
+
var bbox = root.getHierarchyBoundingVectors();
|
|
1062
|
+
this._focusedElement = {
|
|
1063
|
+
id: this.getId(root),
|
|
1064
|
+
name: 'Root',
|
|
1065
|
+
position: root.absolutePosition,
|
|
1066
|
+
size: Vector3.Distance(bbox.min, bbox.max)
|
|
1067
|
+
};
|
|
1068
|
+
}
|
|
1069
|
+
}
|
|
1070
|
+
return (_this$_focusedElement = this._focusedElement) !== null && _this$_focusedElement !== void 0 ? _this$_focusedElement : {
|
|
1071
|
+
id: 'Root',
|
|
1072
|
+
name: 'Root',
|
|
1073
|
+
position: Vector3.Zero(),
|
|
1074
|
+
size: 0
|
|
1075
|
+
};
|
|
1076
|
+
}
|
|
1077
|
+
}, {
|
|
1078
|
+
key: "isControlledViewpoint",
|
|
1079
|
+
get: function get() {
|
|
1080
|
+
return !!this._isControlledViewpoint;
|
|
1081
|
+
},
|
|
1082
|
+
set: function set(value) {
|
|
1083
|
+
this._isControlledViewpoint = value;
|
|
1084
|
+
}
|
|
1045
1085
|
}, {
|
|
1046
1086
|
key: "controlRenderLoop",
|
|
1047
1087
|
get: function get() {
|
|
@@ -1070,12 +1110,12 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
1070
1110
|
var _this$_sceneConstruct2;
|
|
1071
1111
|
var elms = [];
|
|
1072
1112
|
if (!((_this$_sceneConstruct2 = this._sceneConstruct.root) !== null && _this$_sceneConstruct2 !== void 0 && _this$_sceneConstruct2.sets)) return [];
|
|
1073
|
-
var _iterator = _createForOfIteratorHelper$
|
|
1113
|
+
var _iterator = _createForOfIteratorHelper$8(this._sceneConstruct.root.sets),
|
|
1074
1114
|
_step;
|
|
1075
1115
|
try {
|
|
1076
1116
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
1077
1117
|
var set = _step.value;
|
|
1078
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
1118
|
+
var _iterator2 = _createForOfIteratorHelper$8(set.elements),
|
|
1079
1119
|
_step2;
|
|
1080
1120
|
try {
|
|
1081
1121
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -1130,12 +1170,12 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
1130
1170
|
value: function getElementByName(name) {
|
|
1131
1171
|
var _this$_sceneConstruct3, _this$_sceneConstruct4;
|
|
1132
1172
|
if (!((_this$_sceneConstruct3 = this._sceneConstruct.root) !== null && _this$_sceneConstruct3 !== void 0 && _this$_sceneConstruct3.sets)) return undefined;
|
|
1133
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
1173
|
+
var _iterator3 = _createForOfIteratorHelper$8((_this$_sceneConstruct4 = this._sceneConstruct.root) === null || _this$_sceneConstruct4 === void 0 ? void 0 : _this$_sceneConstruct4.sets),
|
|
1134
1174
|
_step3;
|
|
1135
1175
|
try {
|
|
1136
1176
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
1137
1177
|
var set = _step3.value;
|
|
1138
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
1178
|
+
var _iterator4 = _createForOfIteratorHelper$8(set.elements),
|
|
1139
1179
|
_step4;
|
|
1140
1180
|
try {
|
|
1141
1181
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -1160,12 +1200,12 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
1160
1200
|
value: function getElementNameById(id) {
|
|
1161
1201
|
var _this$_sceneConstruct5, _this$_sceneConstruct6;
|
|
1162
1202
|
if (!((_this$_sceneConstruct5 = this._sceneConstruct.root) !== null && _this$_sceneConstruct5 !== void 0 && _this$_sceneConstruct5.sets)) return undefined;
|
|
1163
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
1203
|
+
var _iterator5 = _createForOfIteratorHelper$8((_this$_sceneConstruct6 = this._sceneConstruct.root) === null || _this$_sceneConstruct6 === void 0 ? void 0 : _this$_sceneConstruct6.sets),
|
|
1164
1204
|
_step5;
|
|
1165
1205
|
try {
|
|
1166
1206
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
1167
1207
|
var set = _step5.value;
|
|
1168
|
-
var _iterator6 = _createForOfIteratorHelper$
|
|
1208
|
+
var _iterator6 = _createForOfIteratorHelper$8(set.elements),
|
|
1169
1209
|
_step6;
|
|
1170
1210
|
try {
|
|
1171
1211
|
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
@@ -1198,6 +1238,15 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
1198
1238
|
if (!value) throw new Error("can't unrender");
|
|
1199
1239
|
this._hasRendered = value;
|
|
1200
1240
|
}
|
|
1241
|
+
}, {
|
|
1242
|
+
key: "hasPlanned",
|
|
1243
|
+
get: function get() {
|
|
1244
|
+
return this._hasPlanned;
|
|
1245
|
+
},
|
|
1246
|
+
set: function set(value) {
|
|
1247
|
+
if (!value) throw new Error("can't set has planned to false");
|
|
1248
|
+
this._hasPlanned = value;
|
|
1249
|
+
}
|
|
1201
1250
|
}, {
|
|
1202
1251
|
key: "cams",
|
|
1203
1252
|
get: function get() {
|
|
@@ -1297,6 +1346,18 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
1297
1346
|
geos: []
|
|
1298
1347
|
});
|
|
1299
1348
|
}
|
|
1349
|
+
}, {
|
|
1350
|
+
key: "removeElement",
|
|
1351
|
+
value: function removeElement(hqs) {
|
|
1352
|
+
var _this$_sceneConstruct8;
|
|
1353
|
+
var set = (_this$_sceneConstruct8 = this._sceneConstruct.root) === null || _this$_sceneConstruct8 === void 0 ? void 0 : _this$_sceneConstruct8.sets[this._sceneConstruct.root.sets.length - 1];
|
|
1354
|
+
if (!set) {
|
|
1355
|
+
throw new Error("can't register sets before root");
|
|
1356
|
+
}
|
|
1357
|
+
set.elements = set.elements.filter(function (el) {
|
|
1358
|
+
return el.hqs.name != hqs.name;
|
|
1359
|
+
});
|
|
1360
|
+
}
|
|
1300
1361
|
}, {
|
|
1301
1362
|
key: "shouldExport",
|
|
1302
1363
|
value: function shouldExport(node) {
|
|
@@ -1376,8 +1437,49 @@ var SceneStore = /*#__PURE__*/function () {
|
|
|
1376
1437
|
var pos = new Vector3((bbox.max.x + bbox.min.x) / 2, (bbox.max.y + bbox.min.y) / 2, (bbox.max.z + bbox.min.z) / 2);
|
|
1377
1438
|
this.scene.getCameraByName('defaultCam').target = pos;
|
|
1378
1439
|
this.cameraTargetPosition = pos;
|
|
1440
|
+
this._isControlledViewpoint = true;
|
|
1379
1441
|
// this.doRenderControlLoop = true;
|
|
1380
1442
|
}
|
|
1443
|
+
}, {
|
|
1444
|
+
key: "getId",
|
|
1445
|
+
value: function getId(ob) {
|
|
1446
|
+
var id = ob.name;
|
|
1447
|
+
while (ob.parent) {
|
|
1448
|
+
id += '.' + ob.name;
|
|
1449
|
+
ob = ob.parent;
|
|
1450
|
+
}
|
|
1451
|
+
return id;
|
|
1452
|
+
}
|
|
1453
|
+
}, {
|
|
1454
|
+
key: "focusElement",
|
|
1455
|
+
value: function focusElement(root) {
|
|
1456
|
+
if (!root) root = this.scene.transformNodes.find(function (transformNode) {
|
|
1457
|
+
return transformNode.name == 'Root';
|
|
1458
|
+
});
|
|
1459
|
+
if (!root) return;
|
|
1460
|
+
var engine = this.scene.getEngine();
|
|
1461
|
+
var cam = this.scene.activeCamera;
|
|
1462
|
+
var bbox = root.getHierarchyBoundingVectors();
|
|
1463
|
+
var center = Vector3.Center(bbox.min, bbox.max);
|
|
1464
|
+
var radius = Vector3.Distance(bbox.min, bbox.max) / 2;
|
|
1465
|
+
if (radius == Infinity) return;
|
|
1466
|
+
var aspectRatio = engine.getRenderWidth() / engine.getRenderHeight();
|
|
1467
|
+
var distance = radius / Math.tan(cam.fov * 0.8);
|
|
1468
|
+
var direction = cam.getDirection(Vector3.Backward());
|
|
1469
|
+
if (aspectRatio > 1) distance *= aspectRatio;
|
|
1470
|
+
var newPosition = center.add(direction.scale(distance));
|
|
1471
|
+
if (newPosition.x == 0 && newPosition.y == 0 && newPosition.z == 0) return;
|
|
1472
|
+
this.cameraTargetPosition = center;
|
|
1473
|
+
this.targetCameraPosition = newPosition;
|
|
1474
|
+
this.doRenderControlLoop = true;
|
|
1475
|
+
this._isControlledViewpoint = true;
|
|
1476
|
+
this._focusedElement = {
|
|
1477
|
+
id: this.getId(root),
|
|
1478
|
+
name: root.id,
|
|
1479
|
+
position: root.absolutePosition,
|
|
1480
|
+
size: Vector3.Distance(bbox.min, bbox.max)
|
|
1481
|
+
};
|
|
1482
|
+
}
|
|
1381
1483
|
}, {
|
|
1382
1484
|
key: "getMaxCamPosition",
|
|
1383
1485
|
value: function getMaxCamPosition() {
|
|
@@ -1395,69 +1497,81 @@ var delButton = "data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%
|
|
|
1395
1497
|
|
|
1396
1498
|
var gdelButton = "data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2221%22%20viewBox%3D%220%200%2016%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M15.2784%203.0226H10.9717V2.08029C10.9717%201.35784%2010.4151%200.72963%209.71198%200.72963H6.78229C6.10846%200.72963%205.52252%201.32643%205.52252%202.08029V3.0226H1.21588C0.981506%203.0226%200.776428%203.24248%200.776428%203.49376C0.776428%203.74505%200.981506%203.96492%201.21588%203.96492H2.18268V17.7542C2.18268%2019.0734%203.17877%2020.11%204.37994%2020.11H12.1436C13.3741%2020.11%2014.3409%2019.042%2014.3409%2017.7542V3.93351H15.3077C15.5714%203.93351%2015.7764%203.71364%2015.7764%203.46235C15.7764%203.17966%2015.5421%203.0226%2015.2784%203.0226ZM6.43073%202.08029C6.43073%201.829%206.6358%201.67195%206.78229%201.67195H9.71198C9.94635%201.67195%2010.0928%201.86041%2010.0928%202.08029V3.0226H6.43073V2.08029ZM13.462%2017.7228C13.462%2018.508%2012.876%2019.1363%2012.1436%2019.1363H4.37994C3.64752%2019.1363%203.06158%2018.508%203.06158%2017.7228V3.96492H13.462V17.7228Z%22%20fill%3D%22%234A4A4A%22%2F%3E%3Cpath%20d%3D%22M8.68658%206.82326V16.2464C8.68658%2016.5291%208.5108%2016.749%208.24713%2016.749C7.98346%2016.749%207.80768%2016.5291%207.80768%2016.2464V6.82326C7.80768%206.54056%208.04205%206.3521%208.24713%206.3521C8.48151%206.3521%208.68658%206.57197%208.68658%206.82326Z%22%20fill%3D%22%234A4A4A%22%2F%3E%3Cpath%20d%3D%22M11.6456%206.82326V16.2464C11.6456%2016.5291%2011.4405%2016.749%2011.2061%2016.749C10.9717%2016.749%2010.7667%2016.5291%2010.7667%2016.2464V6.82326C10.7667%206.54056%2010.9717%206.3521%2011.2061%206.3521C11.4405%206.3521%2011.6456%206.57197%2011.6456%206.82326Z%22%20fill%3D%22%234A4A4A%22%2F%3E%3Cpath%20d%3D%22M5.78619%206.82326V16.2464C5.78619%2016.5291%205.58112%2016.749%205.34674%2016.749C5.11237%2016.749%204.87799%2016.5291%204.87799%2016.2464V6.82326C4.87799%206.54056%205.08307%206.3521%205.31744%206.3521C5.55182%206.3521%205.78619%206.57197%205.78619%206.82326Z%22%20fill%3D%22%234A4A4A%22%2F%3E%3C%2Fsvg%3E";
|
|
1397
1499
|
|
|
1398
|
-
function _createForOfIteratorHelper$
|
|
1399
|
-
function _unsupportedIterableToArray$
|
|
1400
|
-
function _arrayLikeToArray$
|
|
1500
|
+
function _createForOfIteratorHelper$7(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$7(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
1501
|
+
function _unsupportedIterableToArray$7(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$7(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$7(r, a) : void 0; } }
|
|
1502
|
+
function _arrayLikeToArray$7(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
1401
1503
|
function SelHandler (_ref) {
|
|
1402
1504
|
var onElSelected = _ref.onElSelected;
|
|
1403
|
-
|
|
1505
|
+
useUtilStoreContext();
|
|
1404
1506
|
var gridStore = useGridStoreContext();
|
|
1405
1507
|
var sceneStore = useSceneStoreContext();
|
|
1406
1508
|
var uiStore = useUIStoreContext();
|
|
1509
|
+
var timeoutId;
|
|
1407
1510
|
var onSelection = function onSelection(evt) {
|
|
1408
|
-
if (evt.event.button == 2) return;
|
|
1511
|
+
if (evt.event.button == 2 || !(evt.type == 16 || evt.type == 64)) return;
|
|
1409
1512
|
var ray = sceneStore.scene.createPickingRay(sceneStore.scene.pointerX, sceneStore.scene.pointerY, Matrix.Identity(), sceneStore.scene.activeCamera);
|
|
1410
1513
|
var hit = sceneStore.scene.pickWithRay(ray);
|
|
1411
1514
|
var pickedElement = false;
|
|
1412
1515
|
var element = hit === null || hit === void 0 ? void 0 : hit.pickedMesh;
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
if (
|
|
1419
|
-
|
|
1420
|
-
|
|
1516
|
+
clearTimeout(timeoutId);
|
|
1517
|
+
timeoutId = setTimeout(function () {
|
|
1518
|
+
while (element) {
|
|
1519
|
+
var _element, _element2;
|
|
1520
|
+
element = (_element = element) === null || _element === void 0 ? void 0 : _element.parent;
|
|
1521
|
+
if ((_element2 = element) !== null && _element2 !== void 0 && _element2.name.toLowerCase().startsWith('element')) {
|
|
1522
|
+
pickedElement = true;
|
|
1523
|
+
if (evt.type == 64 && hit !== null && hit !== void 0 && hit.pickedPoint) {
|
|
1524
|
+
onElementSelected(element, hit, true);
|
|
1525
|
+
return;
|
|
1526
|
+
} else if (evt.type == 16 && hit !== null && hit !== void 0 && hit.pickedPoint) {
|
|
1527
|
+
onElementSelected(element, hit);
|
|
1528
|
+
return;
|
|
1529
|
+
}
|
|
1421
1530
|
}
|
|
1422
1531
|
}
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1532
|
+
if (!pickedElement && hit !== null && hit !== void 0 && hit.pickedPoint) {
|
|
1533
|
+
var _hit$pickedMesh;
|
|
1534
|
+
if (sceneStore.elements) {
|
|
1535
|
+
var _iterator = _createForOfIteratorHelper$7(sceneStore.elements),
|
|
1536
|
+
_step;
|
|
1537
|
+
try {
|
|
1538
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
1539
|
+
var _element3 = _step.value;
|
|
1540
|
+
var _element3$bbn$getHier = _element3.bbn.getHierarchyBoundingVectors(),
|
|
1541
|
+
min = _element3$bbn$getHier.min,
|
|
1542
|
+
max = _element3$bbn$getHier.max;
|
|
1543
|
+
var point = hit.pickedPoint;
|
|
1544
|
+
if (min.x < point.x && min.z < point.y && max.x > point.x && max.z > point.z && evt.type == 16) {
|
|
1545
|
+
pickedElement = true;
|
|
1546
|
+
onElementSelected(_element3.bbn, hit);
|
|
1547
|
+
}
|
|
1439
1548
|
}
|
|
1549
|
+
} catch (err) {
|
|
1550
|
+
_iterator.e(err);
|
|
1551
|
+
} finally {
|
|
1552
|
+
_iterator.f();
|
|
1440
1553
|
}
|
|
1441
|
-
} catch (err) {
|
|
1442
|
-
_iterator.e(err);
|
|
1443
|
-
} finally {
|
|
1444
|
-
_iterator.f();
|
|
1445
1554
|
}
|
|
1555
|
+
if (!pickedElement && (hit === null || hit === void 0 || (_hit$pickedMesh = hit.pickedMesh) === null || _hit$pickedMesh === void 0 ? void 0 : _hit$pickedMesh.name) == 'ground' && sceneStore.sets && evt.type == 16) onSetSelected(sceneStore.sets[0].bbn);
|
|
1446
1556
|
}
|
|
1447
|
-
|
|
1448
|
-
}
|
|
1557
|
+
}, 200);
|
|
1449
1558
|
};
|
|
1450
1559
|
var onSetSelected = function onSetSelected(elem) {
|
|
1451
1560
|
gridStore.deselectGrids();
|
|
1452
|
-
sceneStore.
|
|
1453
|
-
sceneStore.doRenderControlLoop = true;
|
|
1561
|
+
sceneStore.focusElement(elem);
|
|
1454
1562
|
};
|
|
1455
|
-
var onElementSelected = function onElementSelected(elem,
|
|
1563
|
+
var onElementSelected = function onElementSelected(elem, hit, doubleClick) {
|
|
1456
1564
|
var elemName = elem.name.slice(-1);
|
|
1457
|
-
if (sceneStore.selectedElement == elemName) {
|
|
1458
|
-
|
|
1459
|
-
|
|
1565
|
+
if (doubleClick && sceneStore.selectedElement == elemName && hit.pickedMesh) {
|
|
1566
|
+
var _getParent = function getParent(mesh) {
|
|
1567
|
+
var _mesh$parent;
|
|
1568
|
+
if (((_mesh$parent = mesh.parent) === null || _mesh$parent === void 0 ? void 0 : _mesh$parent.getClassName()) == 'TransformNode') return mesh.parent;
|
|
1569
|
+
return _getParent(mesh.parent);
|
|
1570
|
+
};
|
|
1571
|
+
sceneStore.focusElement(_getParent(hit.pickedMesh));
|
|
1460
1572
|
return;
|
|
1573
|
+
} else if (doubleClick || sceneStore.selectedElement == elemName) {
|
|
1574
|
+
sceneStore.focusElement(elem);
|
|
1461
1575
|
}
|
|
1462
1576
|
sceneStore.selectedElement = elemName;
|
|
1463
1577
|
uiStore.selectElem(elemName);
|
|
@@ -1468,9 +1582,9 @@ function SelHandler (_ref) {
|
|
|
1468
1582
|
};
|
|
1469
1583
|
}
|
|
1470
1584
|
|
|
1471
|
-
function _createForOfIteratorHelper$
|
|
1472
|
-
function _unsupportedIterableToArray$
|
|
1473
|
-
function _arrayLikeToArray$
|
|
1585
|
+
function _createForOfIteratorHelper$6(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$6(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
1586
|
+
function _unsupportedIterableToArray$6(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$6(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$6(r, a) : void 0; } }
|
|
1587
|
+
function _arrayLikeToArray$6(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
1474
1588
|
/*
|
|
1475
1589
|
UIStore
|
|
1476
1590
|
*/
|
|
@@ -1626,13 +1740,12 @@ var UIStore = /*#__PURE__*/function () {
|
|
|
1626
1740
|
var element = _this4._scene.getTransformNodeByName(emnt.bbn.name);
|
|
1627
1741
|
if (!element) return 0; // continue
|
|
1628
1742
|
var guiElemLeftBack = new TransformNode('guiElem_' + elementInfo.elementId, _this4._scene);
|
|
1629
|
-
var
|
|
1630
|
-
|
|
1631
|
-
guiElemLeftBack.position = new Vector3(element.absolutePosition.x, max.y, element.absolutePosition.z);
|
|
1743
|
+
var bbox = element.getHierarchyBoundingVectors();
|
|
1744
|
+
guiElemLeftBack.position = new Vector3(bbox.max.x, bbox.max.y, bbox.min.z);
|
|
1632
1745
|
guiElemRightBack = undefined;
|
|
1633
1746
|
if (_this4._uiConfig.posTrashIcon == 'TOP_RIGHT_BACK') {
|
|
1634
1747
|
guiElemRightBack = new TransformNode('guiElem_' + elementInfo.elementId, _this4._scene);
|
|
1635
|
-
var pos = new Vector3(min.x, max.y, min.z);
|
|
1748
|
+
var pos = new Vector3(bbox.min.x, bbox.max.y, bbox.min.z);
|
|
1636
1749
|
guiElemRightBack.position = pos;
|
|
1637
1750
|
}
|
|
1638
1751
|
_this4.createGUIButton(guiElemLeftBack, elementInfo.posNr, elementInfo.active, elementInfo.selectable, element.parent.name, elementInfo.elementId, guiElemRightBack);
|
|
@@ -1648,7 +1761,7 @@ var UIStore = /*#__PURE__*/function () {
|
|
|
1648
1761
|
key: "selectElem",
|
|
1649
1762
|
value: function selectElem(name) {
|
|
1650
1763
|
var _this5 = this;
|
|
1651
|
-
var _iterator = _createForOfIteratorHelper$
|
|
1764
|
+
var _iterator = _createForOfIteratorHelper$6(this._gui.getControlsByType('ellipse')),
|
|
1652
1765
|
_step;
|
|
1653
1766
|
try {
|
|
1654
1767
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -1712,8 +1825,7 @@ var UIStore = /*#__PURE__*/function () {
|
|
|
1712
1825
|
dbt.width = this._uiConfig.templateConfig == 'standard' ? '40px' : '60%';
|
|
1713
1826
|
dbt.height = this._uiConfig.templateConfig == 'standard' ? '40px' : '70%';
|
|
1714
1827
|
dbt.onPointerClickObservable.add(function () {
|
|
1715
|
-
|
|
1716
|
-
return (_this6$_utilStore$vie = _this6._utilStore.viewHandler) === null || _this6$_utilStore$vie === void 0 ? void 0 : _this6$_utilStore$vie.viewPlannerHandler.onElementDeleted(setId, elementId);
|
|
1828
|
+
return _this6._utilStore.onElementDeleted(setId, elementId);
|
|
1717
1829
|
});
|
|
1718
1830
|
if (this._uiConfig.templateConfig == 'standard') dtarget.linkOffsetY = -48;
|
|
1719
1831
|
dtarget.addControl(dbt);
|
|
@@ -1834,6 +1946,14 @@ var UtilStore = /*#__PURE__*/function () {
|
|
|
1834
1946
|
if (isNotOutStandingImage) this._outstandingImageCount--;
|
|
1835
1947
|
return !isNotOutStandingImage && this._updateCam;
|
|
1836
1948
|
}
|
|
1949
|
+
}, {
|
|
1950
|
+
key: "onElementDeleted",
|
|
1951
|
+
value: function onElementDeleted(setId, elementId) {
|
|
1952
|
+
var _this$viewHandler;
|
|
1953
|
+
this.addOutstandingImage();
|
|
1954
|
+
(_this$viewHandler = this.viewHandler) === null || _this$viewHandler === void 0 || _this$viewHandler.viewPlannerHandler.onElementDeleted(setId, elementId);
|
|
1955
|
+
this._updateCam = true;
|
|
1956
|
+
}
|
|
1837
1957
|
}, {
|
|
1838
1958
|
key: "addOutstandingImage",
|
|
1839
1959
|
value: function addOutstandingImage() {
|
|
@@ -1988,9 +2108,9 @@ var useUtilStoreContext = function useUtilStoreContext() {
|
|
|
1988
2108
|
return (_context5 = _context) === null || _context5 === void 0 ? void 0 : _context5.utilStore;
|
|
1989
2109
|
};
|
|
1990
2110
|
|
|
1991
|
-
function _createForOfIteratorHelper$
|
|
1992
|
-
function _unsupportedIterableToArray$
|
|
1993
|
-
function _arrayLikeToArray$
|
|
2111
|
+
function _createForOfIteratorHelper$5(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$5(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
2112
|
+
function _unsupportedIterableToArray$5(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$5(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$5(r, a) : void 0; } }
|
|
2113
|
+
function _arrayLikeToArray$5(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
1994
2114
|
function caching () {
|
|
1995
2115
|
var _useSceneStoreContext = useSceneStoreContext(),
|
|
1996
2116
|
cache = _useSceneStoreContext.cache,
|
|
@@ -2005,7 +2125,7 @@ function caching () {
|
|
|
2005
2125
|
var updatedElements = (_curElementRoot$nodes = curElementRoot === null || curElementRoot === void 0 || (_curElementRoot$nodes2 = curElementRoot.nodes) === null || _curElementRoot$nodes2 === void 0 ? void 0 : _curElementRoot$nodes2.filter(function (curElement) {
|
|
2006
2126
|
if ((prevElementRoot === null || prevElementRoot === void 0 ? void 0 : prevElementRoot.nodes) === undefined) return true;
|
|
2007
2127
|
var didChange = true;
|
|
2008
|
-
var _iterator = _createForOfIteratorHelper$
|
|
2128
|
+
var _iterator = _createForOfIteratorHelper$5(prevElementRoot.nodes),
|
|
2009
2129
|
_step;
|
|
2010
2130
|
try {
|
|
2011
2131
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -2030,7 +2150,7 @@ function caching () {
|
|
|
2030
2150
|
var prevGeo = (_assets$geos = previousHQRenderScript.assets.geos) === null || _assets$geos === void 0 ? void 0 : _assets$geos[idx];
|
|
2031
2151
|
if (prevGeo && !(geo.id + geo.name === prevGeo.id + prevGeo.name) && cache !== null && cache !== void 0 && (_cache$idx = cache[idx]) !== null && _cache$idx !== void 0 && (_cache$idx = _cache$idx.geo) !== null && _cache$idx !== void 0 && _cache$idx.onElements) {
|
|
2032
2152
|
var _cache$idx$geo;
|
|
2033
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
2153
|
+
var _iterator2 = _createForOfIteratorHelper$5((_cache$idx$geo = cache[idx].geo) === null || _cache$idx$geo === void 0 ? void 0 : _cache$idx$geo.onElements),
|
|
2034
2154
|
_step2;
|
|
2035
2155
|
try {
|
|
2036
2156
|
var _loop = function _loop() {
|
|
@@ -2060,7 +2180,7 @@ function caching () {
|
|
|
2060
2180
|
var prevMat = (_assets$mats = previousHQRenderScript.assets.mats) === null || _assets$mats === void 0 ? void 0 : _assets$mats[idx];
|
|
2061
2181
|
if (prevMat && !(mat.id + mat.name === prevMat.id + prevMat.name) && cache !== null && cache !== void 0 && (_cache$idx2 = cache[idx]) !== null && _cache$idx2 !== void 0 && (_cache$idx2 = _cache$idx2.material) !== null && _cache$idx2 !== void 0 && _cache$idx2.onElements) {
|
|
2062
2182
|
var _cache$idx$material;
|
|
2063
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
2183
|
+
var _iterator3 = _createForOfIteratorHelper$5((_cache$idx$material = cache[idx].material) === null || _cache$idx$material === void 0 ? void 0 : _cache$idx$material.onElements),
|
|
2064
2184
|
_step3;
|
|
2065
2185
|
try {
|
|
2066
2186
|
var _loop2 = function _loop2() {
|
|
@@ -2091,7 +2211,7 @@ function caching () {
|
|
|
2091
2211
|
deletedElements: prevElementRoot === null || prevElementRoot === void 0 || (_prevElementRoot$node = prevElementRoot.nodes) === null || _prevElementRoot$node === void 0 ? void 0 : _prevElementRoot$node.filter(function (prevElement) {
|
|
2092
2212
|
if ((curElementRoot === null || curElementRoot === void 0 ? void 0 : curElementRoot.nodes) === undefined) return true;
|
|
2093
2213
|
var wasDeleted = true;
|
|
2094
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
2214
|
+
var _iterator4 = _createForOfIteratorHelper$5(curElementRoot.nodes),
|
|
2095
2215
|
_step4;
|
|
2096
2216
|
try {
|
|
2097
2217
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -2208,9 +2328,9 @@ var customMat = /*#__PURE__*/function () {
|
|
|
2208
2328
|
};
|
|
2209
2329
|
}();
|
|
2210
2330
|
|
|
2211
|
-
function _createForOfIteratorHelper$
|
|
2212
|
-
function _unsupportedIterableToArray$
|
|
2213
|
-
function _arrayLikeToArray$
|
|
2331
|
+
function _createForOfIteratorHelper$4(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$4(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
2332
|
+
function _unsupportedIterableToArray$4(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$4(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$4(r, a) : void 0; } }
|
|
2333
|
+
function _arrayLikeToArray$4(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
2214
2334
|
getLogger('RealTimeViewer', 'FindAsset');
|
|
2215
2335
|
function findAssets(_x, _x2) {
|
|
2216
2336
|
return _findAssets.apply(this, arguments);
|
|
@@ -2324,7 +2444,7 @@ function _findAssets() {
|
|
|
2324
2444
|
});
|
|
2325
2445
|
geo.material = mat.mat;
|
|
2326
2446
|
oldMat = sceneStore.scene.getMaterialByUniqueID(oldMatId);
|
|
2327
|
-
_iterator3 = _createForOfIteratorHelper$
|
|
2447
|
+
_iterator3 = _createForOfIteratorHelper$4(oldMat.getBindedMeshes());
|
|
2328
2448
|
try {
|
|
2329
2449
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
2330
2450
|
mesh = _step3.value;
|
|
@@ -2339,7 +2459,7 @@ function _findAssets() {
|
|
|
2339
2459
|
_context.next = 37;
|
|
2340
2460
|
break;
|
|
2341
2461
|
case 20:
|
|
2342
|
-
_iterator4 = _createForOfIteratorHelper$
|
|
2462
|
+
_iterator4 = _createForOfIteratorHelper$4(geo.getChildMeshes());
|
|
2343
2463
|
_context.prev = 21;
|
|
2344
2464
|
_iterator4.s();
|
|
2345
2465
|
case 23:
|
|
@@ -2384,7 +2504,7 @@ function _findAssets() {
|
|
|
2384
2504
|
//TODO: tiling with Node Materials, multiple Textures
|
|
2385
2505
|
|
|
2386
2506
|
//! clean std. materials from importing (.00x)
|
|
2387
|
-
_iterator = _createForOfIteratorHelper$
|
|
2507
|
+
_iterator = _createForOfIteratorHelper$4(assets.geos);
|
|
2388
2508
|
_context5.prev = 11;
|
|
2389
2509
|
_loop = /*#__PURE__*/_regeneratorRuntime.mark(function _loop() {
|
|
2390
2510
|
var geo, path, mesh, cachedGeo;
|
|
@@ -2466,7 +2586,7 @@ function _findAssets() {
|
|
|
2466
2586
|
return _context5.finish(26);
|
|
2467
2587
|
case 29:
|
|
2468
2588
|
// Und alle materialien erstellt
|
|
2469
|
-
_iterator2 = _createForOfIteratorHelper$
|
|
2589
|
+
_iterator2 = _createForOfIteratorHelper$4(assets.mats);
|
|
2470
2590
|
_context5.prev = 30;
|
|
2471
2591
|
_loop2 = /*#__PURE__*/_regeneratorRuntime.mark(function _loop2() {
|
|
2472
2592
|
var mat, _nwCache$material;
|
|
@@ -2584,7 +2704,7 @@ function _createOrGetMaterial() {
|
|
|
2584
2704
|
_context6.next = 18;
|
|
2585
2705
|
break;
|
|
2586
2706
|
}
|
|
2587
|
-
_iterator5 = _createForOfIteratorHelper$
|
|
2707
|
+
_iterator5 = _createForOfIteratorHelper$4(scene.materials);
|
|
2588
2708
|
_context6.prev = 2;
|
|
2589
2709
|
_iterator5.s();
|
|
2590
2710
|
case 4:
|
|
@@ -2641,9 +2761,9 @@ function _createOrGetMaterial() {
|
|
|
2641
2761
|
return _createOrGetMaterial.apply(this, arguments);
|
|
2642
2762
|
}
|
|
2643
2763
|
|
|
2644
|
-
function _createForOfIteratorHelper$
|
|
2645
|
-
function _unsupportedIterableToArray$
|
|
2646
|
-
function _arrayLikeToArray$
|
|
2764
|
+
function _createForOfIteratorHelper$3(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$3(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
2765
|
+
function _unsupportedIterableToArray$3(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$3(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$3(r, a) : void 0; } }
|
|
2766
|
+
function _arrayLikeToArray$3(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
2647
2767
|
var buildScene = function buildScene(_ref) {
|
|
2648
2768
|
var _sceneStore$elements;
|
|
2649
2769
|
var startNode = _ref.startNode,
|
|
@@ -2682,7 +2802,7 @@ var buildScene = function buildScene(_ref) {
|
|
|
2682
2802
|
|
|
2683
2803
|
//! getNodes / getGeos
|
|
2684
2804
|
if (curGeo.nodes !== undefined) {
|
|
2685
|
-
var _iterator = _createForOfIteratorHelper$
|
|
2805
|
+
var _iterator = _createForOfIteratorHelper$3(curGeo.nodes),
|
|
2686
2806
|
_step;
|
|
2687
2807
|
try {
|
|
2688
2808
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -2697,7 +2817,7 @@ var buildScene = function buildScene(_ref) {
|
|
|
2697
2817
|
}
|
|
2698
2818
|
//! each geo
|
|
2699
2819
|
if (curGeo.geos !== undefined) {
|
|
2700
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
2820
|
+
var _iterator2 = _createForOfIteratorHelper$3(curGeo.geos),
|
|
2701
2821
|
_step2;
|
|
2702
2822
|
try {
|
|
2703
2823
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -2740,6 +2860,7 @@ var buildScene = function buildScene(_ref) {
|
|
|
2740
2860
|
}
|
|
2741
2861
|
if ((parentNode === null || parentNode === void 0 ? void 0 : parentNode.name) == 'Wohnzimmer') sceneStore.addSet(node, hqsNode);
|
|
2742
2862
|
if (node !== null && node !== void 0 && node.name.startsWith('Element')) {
|
|
2863
|
+
sceneStore.hasPlanned = true;
|
|
2743
2864
|
sceneStore.addElement(node, hqsNode);
|
|
2744
2865
|
curElement = hqsNode;
|
|
2745
2866
|
}
|
|
@@ -2751,7 +2872,7 @@ var buildScene = function buildScene(_ref) {
|
|
|
2751
2872
|
|
|
2752
2873
|
//! each node
|
|
2753
2874
|
if (hqsNode.nodes !== undefined) {
|
|
2754
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
2875
|
+
var _iterator3 = _createForOfIteratorHelper$3(hqsNode.nodes),
|
|
2755
2876
|
_step3;
|
|
2756
2877
|
try {
|
|
2757
2878
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -2766,7 +2887,7 @@ var buildScene = function buildScene(_ref) {
|
|
|
2766
2887
|
}
|
|
2767
2888
|
//! each material
|
|
2768
2889
|
if (hqsNode.mats !== undefined) {
|
|
2769
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
2890
|
+
var _iterator4 = _createForOfIteratorHelper$3(hqsNode.mats),
|
|
2770
2891
|
_step4;
|
|
2771
2892
|
try {
|
|
2772
2893
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -2781,7 +2902,7 @@ var buildScene = function buildScene(_ref) {
|
|
|
2781
2902
|
}
|
|
2782
2903
|
//! each geo
|
|
2783
2904
|
if (hqsNode.geos !== undefined) {
|
|
2784
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
2905
|
+
var _iterator5 = _createForOfIteratorHelper$3(hqsNode.geos),
|
|
2785
2906
|
_step5;
|
|
2786
2907
|
try {
|
|
2787
2908
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -2796,18 +2917,17 @@ var buildScene = function buildScene(_ref) {
|
|
|
2796
2917
|
}
|
|
2797
2918
|
}
|
|
2798
2919
|
recursiveIteration(startNode, parentNode);
|
|
2799
|
-
sceneStore.setCameraTarget();
|
|
2800
2920
|
sceneStore.cache = cachedAssets;
|
|
2801
2921
|
};
|
|
2802
2922
|
|
|
2803
|
-
function _createForOfIteratorHelper$
|
|
2804
|
-
function _unsupportedIterableToArray$
|
|
2805
|
-
function _arrayLikeToArray$
|
|
2923
|
+
function _createForOfIteratorHelper$2(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$2(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
2924
|
+
function _unsupportedIterableToArray$2(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$2(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$2(r, a) : void 0; } }
|
|
2925
|
+
function _arrayLikeToArray$2(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
2806
2926
|
function findMaterials(cache) {
|
|
2807
2927
|
//! parent = the parent from which on every child should receive the Material
|
|
2808
2928
|
//! id = the id which points to the material that should be assigned
|
|
2809
2929
|
var setMaterials = function setMaterials(onNode, mat) {
|
|
2810
|
-
var _iterator = _createForOfIteratorHelper$
|
|
2930
|
+
var _iterator = _createForOfIteratorHelper$2(onNode.getChildMeshes()),
|
|
2811
2931
|
_step;
|
|
2812
2932
|
try {
|
|
2813
2933
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -2825,12 +2945,12 @@ function findMaterials(cache) {
|
|
|
2825
2945
|
var findOnNode = function findOnNode(mat, parent) {
|
|
2826
2946
|
if (!mat.onNodes) return;
|
|
2827
2947
|
var children = parent.getChildTransformNodes(false);
|
|
2828
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
2948
|
+
var _iterator2 = _createForOfIteratorHelper$2(children),
|
|
2829
2949
|
_step2;
|
|
2830
2950
|
try {
|
|
2831
2951
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
2832
2952
|
var child = _step2.value;
|
|
2833
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
2953
|
+
var _iterator3 = _createForOfIteratorHelper$2(mat.onNodes),
|
|
2834
2954
|
_step3;
|
|
2835
2955
|
try {
|
|
2836
2956
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -2851,13 +2971,13 @@ function findMaterials(cache) {
|
|
|
2851
2971
|
_iterator2.f();
|
|
2852
2972
|
}
|
|
2853
2973
|
};
|
|
2854
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
2974
|
+
var _iterator4 = _createForOfIteratorHelper$2(cache),
|
|
2855
2975
|
_step4;
|
|
2856
2976
|
try {
|
|
2857
2977
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
2858
2978
|
var element = _step4.value;
|
|
2859
2979
|
if (!element.material || !element.material.parents) continue;
|
|
2860
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
2980
|
+
var _iterator5 = _createForOfIteratorHelper$2(element.material.parents),
|
|
2861
2981
|
_step5;
|
|
2862
2982
|
try {
|
|
2863
2983
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -2878,11 +2998,11 @@ function findMaterials(cache) {
|
|
|
2878
2998
|
return findMaterials;
|
|
2879
2999
|
}
|
|
2880
3000
|
|
|
2881
|
-
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
2882
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
2883
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
3001
|
+
function _createForOfIteratorHelper$1(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
3002
|
+
function _unsupportedIterableToArray$1(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1(r, a) : void 0; } }
|
|
3003
|
+
function _arrayLikeToArray$1(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
2884
3004
|
function deacCache(cache) {
|
|
2885
|
-
var _iterator = _createForOfIteratorHelper(cache.getChildTransformNodes(true)),
|
|
3005
|
+
var _iterator = _createForOfIteratorHelper$1(cache.getChildTransformNodes(true)),
|
|
2886
3006
|
_step;
|
|
2887
3007
|
try {
|
|
2888
3008
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -2941,23 +3061,29 @@ function shadow() {
|
|
|
2941
3061
|
}
|
|
2942
3062
|
}
|
|
2943
3063
|
|
|
3064
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
3065
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
3066
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
3067
|
+
|
|
2944
3068
|
//! sets element set
|
|
2945
3069
|
var parser = /*#__PURE__*/function () {
|
|
2946
3070
|
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
2947
3071
|
var _changedElements$upda;
|
|
2948
|
-
var sceneStore, hasRendered, hqRenderScript, scene, cache, changedElements, utilStore, _yield$findAssets, cacheGroup, newCache, _changedElements$upda2;
|
|
3072
|
+
var sceneStore, hasRendered, hqRenderScript, scene, cache, changedElements, utilStore, wasPlanned, elementCount, _yield$findAssets, cacheGroup, newCache, _changedElements$upda2, focusedElement, focusedNode, _iterator, _step, node, bbox, boundingInfo, frustumPlanes, isInFrustum, sizeDiff;
|
|
2949
3073
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
2950
3074
|
while (1) switch (_context.prev = _context.next) {
|
|
2951
3075
|
case 0:
|
|
2952
3076
|
sceneStore = useSceneStoreContext();
|
|
2953
3077
|
hasRendered = sceneStore.hasRendered, hqRenderScript = sceneStore.hqRenderScript, scene = sceneStore.scene, cache = sceneStore.cache, changedElements = sceneStore.changedElements;
|
|
2954
|
-
utilStore = useUtilStoreContext();
|
|
3078
|
+
utilStore = useUtilStoreContext();
|
|
3079
|
+
wasPlanned = sceneStore.hasPlanned;
|
|
3080
|
+
elementCount = sceneStore.elements.length; //disable elementrows from old cache
|
|
2955
3081
|
changedElements === null || changedElements === void 0 || (_changedElements$upda = changedElements.updatedElements) === null || _changedElements$upda === void 0 || _changedElements$upda.forEach(function (el) {
|
|
2956
3082
|
return utilStore.disableElementRows(el.name, cache);
|
|
2957
3083
|
});
|
|
2958
|
-
_context.next =
|
|
3084
|
+
_context.next = 8;
|
|
2959
3085
|
return findAssets(hqRenderScript.assets, cache);
|
|
2960
|
-
case
|
|
3086
|
+
case 8:
|
|
2961
3087
|
_yield$findAssets = _context.sent;
|
|
2962
3088
|
cacheGroup = _yield$findAssets.cacheGroup;
|
|
2963
3089
|
newCache = _yield$findAssets.newCache;
|
|
@@ -2965,6 +3091,7 @@ var parser = /*#__PURE__*/function () {
|
|
|
2965
3091
|
changedElements.deletedElements.forEach(function (deletedElement) {
|
|
2966
3092
|
var _scene$getTransformNo;
|
|
2967
3093
|
(_scene$getTransformNo = scene.getTransformNodeByName(deletedElement.name)) === null || _scene$getTransformNo === void 0 || _scene$getTransformNo.dispose();
|
|
3094
|
+
sceneStore.removeElement(deletedElement);
|
|
2968
3095
|
});
|
|
2969
3096
|
}
|
|
2970
3097
|
if (changedElements && changedElements.updatedElements && changedElements.updatedElements.length > 0) {
|
|
@@ -2993,7 +3120,49 @@ var parser = /*#__PURE__*/function () {
|
|
|
2993
3120
|
}
|
|
2994
3121
|
utilStore.setRTVAnalyzeData();
|
|
2995
3122
|
deacCache(cacheGroup);
|
|
2996
|
-
|
|
3123
|
+
|
|
3124
|
+
// Check if the bounding box is in the frustum
|
|
3125
|
+
focusedElement = sceneStore.focusedElement;
|
|
3126
|
+
if (!focusedElement) {
|
|
3127
|
+
_context.next = 28;
|
|
3128
|
+
break;
|
|
3129
|
+
}
|
|
3130
|
+
// let focusedNode = scene.getTransformNodeByName(focusedElement.name)!;
|
|
3131
|
+
focusedNode = undefined;
|
|
3132
|
+
_iterator = _createForOfIteratorHelper(scene.transformNodes);
|
|
3133
|
+
try {
|
|
3134
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
3135
|
+
node = _step.value;
|
|
3136
|
+
if (node.name == focusedElement.name) {
|
|
3137
|
+
if (sceneStore.getId(node) == focusedElement.id) {
|
|
3138
|
+
focusedNode = node;
|
|
3139
|
+
}
|
|
3140
|
+
}
|
|
3141
|
+
}
|
|
3142
|
+
} catch (err) {
|
|
3143
|
+
_iterator.e(err);
|
|
3144
|
+
} finally {
|
|
3145
|
+
_iterator.f();
|
|
3146
|
+
}
|
|
3147
|
+
if (focusedNode) {
|
|
3148
|
+
_context.next = 22;
|
|
3149
|
+
break;
|
|
3150
|
+
}
|
|
3151
|
+
return _context.abrupt("return");
|
|
3152
|
+
case 22:
|
|
3153
|
+
bbox = focusedNode.getHierarchyBoundingVectors();
|
|
3154
|
+
boundingInfo = new BoundingInfo(bbox.min, bbox.max);
|
|
3155
|
+
frustumPlanes = Frustum.GetPlanes(scene.activeCamera.getTransformationMatrix());
|
|
3156
|
+
isInFrustum = boundingInfo.isCompletelyInFrustum(frustumPlanes);
|
|
3157
|
+
sizeDiff = Vector3$1.Distance(bbox.min, bbox.max) - focusedElement.size;
|
|
3158
|
+
if ((focusedNode.absolutePosition.x != focusedElement.position.x || focusedNode.absolutePosition.y != focusedElement.position.y || focusedNode.absolutePosition.z != focusedElement.position.z) && sceneStore.isControlledViewpoint) {
|
|
3159
|
+
sceneStore.focusElement(focusedNode);
|
|
3160
|
+
} else if (wasPlanned && sceneStore.isControlledViewpoint && (elementCount != sceneStore.elements.length || focusedElement.size != 0 && Math.abs(sizeDiff) > 0.5 || !isInFrustum)) {
|
|
3161
|
+
sceneStore.focusElement(focusedNode);
|
|
3162
|
+
} else {
|
|
3163
|
+
updateCam(sceneStore.hqRenderScript.cams[0], sceneStore.scene);
|
|
3164
|
+
}
|
|
3165
|
+
case 28:
|
|
2997
3166
|
case "end":
|
|
2998
3167
|
return _context.stop();
|
|
2999
3168
|
}
|
|
@@ -3067,7 +3236,7 @@ function useRealTimeRenderData (_ref) {
|
|
|
3067
3236
|
}
|
|
3068
3237
|
function _onSceneReady() {
|
|
3069
3238
|
_onSceneReady = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
3070
|
-
var _sceneStore$hqRenderS, getEnableUnityRtvKombi, cams, filteredCustomViewpoints, activeViewpoint, activeViewpointIdx;
|
|
3239
|
+
var _sceneStore$hqRenderS, getEnableUnityRtvKombi, cams, filteredCustomViewpoints, activeViewpoint, activeViewpointIdx, activeElement, _activeElement;
|
|
3071
3240
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
3072
3241
|
while (1) switch (_context2.prev = _context2.next) {
|
|
3073
3242
|
case 0:
|
|
@@ -3113,7 +3282,13 @@ function useRealTimeRenderData (_ref) {
|
|
|
3113
3282
|
_context2.next = 17;
|
|
3114
3283
|
break;
|
|
3115
3284
|
}
|
|
3116
|
-
if (elementsInfo)
|
|
3285
|
+
if (elementsInfo) {
|
|
3286
|
+
activeElement = elementsInfo.find(function (e) {
|
|
3287
|
+
return e.active;
|
|
3288
|
+
});
|
|
3289
|
+
if (activeElement) sceneStore.selectedElement = activeElement.elementId.toString();
|
|
3290
|
+
uiStore.initGui(callbacks.onElementSelected, sceneStore.elements, elementsInfo);
|
|
3291
|
+
}
|
|
3117
3292
|
if (!overlayImage) actions.toggleLoading('buildScene', false, false);
|
|
3118
3293
|
sceneStore.isInitializing = false;
|
|
3119
3294
|
return _context2.abrupt("return");
|
|
@@ -3127,7 +3302,13 @@ function useRealTimeRenderData (_ref) {
|
|
|
3127
3302
|
_context2.next = 21;
|
|
3128
3303
|
return parser();
|
|
3129
3304
|
case 21:
|
|
3130
|
-
if (elementsInfo)
|
|
3305
|
+
if (elementsInfo) {
|
|
3306
|
+
_activeElement = elementsInfo.find(function (e) {
|
|
3307
|
+
return e.active;
|
|
3308
|
+
});
|
|
3309
|
+
if (_activeElement) sceneStore.selectedElement = _activeElement.elementId.toString();
|
|
3310
|
+
uiStore.initGui(callbacks.onElementSelected, sceneStore.elements, elementsInfo);
|
|
3311
|
+
}
|
|
3131
3312
|
if (freePlacesOnGrids || plannedPlacesOnGrids) gridStore.getGrids(freePlacesOnGrids, plannedPlacesOnGrids);
|
|
3132
3313
|
_context2.next = 30;
|
|
3133
3314
|
break;
|
|
@@ -3153,8 +3334,6 @@ function useRealTimeRenderData (_ref) {
|
|
|
3153
3334
|
sceneStore.scene.getEngine().runRenderLoop(renderLoop);
|
|
3154
3335
|
sceneStore.hasRendered = true;
|
|
3155
3336
|
}
|
|
3156
|
-
|
|
3157
|
-
// sceneStore.scene.debugLayer?.show();
|
|
3158
3337
|
sceneStore.scene.onAfterRenderObservable.add(onFirstFrame);
|
|
3159
3338
|
LOG.successTransaction('BUILD_SCENE');
|
|
3160
3339
|
case 34:
|
|
@@ -3167,6 +3346,7 @@ function useRealTimeRenderData (_ref) {
|
|
|
3167
3346
|
}
|
|
3168
3347
|
function onFirstFrame() {
|
|
3169
3348
|
var _callbacks$onInitiali2, _sceneStore;
|
|
3349
|
+
// sceneStore.scene.debugLayer!.show();
|
|
3170
3350
|
sceneStore.isInitializing = false;
|
|
3171
3351
|
sceneStore.scene.onAfterRenderObservable.removeCallback(onFirstFrame);
|
|
3172
3352
|
if (!overlayImage) actions.toggleLoading('buildScene', false, false);
|
|
@@ -3207,7 +3387,8 @@ function useRealTimeRenderData (_ref) {
|
|
|
3207
3387
|
}
|
|
3208
3388
|
engine = new Engine(gameCanvas.current, true, {
|
|
3209
3389
|
antialias: true,
|
|
3210
|
-
stencil:
|
|
3390
|
+
stencil: false,
|
|
3391
|
+
audioEngine: false
|
|
3211
3392
|
}, true);
|
|
3212
3393
|
engine.renderEvenInBackground = renderInBackground;
|
|
3213
3394
|
engine.disablePerformanceMonitorInBackground = true;
|
|
@@ -3233,7 +3414,9 @@ function useRealTimeRenderData (_ref) {
|
|
|
3233
3414
|
});
|
|
3234
3415
|
case 17:
|
|
3235
3416
|
resize = function resize() {
|
|
3236
|
-
scene.getEngine()
|
|
3417
|
+
if (inBackground || !scene || !scene.getEngine()) return;
|
|
3418
|
+
if (sceneStore.hasPlanned) sceneStore.doRenderControlLoop = true;
|
|
3419
|
+
return scene.getEngine().resize();
|
|
3237
3420
|
};
|
|
3238
3421
|
if (window) {
|
|
3239
3422
|
window.addEventListener('resize', resize);
|
|
@@ -3261,7 +3444,6 @@ function useRealTimeRenderData (_ref) {
|
|
|
3261
3444
|
useEffect(function () {
|
|
3262
3445
|
if (!utilStore.updateWithUnityData) return;
|
|
3263
3446
|
if (overlayImage && uiStore) uiStore.updateOverlayImage(overlayImage);
|
|
3264
|
-
if (sceneStore && sceneStore.scene.activeCamera) updateCam(sceneStore.hqRenderScript.cams[0], sceneStore.scene);
|
|
3265
3447
|
}, [overlayImage]);
|
|
3266
3448
|
useEffect(function () {
|
|
3267
3449
|
if (inBackground) {
|
|
@@ -3499,8 +3681,9 @@ var RealTimeRenderer = /*#__PURE__*/memo(function (props) {
|
|
|
3499
3681
|
ref: resolutionDiv,
|
|
3500
3682
|
style: {
|
|
3501
3683
|
position: 'absolute',
|
|
3684
|
+
top: '-70px',
|
|
3502
3685
|
width: '100%',
|
|
3503
|
-
height: '100%',
|
|
3686
|
+
height: 'calc(100% + 70px)',
|
|
3504
3687
|
backgroundColor: 'white',
|
|
3505
3688
|
zIndex: 2
|
|
3506
3689
|
},
|
|
@@ -3529,7 +3712,8 @@ var RealTimeRenderer = /*#__PURE__*/memo(function (props) {
|
|
|
3529
3712
|
})]
|
|
3530
3713
|
});
|
|
3531
3714
|
}, function (prevProps, curProps) {
|
|
3532
|
-
|
|
3715
|
+
var _prevProps$overlayIma, _curProps$overlayImag, _prevProps$overlayIma2, _curProps$overlayImag2;
|
|
3716
|
+
if (((_prevProps$overlayIma = prevProps.overlayImage) === null || _prevProps$overlayIma === void 0 ? void 0 : _prevProps$overlayIma.base64) != ((_curProps$overlayImag = curProps.overlayImage) === null || _curProps$overlayImag === void 0 ? void 0 : _curProps$overlayImag.base64) || ((_prevProps$overlayIma2 = prevProps.overlayImage) === null || _prevProps$overlayIma2 === void 0 ? void 0 : _prevProps$overlayIma2.isStaticBg) != ((_curProps$overlayImag2 = curProps.overlayImage) === null || _curProps$overlayImag2 === void 0 ? void 0 : _curProps$overlayImag2.isStaticBg)) return false;
|
|
3533
3717
|
if (prevProps.renderjob != curProps.renderjob) return false;
|
|
3534
3718
|
if (JSON.stringify(prevProps.elementsInfo) != JSON.stringify(curProps.elementsInfo)) return false;
|
|
3535
3719
|
if (prevProps.inBackground != curProps.inBackground) return false;
|