rm-graphical-computing-node 1.0.37 → 1.0.38
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.mjs +35 -10
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -5590,6 +5590,7 @@ var getColLine = (lines, runDataList) => {
|
|
|
5590
5590
|
if (result[i].uuids.length < 4 || result[i].area < minArea || result[i].area > maxArea)
|
|
5591
5591
|
continue;
|
|
5592
5592
|
let isRect = false;
|
|
5593
|
+
let overlapWallLines = [];
|
|
5593
5594
|
for (let j = 0; j < result[i].lineIndexes.length; j++) {
|
|
5594
5595
|
let length1 = lines[result[i].lineIndexes[j]].length;
|
|
5595
5596
|
if (length1 < minColLineLength || length1 > maxColLineLength)
|
|
@@ -8766,10 +8767,6 @@ var getMergeMeaning = (allProjectionResults, averagePz2, pointCloudCluster = nul
|
|
|
8766
8767
|
const f1 = calculateClosePointWithOBB(array2[k].points, obb1);
|
|
8767
8768
|
const f2 = calculateClosePointWithOBB(array1[e].points, obb2);
|
|
8768
8769
|
const isMaxBox = compareBoxVolume(obb1, obb2);
|
|
8769
|
-
if (f2 >= 0.5 && isMaxBox == -1 && type1 !== "Staircase" && type2 !== "Staircase") {
|
|
8770
|
-
array1[e].isDel = true;
|
|
8771
|
-
break;
|
|
8772
|
-
}
|
|
8773
8770
|
if (type1 !== "wall" && type1 !== "floor" && type1 !== "roof") {
|
|
8774
8771
|
if (type1 === "window") {
|
|
8775
8772
|
if (type2 === "balcony railing" && containsObbPoints(obb1, array2[k].points)) {
|
|
@@ -8820,19 +8817,47 @@ var getMergeMeaning = (allProjectionResults, averagePz2, pointCloudCluster = nul
|
|
|
8820
8817
|
break;
|
|
8821
8818
|
}
|
|
8822
8819
|
} else if (type1 === "door") {
|
|
8823
|
-
if (type2 === "window"
|
|
8824
|
-
|
|
8825
|
-
|
|
8820
|
+
if (type2 === "window") {
|
|
8821
|
+
if (type2 === "window" && containsObbPoints(obb1, array2[k].points)) {
|
|
8822
|
+
array1[e].isDel = true;
|
|
8823
|
+
break;
|
|
8824
|
+
}
|
|
8825
|
+
if (type2 === "window" && containsObbPoints(obb2, array1[e].points)) {
|
|
8826
|
+
array1[e].isDel = true;
|
|
8827
|
+
break;
|
|
8828
|
+
}
|
|
8829
|
+
if (type2 === "window sill" && containsObbPoints(obb1, array2[k].points)) {
|
|
8830
|
+
array1[e].isDel = true;
|
|
8831
|
+
break;
|
|
8832
|
+
}
|
|
8833
|
+
if (type2 === "window sill" && containsObbPoints(obb2, array1[e].points)) {
|
|
8834
|
+
array1[e].isDel = true;
|
|
8835
|
+
break;
|
|
8836
|
+
}
|
|
8837
|
+
} else {
|
|
8838
|
+
if (containsObbPoints(obb1, array2[k].points)) {
|
|
8839
|
+
array2[k].isDel = true;
|
|
8840
|
+
continue;
|
|
8841
|
+
}
|
|
8842
|
+
if (containsObbPoints(obb2, array1[e].points)) {
|
|
8843
|
+
array2[k].isDel = true;
|
|
8844
|
+
continue;
|
|
8845
|
+
}
|
|
8846
|
+
if (obb1.intersectsOBB(obb2)) {
|
|
8847
|
+
array2[k].isDel = true;
|
|
8848
|
+
continue;
|
|
8849
|
+
}
|
|
8826
8850
|
}
|
|
8827
|
-
|
|
8851
|
+
} else if (type2 === "door") {
|
|
8852
|
+
if (containsObbPoints(obb1, array2[k].points)) {
|
|
8828
8853
|
array1[e].isDel = true;
|
|
8829
8854
|
break;
|
|
8830
8855
|
}
|
|
8831
|
-
if (
|
|
8856
|
+
if (containsObbPoints(obb2, array1[e].points)) {
|
|
8832
8857
|
array1[e].isDel = true;
|
|
8833
8858
|
break;
|
|
8834
8859
|
}
|
|
8835
|
-
if (
|
|
8860
|
+
if (obb1.intersectsOBB(obb2)) {
|
|
8836
8861
|
array1[e].isDel = true;
|
|
8837
8862
|
break;
|
|
8838
8863
|
}
|