From 4a3b77806948075d4c64274d271004f82136c8f5 Mon Sep 17 00:00:00 2001 From: Stewart Allen Date: Wed, 9 Jun 2021 09:12:07 -0400 Subject: [PATCH] fix vertically stacked supports intersecting self --- src/mode/fdm/slice.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mode/fdm/slice.js b/src/mode/fdm/slice.js index e6e91b1c..228d0be8 100644 --- a/src/mode/fdm/slice.js +++ b/src/mode/fdm/slice.js @@ -1405,7 +1405,7 @@ for (let added of add) { let p2 = new THREE.Vector2(point.x, point.y); let pm = new THREE.Vector2(added.mid.x, added.mid.y); - if (p2.distanceTo(pm) < s4) { + if (Math.abs(point.z - added.from.z) < s2 && p2.distanceTo(pm) < s4) { return; } } @@ -1438,7 +1438,8 @@ } // skip tiny faces let area = BASE.newPolygon().addPoints([a,b,c]).area(); - if (BASE.newPolygon().addPoints([a,b,c]).area() < min) { + let poly = BASE.newPolygon().addPoints([a,b,c]); + if (poly.area() < min && poly.perimeter() < size) { continue; } // skip faces on bed