@crystaldesign/real-time-viewer 24.9.0-beta.6 → 24.9.0-beta.8

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.
@@ -22,20 +22,19 @@ import { SSAO2RenderingPipeline } from '@babylonjs/core/PostProcesses/RenderPipe
22
22
  import '@babylonjs/core/Rendering/geometryBufferRendererSceneComponent';
23
23
  import '@babylonjs/core/Rendering/prePassRendererSceneComponent';
24
24
  import { UniversalCamera } from '@babylonjs/core/Cameras/universalCamera';
25
- import { Tools, WebRequest } from '@babylonjs/core/Misc';
25
+ import { Tools, Observable, WebRequest } from '@babylonjs/core/Misc';
26
26
  import { SceneOptimizerOptions, ShadowsOptimization, RenderTargetsOptimization, SceneOptimizer } from '@babylonjs/core/Misc/sceneOptimizer';
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, Image, AdvancedDynamicTexture } from '@babylonjs/gui';
30
- import { Color3 as Color3$1, Vector3 as Vector3$1, Observable, StandardMaterial, HighlightLayer, ActionManager as ActionManager$1, ExecuteCodeAction as ExecuteCodeAction$1 } from '@babylonjs/core';
31
- import { Matrix as Matrix$1, Vector3 as Vector3$2 } from '@babylonjs/core/Maths/math';
30
+ import { Matrix as Matrix$1, Vector3 as Vector3$1 } from '@babylonjs/core/Maths/math';
32
31
  import { Engine } from '@babylonjs/core/Engines/engine';
33
32
  import { Scene } from '@babylonjs/core/scene';
34
33
  import { DracoCompression } from '@babylonjs/core/Meshes/Compression/dracoCompression';
35
34
  import { SceneLoader } from '@babylonjs/core/Loading/sceneLoader';
36
35
  import { PBRMetallicRoughnessMaterial } from '@babylonjs/core/Materials/PBR/pbrMetallicRoughnessMaterial';
37
36
  import { DirectionalLight } from '@babylonjs/core/Lights/directionalLight';
38
- import { StandardMaterial as StandardMaterial$1 } from '@babylonjs/core/Materials/standardMaterial';
37
+ import { StandardMaterial } from '@babylonjs/core/Materials/standardMaterial';
39
38
  import '@babylonjs/loaders/glTF/2.0/';
40
39
  import { jsxs, jsx } from 'react/jsx-runtime';
41
40
 
