rm-graphical-computing 1.0.54 → 1.0.57

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/dist/index.js CHANGED
@@ -1566,7 +1566,7 @@ var De = async (t, n, r, i) => {
1566
1566
  let l = 0, u = [], d = [], f = [], p = [], m = .2;
1567
1567
  for (let i = 0; i < t.length; i++) {
1568
1568
  let a = t[i];
1569
- if (a.doorAndBeamData = [], !a.mergeCheckRegion || a.mergeCheckRegion.length == 0) continue;
1569
+ if (a.noDetection || (a.doorAndBeamData = [], !a.mergeCheckRegion || a.mergeCheckRegion.length == 0)) continue;
1570
1570
  a.completePointAreaPercentage = -1;
1571
1571
  let o = new e.Box3();
1572
1572
  o.setFromPoints(a.originalPoints);
@@ -1646,7 +1646,7 @@ var De = async (t, n, r, i) => {
1646
1646
  }
1647
1647
  }
1648
1648
  }
1649
- if (i == 33 && console.log("1", u, f, a.length - b), u != Infinity && u < 2 && a.length - b > .2 && u < b * 3) t[d].length > .25 && b + u > .5 && (F = !0, n < c ? (A = A.addScaledVector(s, u), M = M.addScaledVector(s, u)) : (k = k.addScaledVector(s, u), P = P.addScaledVector(s, u)));
1649
+ if (u != Infinity && u < 2 && a.length - b > .2 && u < b * 3) t[d].length > .25 && b + u > .5 && (F = !0, n < c ? (A = A.addScaledVector(s, u), M = M.addScaledVector(s, u)) : (k = k.addScaledVector(s, u), P = P.addScaledVector(s, u)));
1650
1650
  else if (!f && !p && a.length - b > .1) continue;
1651
1651
  } else continue;
1652
1652
  }
@@ -1681,7 +1681,7 @@ var De = async (t, n, r, i) => {
1681
1681
  }
1682
1682
  }
1683
1683
  }
1684
- if (i == 33 && console.log("2", u, f), u != Infinity && u < 2 && a.length - b > .2 && u < b * 3) t[d].length > .25 && b + u > .5 && (F = !0, o < c ? (A = A.addScaledVector(s, u), M = M.addScaledVector(s, u)) : (k = k.addScaledVector(s, u), P = P.addScaledVector(s, u)));
1684
+ if (u != Infinity && u < 2 && a.length - b > .2 && u < b * 3) t[d].length > .25 && b + u > .5 && (F = !0, o < c ? (A = A.addScaledVector(s, u), M = M.addScaledVector(s, u)) : (k = k.addScaledVector(s, u), P = P.addScaledVector(s, u)));
1685
1685
  else if (!f && !p && a.length - b > .1) continue;
1686
1686
  } else continue;
1687
1687
  }
@@ -4110,11 +4110,12 @@ var Kn = (t) => {
4110
4110
  datas: [p]
4111
4111
  });
4112
4112
  }
4113
+ let i = -Infinity;
4113
4114
  if (r.size > 0) {
4114
4115
  let e = [];
4115
4116
  for (let [t, n] of r.entries()) {
4116
- let { num: t, datas: r } = n;
4117
- t > 3e3 && e.push(...r);
4117
+ let { num: r, datas: a } = n;
4118
+ r > 3e3 && (t > i && (i = t), e.push(...a));
4118
4119
  }
4119
4120
  for (let t = 0; t < n.length; t++) if (n[t].type == "floor") {
4120
4121
  n[t].array = e;
@@ -4122,27 +4123,29 @@ var Kn = (t) => {
4122
4123
  }
4123
4124
  }
4124
4125
  for (let e = 0; e < n.length; e++) {
4125
- let t = n[e].array, r = [], i = [];
4126
+ let t = n[e].array, r = [], a = [];
4126
4127
  for (let e = 0; e < t.length; e++) {
4127
4128
  if (t[e].obb == null || r.includes(e)) continue;
4128
4129
  let n = {
4129
4130
  ...t[e],
4130
4131
  obb: t[e].obb.clone()
4131
4132
  };
4132
- for (let i = e + 1; i < t.length; i++) if (!(t[i].obb == null || r.includes(i)) && n.obb.intersectsOBB(t[i].obb)) {
4133
- r.push(i), n.points.push(...t[i].points), n.path = gt(n.points.map((e) => [e.x, e.y]));
4134
- let a = Wn(n.points);
4135
- n.h = a.h, n.minz = a.minz, n.maxz = a.maxz, n.center = {
4136
- x: a.x,
4137
- y: a.y,
4138
- z: a.z
4139
- }, n.obb = Gn(n.path, n.center, n.h, (n.maxz + n.minz) / 2), n.positionArr.push(...t[i].positionArr), i = e;
4133
+ for (let a = e + 1; a < t.length; a++) if (!(t[a].obb == null || r.includes(a)) && n.obb.intersectsOBB(t[a].obb)) {
4134
+ r.push(a);
4135
+ for (let e = 0; e < t[a].points.length; e++) (t[a].points[e].z > i && t[a].points[e].z - i > .1 || n.type == "floor") && n.points.push(t[a].points[e]);
4136
+ n.path = gt(n.points.map((e) => [e.x, e.y]));
4137
+ let o = Wn(n.points);
4138
+ n.h = o.h, n.minz = o.minz, n.maxz = o.maxz, n.center = {
4139
+ x: o.x,
4140
+ y: o.y,
4141
+ z: o.z
4142
+ }, n.obb = Gn(n.path, n.center, n.h, (n.maxz + n.minz) / 2), n.positionArr.push(...t[a].positionArr), a = e;
4140
4143
  }
4141
- n.path.length > t[e].path.length && (r.push(e), i.push(n));
4144
+ n.path.length > t[e].path.length && (r.push(e), a.push(n));
4142
4145
  }
4143
- let a = [];
4144
- for (let e = 0; e < t.length; e++) r.includes(e) || a.push(t[e]);
4145
- a.push(...i), n[e].array = a;
4146
+ let o = [];
4147
+ for (let e = 0; e < t.length; e++) r.includes(e) || o.push(t[e]);
4148
+ o.push(...a), n[e].array = o;
4146
4149
  }
4147
4150
  for (let t = 0; t < n.length; t++) {
4148
4151
  let r = n[t].type;
@@ -4258,10 +4261,10 @@ var Kn = (t) => {
4258
4261
  }
4259
4262
  }
4260
4263
  for (let e = 0; e < n.length; e++) n[e].array = n[e].array.filter((e) => !e.isDel);
4261
- let i = [];
4264
+ let a = [];
4262
4265
  for (let t = 0; t < n.length; t++) {
4263
4266
  let r = n[t].array;
4264
- for (let t = 0; t < r.length; t++) i.push({
4267
+ for (let t = 0; t < r.length; t++) a.push({
4265
4268
  obbBox: r[t].obb,
4266
4269
  box: new e.Box3().setFromPoints(r[t].points),
4267
4270
  category: r[t].type,
@@ -4276,7 +4279,7 @@ var Kn = (t) => {
4276
4279
  positionArr: r[t].positionArr
4277
4280
  });
4278
4281
  }
4279
- return i;
4282
+ return a;
4280
4283
  };
4281
4284
  //#endregion
4282
4285
  //#region src/wall-window-matcher/utils.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rm-graphical-computing",
3
- "version": "1.0.54",
3
+ "version": "1.0.57",
4
4
  "description": "Three.js wall segment processing utilities.",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.js",