diff --git a/src/kiri-mode/cam/ops.js b/src/kiri-mode/cam/ops.js index 3d3b98a3..63c84554 100644 --- a/src/kiri-mode/cam/ops.js +++ b/src/kiri-mode/cam/ops.js @@ -698,10 +698,6 @@ class OpOutline extends CamOp { setTool(op.tool, op.rate, op.plunge); setSpindle(op.spindle); - if (!process.camOutlinePocket) { - cutdir = !cutdir; - } - // printpoint becomes NaN in engine mode. not sure why but this fixes it if(Object.values(printPoint).some(v=>Number.isNaN(v))){ printPoint = newPoint(0,0,0); diff --git a/src/kiri-mode/cam/prepare.js b/src/kiri-mode/cam/prepare.js index eb13ec12..507c2f61 100644 --- a/src/kiri-mode/cam/prepare.js +++ b/src/kiri-mode/cam/prepare.js @@ -547,6 +547,7 @@ function prepEach(widget, settings, print, firstPoint, update) { if (depthFirst) { depthData.push(polys); } else { + // if not depth first, output the polys in slice order printPoint = poly2polyEmit(polys, printPoint, function(poly, index, count) { poly.forEachPoint(function(point, pidx, points, offset) { // scale speed of first cutting poly since it engages the full bit @@ -564,10 +565,12 @@ function prepEach(widget, settings, print, firstPoint, update) { } if (depthFirst) { + // get inside vals (the positive ones) let ins = depthData.map(a => a.filter(p => !isNeg(p.depth))); let itops = ins.map(level => { return POLY.nest(level.filter(poly => poly.depth === 0).clone()); }); + // get outside vals (the negative ones) let outs = depthData.map(a => a.filter(p => isNeg(p.depth))); let otops = outs.map(level => { return POLY.nest(level.filter(poly => poly.depth === 0).clone()); diff --git a/src/kiri/conf.js b/src/kiri/conf.js index 36400e98..ec097ffb 100644 --- a/src/kiri/conf.js +++ b/src/kiri/conf.js @@ -215,7 +215,6 @@ const renamed = { drillDwell: "camDrillDwell", drillLift: "camDrillLift", drillingOn: "camDrillingOn", - camPocketOnlyFinish: "camOutlinePocket", camWideCutout: "camOutlineWide", outputClockwise: "camConventional" };