@inweb/viewer-visualize 26.9.10 → 26.10.0

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.
@@ -1443,7 +1443,17 @@ class OrbitAction {
1443
1443
  const pPosition = this.toPoint(viewParams.position);
1444
1444
  const direct = pTarget.sub(pPosition);
1445
1445
  const vDirect = direct.asVector();
1446
+ if (vDirect.length() < 1e-10) {
1447
+ const defaultSide = this.toVector(this._m_module.Vector3d.kXAxis);
1448
+ this.deleteAll([direct, pUpV, pTarget, pPosition, vDirect]);
1449
+ return defaultSide;
1450
+ }
1446
1451
  const vCross = pUpV.crossProduct(vDirect);
1452
+ if (vCross.length() < 1e-10) {
1453
+ const defaultSide = this.toVector(this._m_module.Vector3d.kXAxis);
1454
+ this.deleteAll([direct, pUpV, pTarget, pPosition, vDirect, vCross]);
1455
+ return defaultSide;
1456
+ }
1447
1457
  const sideVector = vCross.normalize();
1448
1458
  this.deleteAll([direct, pUpV, pTarget, pPosition, vDirect, vCross]);
1449
1459
  return sideVector;
@@ -1466,13 +1476,20 @@ class OrbitAction {
1466
1476
  {
1467
1477
  const pPoint = this.toPoint(viewParams.position);
1468
1478
  const pTarget = this.toPoint(viewParams.target);
1469
- const pCenter = this.toPoint(this.m_viewCenter);
1470
1479
  const pUp = pTarget.sub(pPoint);
1471
1480
  const vUp = pUp.asVector();
1481
+ if (vUp.length() < 1e-10) {
1482
+ this.deleteAll([pPoint, pTarget, pUp, vUp]);
1483
+ return;
1484
+ }
1472
1485
  const crossProduct = vUp.crossProduct(sideVector);
1486
+ if (crossProduct.length() < 1e-10) {
1487
+ this.deleteAll([pPoint, pTarget, pUp, vUp, crossProduct]);
1488
+ return;
1489
+ }
1473
1490
  const crossProductNormal = crossProduct.normalize();
1474
1491
  viewParams.upVector = crossProductNormal.toArray();
1475
- this.deleteAll([pPoint, pTarget, pCenter, pUp, vUp, crossProduct, crossProductNormal]);
1492
+ this.deleteAll([pPoint, pTarget, pUp, vUp, crossProduct, crossProductNormal]);
1476
1493
  }
1477
1494
  }
1478
1495
  calculateYOrbit(viewParams, delta, sideVector) {
@@ -1499,7 +1516,15 @@ class OrbitAction {
1499
1516
  const side = sideVector.rotateBy(delta, zAxis);
1500
1517
  const pUp = pTarget.sub(pPoint);
1501
1518
  const vUp = pUp.asVector();
1519
+ if (vUp.length() < 1e-10) {
1520
+ this.deleteAll([zAxis, pTarget, pPoint, side, pUp, vUp]);
1521
+ return;
1522
+ }
1502
1523
  const cross = vUp.crossProduct(side);
1524
+ if (cross.length() < 1e-10) {
1525
+ this.deleteAll([zAxis, pTarget, pPoint, side, pUp, vUp, cross]);
1526
+ return;
1527
+ }
1503
1528
  const crossNormal = cross.normalize();
1504
1529
  viewParams.upVector = crossNormal.toArray();
1505
1530
  this.deleteAll([zAxis, pTarget, pPoint, side, pUp, vUp, cross, crossNormal]);
@@ -2136,7 +2161,6 @@ function regenerateAll(viewer) {
2136
2161
  function resetView(viewer) {
2137
2162
  if (!viewer.visualizeJs)
2138
2163
  return;
2139
- const reset = viewer.getComponent("ResetComponent");
2140
2164
  viewer.executeCommand("setActiveDragger");
2141
2165
  viewer.executeCommand("clearSlices");
2142
2166
  viewer.executeCommand("clearOverlay");
@@ -2145,7 +2169,7 @@ function resetView(viewer) {
2145
2169
  viewer.executeCommand("showAll");
2146
2170
  viewer.executeCommand("explode", 0);
2147
2171
  viewer.executeCommand("zoomToExtents", true);
2148
- reset.resetCameraPosition();
2172
+ viewer.executeCommand("k3DViewSW");
2149
2173
  viewer.emit({ type: "resetview" });
2150
2174
  }
2151
2175
 
@@ -3532,7 +3556,7 @@ class Viewer extends EventEmitter2 {
3532
3556
  return this._markup;
3533
3557
  }
3534
3558
  configure(params) {
3535
- this._visualizeJsUrl = params.visualizeJsUrl || "https://public-fhemb7e3embacwec.z02.azurefd.net/libs/visualizejs/26.9/Visualize.js";
3559
+ this._visualizeJsUrl = params.visualizeJsUrl || "https://public-fhemb7e3embacwec.z02.azurefd.net/libs/visualizejs/master/Visualize.js";
3536
3560
  this._crossOrigin = params.crossOrigin;
3537
3561
  return this;
3538
3562
  }