diff --git a/js/kiri-driver-fdm.js b/js/kiri-driver-fdm.js index 6229dc21..823843ee 100644 --- a/js/kiri-driver-fdm.js +++ b/js/kiri-driver-fdm.js @@ -114,7 +114,7 @@ var gs_kiri_fdm = exports; ) && !spro.sliceVase; slice.doShells(spro.sliceShells, firstOffset, shellOffset, fillOffset, { vase: spro.sliceVase, - thin: spro.detectThinWalls + thin: false && spro.detectThinWalls }); if (solid) slice.doSolidLayerFill(fillSpacing, sliceFillAngle); sliceFillAngle += 90.0; diff --git a/js/kiri-print.js b/js/kiri-print.js index f8a78e05..f2330bba 100644 --- a/js/kiri-print.js +++ b/js/kiri-print.js @@ -570,6 +570,7 @@ var gs_kiri_print = exports; var p, p1, p2, dist, len, found, group, mindist, t1, t2, marked = 0, start = 0, + skip = false, lastIndex = -1; while (lines && marked < lines.length) { @@ -611,17 +612,18 @@ var gs_kiri_print = exports; continue; } - // set next starting point - lastIndex = p1.index; - - // mark as used (temporary) - p1.del = true; - p2.del = true; - marked += 2; - dist = startPoint.distTo2D(p1); len = p1.distTo2D(p2); + // go back to start when dist > retractDist + if (!skip && dist > retractDist) { + skip = true; + start = 0; + lastIndex = -1; + continue; + } + skip = false; + // if dist to new segment is less than thinWall // and segment length is less than thinWall then // just extrude to midpoint of next segment. this is @@ -650,8 +652,15 @@ var gs_kiri_print = exports; addOutput(preout, p2, fillMult, fillSpeed); } + // mark as used (temporarily) + p1.del = true; + p2.del = true; + + lastIndex = p1.index; startPoint = p2; + marked += 2; } + // clear delete marks so we can re-print later if (lines) lines.forEach(function(p) { p.del = false }); } diff --git a/js/kiri-slice.js b/js/kiri-slice.js index 7179a28a..0c0e3a8f 100644 --- a/js/kiri-slice.js +++ b/js/kiri-slice.js @@ -408,7 +408,7 @@ var gs_kiri_slice = exports; last = [top.poly].clone(true); top.traces = last; } else { - if (false && opt.thin) { + if (opt.thin) { var on1s2 = offset1 * 2, on2s2 = offsetN * 2; POLY.expand2( diff --git a/js/kiri.js b/js/kiri.js index 20f1e479..6e4f1568 100644 --- a/js/kiri.js +++ b/js/kiri.js @@ -99,12 +99,12 @@ self.kiri.license = exports.LICENSE; outputShortFactor: 1, outputFinishFactor: 1, outputCooling: 1, - detectThinWalls: 1, + // detectThinWalls: 1, antiBacklash: 1, - outputClockwise: 1, - outputOriginCenter: 1, - outputInvertX: 1, - outputInvertY: 1 + // outputClockwise: 1, + // outputOriginCenter: 1, + // outputInvertX: 1, + // outputInvertY: 1 } }, cam:{