@@ -66,12 +65,12 @@ function GetCameraControls(camera) {
66
65
  var stopRender = true;
67
66
  var deltaCamPos = targetCameraPosition.subtract(camera.position).multiplyByFloats(0.1, 0.1, 0.1);
68
67
  var deltaTarget = sceneStore.cameraTargetPosition.subtract(camera.target).multiplyByFloats(0.1, 0.1, 0.1);
69
- if (Math.abs(deltaCamPos.x) + Math.abs(deltaCamPos.y) + Math.abs(deltaCamPos.z) > 0.005) {
68
+ if (Math.abs(deltaCamPos.x) + Math.abs(deltaCamPos.y) + Math.abs(deltaCamPos.z) > 0.01) {
70
69
  camera.position = camera.position.addInPlaceFromFloats(deltaCamPos.x, deltaCamPos.y, deltaCamPos.z);
71
70
  camera.setTarget(sceneStore.cameraTargetPosition);
72
71
  stopRender = false;
73
72
  }
74
- if (Math.abs(deltaTarget.x) + Math.abs(deltaTarget.y) + Math.abs(deltaTarget.z) > 0.005) {
73
+ if (Math.abs(deltaTarget.x) + Math.abs(deltaTarget.y) + Math.abs(deltaTarget.z) > 0.01) {
75
74
  camera.setTarget(camera.target.addInPlaceFromFloats(deltaTarget.x, deltaTarget.y, deltaTarget.z));
76
75
  stopRender = false;
77
76
  }
@@ -816,9 +815,9 @@ var lightning = function lightning(diva3durl, scene, cams, isMobile, sceneStore)
816
815
  scene.getMaterialByName('skyBox').alpha = 0;
817
816
  scene.getEngine().setHardwareScalingLevel(1 / window.devicePixelRatio);
818
817
  var ssao = new SSAO2RenderingPipeline('ssao', scene, {
819
- ssaoRatio: 1,
818
+ ssaoRatio: 0.5,
820
819
  // Ratio of the SSAO post-process, in a lower resolution
821
- blurRatio: 1 // Ratio of the combine post-process (combines the SSAO and the scene)
820
+ blurRatio: 0.5 // Ratio of the combine post-process (combines the SSAO and the scene)
822
821
  }, cams);
823
822
  ssao.radius = 1.25;
824
823
  ssao.epsilon = 0.002;
@@ -1436,10 +1435,7 @@ var UIStore = /*#__PURE__*/function () {
1436
1435
  _defineProperty(this, "_outstandingImageCount", void 0);
1437
1436
  _defineProperty(this, "_latestViewpoint", void 0);
1438
1437
  _defineProperty(this, "_guiElements", []);
1439
- _defineProperty(this, "_clonedMeshes", []);
1440
- _defineProperty(this, "_highlightMaterial", void 0);
1441
1438
  _defineProperty(this, "_scene", void 0);
1442
- _defineProperty(this, "_selectedHighlight", void 0);
1443
1439
  _defineProperty(this, "_selectionHandler", void 0);
1444
1440
  _defineProperty(this, "_colors", {
1445
1441
  defaultBg: 'rgba(240, 240, 240, 255)',
@@ -1449,7 +1445,7 @@ var UIStore = /*#__PURE__*/function () {
1449
1445
  });
1450
1446
  _defineProperty(this, "_gridGui", void 0);
1451
1447
  _defineProperty(this, "updateOverlayImage", function (overlayImage) {
1452
- if (!overlayImage) return;
1448
+ if (!overlayImage || !_this._scene) return;
1453
1449
  _this._outstandingImageCount--;
1454
1450
  if (_this._outstandingImageCount > 0) return;
1455
1451
  if (_this._overlayImage) _this._overlayImage.source = overlayImage;else {
@@ -1477,66 +1473,42 @@ var UIStore = /*#__PURE__*/function () {
1477
1473
  }
1478
1474
  this._outstandingImageCount = 0;
1479
1475
  if (_overlayImage) this.updateOverlayImage(_overlayImage);
1480
- this._highlightMaterial = new StandardMaterial('highlight_mat', scene);
1481
- this._highlightMaterial.depthFunction = 519; // = always
1482
- this._highlightMaterial.disableColorWrite = true;
1483
- this._selectedHighlight = new HighlightLayer('hl1', scene, {
1484
- isStroke: true,
1485
- blurTextureSizeRatio: 1,
1486
- mainTextureFixedSize: 1024
1487
- });
1488
- this._selectedHighlight.renderingGroupId = 1;
1489
- this._selectedHighlight.innerGlow = false;
1490
1476
  }
1491
1477
  return _createClass(UIStore, [{
1492
- key: "addMesh",
1493
- value: function addMesh(abstractMeshes) {
1494
- var _this2 = this;
1495
- abstractMeshes.forEach(function (abstractMesh) {
1496
- var clonedMesh = abstractMesh.clone(abstractMesh.name + '_highlight', abstractMesh.parent);
1497
- _this2._clonedMeshes.push(clonedMesh);
1498
- clonedMesh.material = _this2._highlightMaterial;
1499
- clonedMesh.renderingGroupId = 1;
1500
- abstractMesh.visibility = 1;
1501
- _this2._selectedHighlight.addMesh(clonedMesh, Color3$1.White());
1502
- _this2.addMesh(abstractMesh.getChildMeshes());
1503
- });
1504
- }
1505
- }, {
1506
1478
  key: "initSelectionHandler",
1507
1479
  value: function initSelectionHandler(onElementSelected) {
1508
- var _this3 = this;
1480
+ var _this2 = this;
1509
1481
  this._selectionHandler = SelHandler({
1510
1482
  onElSelected: onElementSelected
1511
1483
  });
1512
1484
  this._scene.onPointerObservable.add(function (pointerInfo) {
1513
- var _this3$_selectionHand;
1514
- return (_this3$_selectionHand = _this3._selectionHandler) === null || _this3$_selectionHand === void 0 ? void 0 : _this3$_selectionHand.onSelection(pointerInfo);
1485
+ var _this2$_selectionHand;
1486
+ return (_this2$_selectionHand = _this2._selectionHandler) === null || _this2$_selectionHand === void 0 ? void 0 : _this2$_selectionHand.onSelection(pointerInfo);
1515
1487
  });
1516
1488
  this._scene.pointerMovePredicate = function (mesh) {
1517
- return mesh.isPickable && mesh.isReady() && mesh.isEnabled() && (mesh.enablePointerMoveEvents || _this3._scene.constantlyUpdateMeshUnderPointer || mesh._getActionManagerForTrigger() !== null) && (!_this3._scene.cameraToUseForPointers || (_this3._scene.cameraToUseForPointers.layerMask & mesh.layerMask) !== 0);
1489
+ return mesh.isPickable && mesh.isReady() && mesh.isEnabled() && (mesh.enablePointerMoveEvents || _this2._scene.constantlyUpdateMeshUnderPointer || mesh._getActionManagerForTrigger() !== null) && (!_this2._scene.cameraToUseForPointers || (_this2._scene.cameraToUseForPointers.layerMask & mesh.layerMask) !== 0);
1518
1490
  };
1519
1491
  this._scene.pointerDownPredicate = function (mesh) {
1520
- return mesh.isPickable && mesh.isReady() && mesh.isEnabled() && (!_this3._scene.cameraToUseForPointers || (_this3._scene.cameraToUseForPointers.layerMask & mesh.layerMask) !== 0);
1492
+ return mesh.isPickable && mesh.isReady() && mesh.isEnabled() && (!_this2._scene.cameraToUseForPointers || (_this2._scene.cameraToUseForPointers.layerMask & mesh.layerMask) !== 0);
1521
1493
  };
1522
1494
  this._scene.pointerUpPredicate = function (mesh) {
1523
- return mesh.isPickable && mesh.isReady() && mesh.isEnabled() && (!_this3._scene.cameraToUseForPointers || (_this3._scene.cameraToUseForPointers.layerMask & mesh.layerMask) !== 0);
1495
+ return mesh.isPickable && mesh.isReady() && mesh.isEnabled() && (!_this2._scene.cameraToUseForPointers || (_this2._scene.cameraToUseForPointers.layerMask & mesh.layerMask) !== 0);
1524
1496
  };
1525
1497
  }
1526
1498
  }, {
1527
1499
  key: "createGridGui",
1528
1500
  value: function createGridGui(mesh, onClickDel) {
1529
- var _this4 = this;
1501
+ var _this3 = this;
1530
1502
  if (!this._selectionHandler || !mesh) return;
1531
1503
  this.removeGridGui();
1532
1504
  var guiElem = new TransformNode('gridGuiElem', this._scene);
1533
1505
  var max = mesh.getHierarchyBoundingVectors().max;
1534
1506
  var min = mesh.getHierarchyBoundingVectors().min;
1535
1507
  guiElem.parent = mesh;
1536
- var absolutePosition = new Vector3$1(min.x, max.y, max.z);
1537
- var localPos = Vector3$1.TransformCoordinates(absolutePosition, guiElem.getWorldMatrix().invert());
1538
- this._utilStore.moveObjectInDirection(guiElem, Vector3$1.Backward(), Math.abs(localPos.z));
1539
- this._utilStore.moveObjectInDirection(guiElem, Vector3$1.Up(), -localPos.y + 0.05);
1508
+ var absolutePosition = new Vector3(min.x, max.y, max.z);
1509
+ var localPos = Vector3.TransformCoordinates(absolutePosition, guiElem.getWorldMatrix().invert());
1510
+ this._utilStore.moveObjectInDirection(guiElem, Vector3.Backward(), Math.abs(localPos.z));
1511
+ this._utilStore.moveObjectInDirection(guiElem, Vector3.Up(), -localPos.y + 0.05);
1540
1512
  var dtarget = this._uiConfig.templateConfig == 'standard' ? new Ellipse('deleteEllipse') : new Rectangle('deleteEllipse');
1541
1513
  dtarget.width = this._uiConfig.templateConfig == 'standard' ? '40px' : '35px';
1542
1514
  dtarget.height = this._uiConfig.templateConfig == 'standard' ? '40px' : '35px';
@@ -1548,10 +1520,10 @@ var UIStore = /*#__PURE__*/function () {
1548
1520
  dbt.height = this._uiConfig.templateConfig == 'standard' ? '40px' : '70%';
1549
1521
  dbt.onPointerClickObservable.add(onClickDel);
1550
1522
  dtarget.onPointerEnterObservable = new Observable(function () {
1551
- return dtarget.background = _this4._colors.hoverBg;
1523
+ return dtarget.background = _this3._colors.hoverBg;
1552
1524
  });
1553
1525
  dtarget.onPointerOutObservable = new Observable(function () {
1554
- return dtarget.background = _this4._colors.defaultBg;
1526
+ return dtarget.background = _this3._colors.defaultBg;
1555
1527
  });
1556
1528
  if (this._uiConfig.templateConfig == 'standard') dtarget.linkOffsetY = -48;
1557
1529
  dtarget.addControl(dbt);
@@ -1572,82 +1544,33 @@ var UIStore = /*#__PURE__*/function () {
1572
1544
  }, {
1573
1545
  key: "initGui",
1574
1546
  value: function initGui(onElSelected, elements, elementsInfo) {
1575
- var _this5 = this;
1547
+ var _this4 = this;
1576
1548
  if (!this._selectionHandler) this.initSelectionHandler(onElSelected);
1577
1549
  if (!this._scene) return;
1578
1550
  if (!elementsInfo) return;
1579
1551
  if (elementsInfo.filter(function (e) {
1580
1552
  return !!e.posNr;
1581
1553
  }).length > elements.length) return; // elementinfo update before unity -- return and wait for after buildscene
1582
-
1583
1554
  this.clearGui();
1584
- var showSelected = true;
1585
- this._selectedHighlight.removeAllMeshes();
1586
- this._clonedMeshes.forEach(function (cm) {
1587
- return cm.dispose();
1588
- });
1589
- this._clonedMeshes.length = 0;
1590
- if (elementsInfo.every(function (e) {
1591
- return e.active;
1592
- })) showSelected = false;
1593
1555
  var _loop = function _loop() {
1594
1556
  var elementInfo = elementsInfo[idx];
1595
1557
  var emnt = elements.find(function (el) {
1596
1558
  return Number(el.bbn.name.slice(el.bbn.name.lastIndexOf('E') + 1, el.bbn.name.length)) == elementInfo.elementId;
1597
1559
  });
1598
1560
  if (!emnt || !elementInfo.posNr) return 0; // continue
1599
- var element = _this5._scene.getTransformNodeByName(emnt.bbn.name);
1561
+ var element = _this4._scene.getTransformNodeByName(emnt.bbn.name);
1600
1562
  if (!element) return 0; // continue
1601
- var guiElemLeftBack = new TransformNode('guiElem_' + elementInfo.elementId, _this5._scene);
1563
+ var guiElemLeftBack = new TransformNode('guiElem_' + elementInfo.elementId, _this4._scene);
1602
1564
  var max = element.getHierarchyBoundingVectors().max;
1603
1565
  var min = element.getHierarchyBoundingVectors().min;
1604
- guiElemLeftBack.position = new Vector3$1(element.absolutePosition.x, max.y, element.absolutePosition.z);
1566
+ guiElemLeftBack.position = new Vector3(element.absolutePosition.x, max.y, element.absolutePosition.z);
1605
1567
  guiElemRightBack = undefined;
1606
- if (_this5._uiConfig.posTrashIcon == 'TOP_RIGHT_BACK') {
1607
- guiElemRightBack = new TransformNode('guiElem_' + elementInfo.elementId, _this5._scene);
1608
- var pos = new Vector3$1(min.x, max.y, min.z);
1568
+ if (_this4._uiConfig.posTrashIcon == 'TOP_RIGHT_BACK') {
1569
+ guiElemRightBack = new TransformNode('guiElem_' + elementInfo.elementId, _this4._scene);
1570
+ var pos = new Vector3(min.x, max.y, min.z);
1609
1571
  guiElemRightBack.position = pos;
1610
1572
  }
1611
- _this5.createGUIButton(guiElemLeftBack, elementInfo.posNr, elementInfo.active, elementInfo.selectable, element.parent.name, elementInfo.elementId, guiElemRightBack);
1612
- if (!showSelected) return 0; // continue
1613
- if (elementInfo.active) {
1614
- var mainAndChildElements = elements.filter(function (el) {
1615
- return el.bbn.name.includes('E' + elementInfo.elementId);
1616
- });
1617
- mainAndChildElements.forEach(function (e) {
1618
- return _this5.addMesh(e.bbn.getChildMeshes(false));
1619
- });
1620
- } else if (!elementInfo.active) {
1621
- var _mainAndChildElements = elements.filter(function (el) {
1622
- return el.bbn.name.includes('E' + elementInfo.elementId);
1623
- });
1624
- _mainAndChildElements.forEach(function (emnt) {
1625
- var element = emnt.bbn;
1626
- var meshes = element.getChildMeshes(false);
1627
- var previewActionManager = new ActionManager$1(_this5._scene);
1628
- previewActionManager.registerAction(new ExecuteCodeAction$1(ActionManager$1.OnPointerOverTrigger, function () {
1629
- return meshes.forEach(function (m) {
1630
- _this5._clonedMeshes.forEach(function (m) {
1631
- return m.visibility = 0;
1632
- });
1633
- _this5._selectedHighlight.renderingGroupId = 0;
1634
- _this5._selectedHighlight.addMesh(m, new Color3$1(0.1, 0.5, 0.1), true);
1635
- });
1636
- }));
1637
- previewActionManager.registerAction(new ExecuteCodeAction$1(ActionManager$1.OnPointerOutTrigger, function () {
1638
- return meshes.forEach(function (m) {
1639
- _this5._selectedHighlight.removeMesh(m);
1640
- _this5._selectedHighlight.renderingGroupId = 1;
1641
- _this5._clonedMeshes.forEach(function (m) {
1642
- return m.visibility = 1;
1643
- });
1644
- });
1645
- }));
1646
- meshes.forEach(function (mesh) {
1647
- mesh.actionManager = previewActionManager;
1648
- });
1649
- });
1650
- }
1573
+ _this4.createGUIButton(guiElemLeftBack, elementInfo.posNr, elementInfo.active, elementInfo.selectable, element.parent.name, elementInfo.elementId, guiElemRightBack);
1651
1574
  },
1652
1575
  guiElemRightBack,
1653
1576
  _ret;
@@ -1659,7 +1582,7 @@ var UIStore = /*#__PURE__*/function () {
1659
1582
  }, {
1660
1583
  key: "selectElem",
1661
1584
  value: function selectElem(name) {
1662
- var _this6 = this;
1585
+ var _this5 = this;
1663
1586
  var _iterator = _createForOfIteratorHelper$5(this._gui.getControlsByType('ellipse')),
1664
1587
  _step;
1665
1588
  try {
@@ -1675,9 +1598,9 @@ var UIStore = /*#__PURE__*/function () {
1675
1598
  this._guiElements.forEach(function (guiElem) {
1676
1599
  return guiElem.elements.forEach(function (element) {
1677
1600
  if (element.typeName == 'label') element.color = 'Black';
1678
- if (element.typeName == 'Ellipse') element.color = _this6._colors.defaultBg;
1601
+ if (element.typeName == 'Ellipse') element.color = _this5._colors.defaultBg;
1679
1602
  if (guiElem.elementId.toString() == name) {
1680
- if (element.typeName == 'label') element.color = _this6._colors.selectedBg;
1603
+ if (element.typeName == 'label') element.color = _this5._colors.selectedBg;
1681
1604
  if (element.typeName == 'Ellipse') element.color = 'White';
1682
1605
  }
1683
1606
  });
@@ -1687,7 +1610,7 @@ var UIStore = /*#__PURE__*/function () {
1687
1610
  key: "createGUIButton",
1688
1611
  value: function createGUIButton(node, posNr, isSelected, isSelectable, setId, elementId, topRightNode) {
1689
1612
  var _this$_utilStore$view,
1690
- _this7 = this;
1613
+ _this6 = this;
1691
1614
  var guiElem = {
1692
1615
  elementId: elementId,
1693
1616
  elements: []
@@ -1724,8 +1647,8 @@ var UIStore = /*#__PURE__*/function () {
1724
1647
  dbt.width = this._uiConfig.templateConfig == 'standard' ? '40px' : '60%';
1725
1648
  dbt.height = this._uiConfig.templateConfig == 'standard' ? '40px' : '70%';
1726
1649
  dbt.onPointerClickObservable.add(function () {
1727
- var _this7$_utilStore$vie;
1728
- return (_this7$_utilStore$vie = _this7._utilStore.viewHandler) === null || _this7$_utilStore$vie === void 0 ? void 0 : _this7$_utilStore$vie.viewPlannerHandler.onElementDeleted(setId, elementId);
1650
+ var _this6$_utilStore$vie;
1651
+ return (_this6$_utilStore$vie = _this6._utilStore.viewHandler) === null || _this6$_utilStore$vie === void 0 ? void 0 : _this6$_utilStore$vie.viewPlannerHandler.onElementDeleted(setId, elementId);
1729
1652
  });
1730
1653
  if (this._uiConfig.templateConfig == 'standard') dtarget.linkOffsetY = -48;
1731
1654
  dtarget.addControl(dbt);
@@ -1756,17 +1679,17 @@ var UIStore = /*#__PURE__*/function () {
1756
1679
  }, {
1757
1680
  key: "requestNewOverlayImage",
1758
1681
  value: function requestNewOverlayImage(viewpoint) {
1759
- var _this8 = this;
1682
+ var _this7 = this;
1760
1683
  clearTimeout(this._timeoutId);
1761
1684
  this._timeoutId = setTimeout(function () {
1762
- var _this8$_requestNewOve;
1763
- if (JSON.stringify(viewpoint) == JSON.stringify(_this8._latestViewpoint)) {
1764
- _this8._overlayImage.isVisible = true;
1685
+ var _this7$_requestNewOve;
1686
+ if (JSON.stringify(viewpoint) == JSON.stringify(_this7._latestViewpoint)) {
1687
+ _this7._overlayImage.isVisible = true;
1765
1688
  return;
1766
1689
  }
1767
- _this8._outstandingImageCount++;
1768
- _this8._latestViewpoint = viewpoint;
1769
- (_this8$_requestNewOve = _this8._requestNewOverlayImage) === null || _this8$_requestNewOve === void 0 || _this8$_requestNewOve.call(_this8, viewpoint);
1690
+ _this7._outstandingImageCount++;
1691
+ _this7._latestViewpoint = viewpoint;
1692
+ (_this7$_requestNewOve = _this7._requestNewOverlayImage) === null || _this7$_requestNewOve === void 0 || _this7$_requestNewOve.call(_this7, viewpoint);
1770
1693
  }, 500);
1771
1694
  }
1772
1695
  }]);
@@ -1784,16 +1707,16 @@ var UtilStore = /*#__PURE__*/function () {
1784
1707
  _defineProperty(this, "_viewHandler", void 0);
1785
1708
  _defineProperty(this, "calculateBBoxCenter", function (ob) {
1786
1709
  var boundingBox = ob.getHierarchyBoundingVectors();
1787
- return new Vector3$2((boundingBox.max.x + boundingBox.min.x) / 2, (boundingBox.max.y + boundingBox.min.y) / 2, (boundingBox.max.z + boundingBox.min.z) / 2);
1710
+ return new Vector3$1((boundingBox.max.x + boundingBox.min.x) / 2, (boundingBox.max.y + boundingBox.min.y) / 2, (boundingBox.max.z + boundingBox.min.z) / 2);
1788
1711
  });
1789
1712
  _defineProperty(this, "radiansToDegrees", function (vector) {
1790
- return new Vector3$2(vector.x * 180 / Math.PI, vector.y * 180 / Math.PI, vector.z * 180 / Math.PI);
1713
+ return new Vector3$1(vector.x * 180 / Math.PI, vector.y * 180 / Math.PI, vector.z * 180 / Math.PI);
1791
1714
  });
1792
1715
  _defineProperty(this, "degreesToRadians", function (vector) {
1793
- return new Vector3$2(vector.x / 180 * Math.PI, vector.y / 180 * Math.PI, vector.z / 180 * Math.PI);
1716
+ return new Vector3$1(vector.x / 180 * Math.PI, vector.y / 180 * Math.PI, vector.z / 180 * Math.PI);
1794
1717
  });
1795
1718
  _defineProperty(this, "vector3ToBVector3", function (vector) {
1796
- return new Vector3$2(vector.x, vector.y, vector.z);
1719
+ return new Vector3$1(vector.x, vector.y, vector.z);
1797
1720
  });
1798
1721
  _defineProperty(this, "bvector3ToVector3", function (vector) {
1799
1722
  return {
@@ -1931,7 +1854,7 @@ var UtilStore = /*#__PURE__*/function () {
1931
1854
  key: "moveObjectInDirection",
1932
1855
  value: function moveObjectInDirection(mesh, direction, distance) {
1933
1856
  var rotationMatrix = Matrix$1.RotationYawPitchRoll(mesh.rotation.y, mesh.rotation.x, mesh.rotation.z);
1934
- direction = Vector3$2.TransformCoordinates(direction, rotationMatrix);
1857
+ direction = Vector3$1.TransformCoordinates(direction, rotationMatrix);
1935
1858
  direction.normalize();
1936
1859
  mesh.position.addInPlace(direction.scale(distance));
1937
1860
  }
@@ -1939,6 +1862,9 @@ var UtilStore = /*#__PURE__*/function () {
1939
1862
  }();
1940
1863
 
1941
1864
  var _context;
1865
+ var unregisterContext = function unregisterContext() {
1866
+ _context = undefined;
1867
+ };
1942
1868
  var registerContext = function registerContext(scene, hqRenderScript, apiConfig, jwt, viewHandler, onMissingGeo, requestNewOverlayImage, overlayImage, uiConfig) {
1943
1869
  var utilStore = new UtilStore(false, viewHandler);
1944
1870
  var sceneStore = new SceneStore(scene, hqRenderScript, utilStore, apiConfig, jwt, onMissingGeo);
@@ -2135,6 +2061,9 @@ var customMat = /*#__PURE__*/function () {
2135
2061
  res = _context.sent;
2136
2062
  parsedMat = PBRMetallicRoughnessMaterial.Parse(res, _customMat.scene, '');
2137
2063
  parsedMat.name = _customMat.name;
2064
+ parsedMat.baseTexture._mimeType = 'image/jpeg';
2065
+ parsedMat.metallicRoughnessTexture._mimeType = 'image/jpeg';
2066
+ parsedMat.normalTexture._mimeType = 'image/jpeg';
2138
2067
  found = !!parsedMat.baseTexture;
2139
2068
  if (!found) LOG$1.error(new DivaError('MISSING_MATERIAL: could not get material ' + _customMat.name + ' for iln ' + _customMat.blob, {
2140
2069
  code: 'RTS_0002'
@@ -2151,8 +2080,8 @@ var customMat = /*#__PURE__*/function () {
2151
2080
  mat: parsedMat,
2152
2081
  found: true
2153
2082
  });
2154
- case 23:
2155
- _context.prev = 23;
2083
+ case 26:
2084
+ _context.prev = 26;
2156
2085
  _context.t0 = _context["catch"](8);
2157
2086
  if (setDataRow) useUtilStoreContext().setAnalyzeDataRow({
2158
2087
  type: 'MAT',
@@ -2162,16 +2091,16 @@ var customMat = /*#__PURE__*/function () {
2162
2091
  path: _customMat.blob,
2163
2092
  sizeMb: 0
2164
2093
  });
2165
- case 26:
2094
+ case 29:
2166
2095
  return _context.abrupt("return", {
2167
2096
  mat: new PBRMetallicRoughnessMaterial(_customMat.name, _customMat.scene),
2168
2097
  found: true
2169
2098
  });
2170
- case 27:
2099
+ case 30:
2171
2100
  case "end":
2172
2101
  return _context.stop();
2173
2102
  }
2174
- }, _callee, null, [[8, 23]]);
2103
+ }, _callee, null, [[8, 26]]);
2175
2104
  }));
2176
2105
  return function customMat(_x) {
2177
2106
  return _ref.apply(this, arguments);
@@ -2901,7 +2830,7 @@ function shadow() {
2901
2830
  var std_mat = new PBRMetallicRoughnessMaterial('std_mat', scene);
2902
2831
  std_mat.metallic = 0;
2903
2832
  scene.defaultMaterial = std_mat;
2904
- var mat = new StandardMaterial$1('ground_mat', scene);
2833
+ var mat = new StandardMaterial('ground_mat', scene);
2905
2834
  ground.material = mat;
2906
2835
  }
2907
2836
  }
@@ -3149,12 +3078,6 @@ function useRealTimeRenderData (_ref) {
3149
3078
  };
3150
3079
  queueRerender();
3151
3080
  }
3152
- useEffect(function () {
3153
- if (overlayImage && uiStore) uiStore.updateOverlayImage(overlayImage);
3154
- }, [overlayImage]);
3155
- useEffect(function () {
3156
- if (sceneStore && elementsInfo) uiStore.initGui(callbacks.onElementSelected, sceneStore.elements, elementsInfo);
3157
- }, [elementsInfo]);
3158
3081
  useEffect(function () {
3159
3082
  function asyncUseEffect() {
3160
3083
  return _asyncUseEffect.apply(this, arguments);
@@ -3219,8 +3142,15 @@ function useRealTimeRenderData (_ref) {
3219
3142
  }));
3220
3143
  return _asyncUseEffect.apply(this, arguments);
3221
3144
  }
3145
+ unregisterContext();
3222
3146
  asyncUseEffect();
3223
3147
  }, []);
3148
+ useEffect(function () {
3149
+ if (overlayImage && uiStore) uiStore.updateOverlayImage(overlayImage);
3150
+ }, [overlayImage]);
3151
+ useEffect(function () {
3152
+ if (sceneStore && elementsInfo) uiStore.initGui(callbacks.onElementSelected, sceneStore.elements, elementsInfo);
3153
+ }, [elementsInfo]);
3224
3154
  useEffect(function () {
3225
3155
  if (inBackground) {
3226
3156
  sceneStore.scene.getEngine().stopRenderLoop();
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/CustomMaterial/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,4BAA4B,EAAE,MAAM,4DAA4D,CAAC;AAI1G,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AAGD,QAAA,MAAM,SAAS,cAAqB,cAAc,eAAc,OAAO,KAAU,QAAQ;IAAE,GAAG,EAAE,4BAA4B,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CA+B7I,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/CustomMaterial/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,4BAA4B,EAAE,MAAM,4DAA4D,CAAC;AAI1G,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AAGD,QAAA,MAAM,SAAS,cAAqB,cAAc,eAAc,OAAO,KAAU,QAAQ;IAAE,GAAG,EAAE,4BAA4B,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAkC7I,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -11,6 +11,7 @@ export interface Context {
11
11
  gridStore: GridStore;
12
12
  uiStore: UIStore;
13
13
  }
14
+ export declare const unregisterContext: () => void;
14
15
  export declare const registerContext: (scene: Scene, hqRenderScript: string, apiConfig: ApiConfig, jwt?: string, viewHandler?: ViewHandler, onMissingGeo?: () => void, requestNewOverlayImage?: () => void, overlayImage?: string, uiConfig?: UIConfig) => {
15
16
  utilStore: UtilStore;
16
17
  sceneStore: SceneStore;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,eAAO,MAAM,eAAe,UACnB,KAAK,kBACI,MAAM,aACX,SAAS,QACd,MAAM,gBACE,WAAW,iBACV,MAAM,IAAI,2BACA,MAAM,IAAI,iBACpB,MAAM,aACV,QAAQ;;;;;CAWpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,eAE7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,kBAEhC,CAAC;AAEF,eAAO,MAAM,mBAAmB,iBAE/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,iBAE/B,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,eAAO,MAAM,iBAAiB,YAE7B,CAAC;AAEF,eAAO,MAAM,eAAe,UACnB,KAAK,kBACI,MAAM,aACX,SAAS,QACd,MAAM,gBACE,WAAW,iBACV,MAAM,IAAI,2BACA,MAAM,IAAI,iBACpB,MAAM,aACV,QAAQ;;;;;CAWpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,eAE7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,kBAEhC,CAAC;AAEF,eAAO,MAAM,mBAAmB,iBAE/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,iBAE/B,CAAC"}
@@ -68,7 +68,7 @@ export declare class SceneStore {
68
68
  get hasRendered(): boolean;
69
69
  get cams(): ArcRotateCamera[];
70
70
  get previousHQRenderScript(): HQRenderScript | undefined;
71
- get activeCamera(): import("@babylonjs/core").Camera;
71
+ get activeCamera(): import("@babylonjs/core/Cameras/camera").Camera;
72
72
  get meshes(): AbstractMesh[];
73
73
  get ssao(): SSAO2RenderingPipeline;
74
74
  get renderPipeline(): DefaultRenderingPipeline;
@@ -1 +1 @@
1
- {"version":3,"file":"SceneStore.d.ts","sourceRoot":"","sources":["../../../../../src/store/SceneStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SceneStore.d.ts","sourceRoot":"","sources":["../../../../../src/store/SceneStore.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,8 @@ import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
2
2
  import { UIConfig, ViewpointCamInfo } from '..';
3
3
  import { ElementsInfo } from '../types';
4
4
  import { Element } from './types';
5
- import { Mesh, Scene } from '@babylonjs/core';
5
+ import { Mesh } from '@babylonjs/core/Meshes/mesh';
6
+ import { Scene } from '@babylonjs/core/scene';
6
7
  import { UtilStore } from './UtilStore';
7
8
  export declare class UIStore {
8
9
  private _utilStore;
@@ -14,15 +15,11 @@ export declare class UIStore {
14
15
  private _outstandingImageCount;
15
16
  private _latestViewpoint?;
16
17
  private _guiElements;
17
- private _clonedMeshes;
18
- private _highlightMaterial;
19
18
  private _scene;
20
- private _selectedHighlight;
21
19
  private _selectionHandler?;
22
20
  private _colors;
23
21
  private _gridGui?;
24
22
  constructor(scene: Scene, utilStore: UtilStore, uiConfig?: UIConfig, requestNewOverlayImage?: (viewpoint: ViewpointCamInfo) => void, overlayImage?: string);
25
- private addMesh;
26
23
  private initSelectionHandler;
27
24
  createGridGui(mesh: Mesh, onClickDel: any): void;
28
25
  removeGridGui(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"UIStore.d.ts","sourceRoot":"","sources":["../../../../../src/store/UIStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAIrE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAML,IAAI,EAEJ,KAAK,EAGN,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAMxC,qBAAa,OAAO;IAClB,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,SAAS,CAAW;IAC5B,OAAO,CAAC,IAAI,CAAyB;IACrC,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,uBAAuB,CAAC,CAAwC;IACxE,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,YAAY,CAAgD;IACpE,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,kBAAkB,CAAmB;IAC7C,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,kBAAkB,CAAiB;IAC3C,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAC7C,OAAO,CAAC,OAAO,CAA2H;IAC1I,OAAO,CAAC,QAAQ,CAAC,CAAoD;gBAGnE,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,QAAQ,EACnB,sBAAsB,CAAC,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,IAAI,EAC9D,YAAY,CAAC,EAAE,MAAM;IA4BvB,OAAO,CAAC,OAAO;IAYf,OAAO,CAAC,oBAAoB;IAmCrB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG;IAkCzC,aAAa;IAKb,OAAO,CAAC,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE;IAiF5E,UAAU,CAAC,IAAI,EAAE,MAAM;IAiBvB,eAAe,CACpB,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,OAAO,EACnB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,aAAa;IAkDvB,QAAQ;IAKR,MAAM;IAKN,kBAAkB,iBAAkB,MAAM,GAAG,SAAS,UAc3D;IAEK,sBAAsB,CAAC,SAAS,EAAE,gBAAgB;CAa1D"}
1
+ {"version":3,"file":"UIStore.d.ts","sourceRoot":"","sources":["../../../../../src/store/UIStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAIrE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAMxC,qBAAa,OAAO;IAClB,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,SAAS,CAAW;IAC5B,OAAO,CAAC,IAAI,CAAyB;IACrC,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,uBAAuB,CAAC,CAAwC;IACxE,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,YAAY,CAAgD;IACpE,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAC7C,OAAO,CAAC,OAAO,CAA2H;IAC1I,OAAO,CAAC,QAAQ,CAAC,CAAoD;gBAGnE,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,QAAQ,EACnB,sBAAsB,CAAC,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,IAAI,EAC9D,YAAY,CAAC,EAAE,MAAM;IAgBvB,OAAO,CAAC,oBAAoB;IAgCrB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG;IAkCzC,aAAa;IAKb,OAAO,CAAC,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE;IAkC5E,UAAU,CAAC,IAAI,EAAE,MAAM;IAiBvB,eAAe,CACpB,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,OAAO,EACnB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,aAAa;IA8CvB,QAAQ;IAKR,MAAM;IAKN,kBAAkB,iBAAkB,MAAM,GAAG,SAAS,UAa3D;IAEK,sBAAsB,CAAC,SAAS,EAAE,gBAAgB;CAY1D"}