diff --git a/js/kiri-driver-fdm.js b/js/kiri-driver-fdm.js index 436c69d5..97b841a8 100644 --- a/js/kiri-driver-fdm.js +++ b/js/kiri-driver-fdm.js @@ -107,6 +107,8 @@ let gs_kiri_fdm = exports; } function onSliceDone(slices) { + slices = slices.filter(slice => slice.tops.length); + widget.slices = slices; if (!slices) return; diff --git a/js/kiri-driver-sla.js b/js/kiri-driver-sla.js index 2469abd3..8492a089 100644 --- a/js/kiri-driver-sla.js +++ b/js/kiri-driver-sla.js @@ -59,7 +59,8 @@ let gs_kiri_sla = exports; SLICER.sliceWidget(widget, { height: process.slaSlice || 0.05 }, function(slices) { - widget.slices = slices.filter(slice => slice.tops.length); + slices = slices.filter(slice => slice.tops.length); + widget.slices = slices; // reset for solids and support projections slices.forEach(function(slice) { slice.invalidateFill(); diff --git a/js/kiri-slice.js b/js/kiri-slice.js index 45ba7c3e..f3385a94 100644 --- a/js/kiri-slice.js +++ b/js/kiri-slice.js @@ -849,7 +849,7 @@ let gs_kiri_slice = exports; * @param {Polygon[]} polys */ PRO.addSolidFills = function(polys) { - this.solids.poly.appendAll(polys); + if (this.solids.poly) this.solids.poly.appendAll(polys); }; /**