add cut thru option to trace
This commit is contained in:
parent
6b85e44b67
commit
d9e5f2d4f8
5 changed files with 9 additions and 3 deletions
1
notes.md
1
notes.md
|
|
@ -68,6 +68,7 @@
|
|||
|
||||
# CAM
|
||||
|
||||
* `B` feed rate for next tool set before tool change (push/pop feed rates?)
|
||||
* `B` tab cuts cause loss of direction, parenting, depth, and it's hard to fix
|
||||
* `B` tabs do not properly track widget mirror events
|
||||
* `B` tabs are not cut to exact height
|
||||
|
|
|
|||
|
|
@ -1301,6 +1301,7 @@ CAM.init = function(kiri, api) {
|
|||
tool: 'camTraceTool',
|
||||
step: 'camTraceOver',
|
||||
down: 'camTraceDown',
|
||||
thru: 'camTraceThru',
|
||||
rate: 'camTraceSpeed',
|
||||
plunge: 'camTracePlunge',
|
||||
bottom: 'camTraceBottom',
|
||||
|
|
@ -1314,6 +1315,7 @@ CAM.init = function(kiri, api) {
|
|||
spindle: UC.newInput(LANG.cc_spnd_s, {title:LANG.cc_spnd_l, convert:UC.toInt, show:hasSpindle}),
|
||||
step: UC.newInput(LANG.cc_sovr_s, {title:LANG.cc_sovr_l, convert:UC.toFloat, bound:UC.bound(0.01,1.0), show:(op) => popOp.trace.rec.mode === "clear"}),
|
||||
down: UC.newInput(LANG.cc_sdwn_s, {title:LANG.cc_sdwn_l, convert:UC.toFloat, units:true}),
|
||||
thru: UC.newInput(LANG.cc_thru_s, {title:LANG.cc_thru_l, convert:UC.toFloat, units:true}),
|
||||
rate: UC.newInput(LANG.cc_feed_s, {title:LANG.cc_feed_l, convert:UC.toInt, units:true}),
|
||||
plunge: UC.newInput(LANG.cc_plng_s, {title:LANG.cc_plng_l, convert:UC.toInt, units:true}),
|
||||
sep: UC.newBlank({class:"pop-sep", modes:MCAM, show:zBottom, poop:true }),
|
||||
|
|
|
|||
|
|
@ -818,7 +818,7 @@ class OpTrace extends CamOp {
|
|||
|
||||
slice(progress) {
|
||||
let { op, state } = this;
|
||||
let { tool, rate, down, plunge, offset } = op;
|
||||
let { tool, rate, down, plunge, offset, thru } = op;
|
||||
let { settings, widget, addSlices, zMax, zTop, zThru, tabs } = state;
|
||||
let { updateToolDiams, cutTabs, cutPolys, healPolys, color } = state;
|
||||
let { process, stock } = settings;
|
||||
|
|
@ -973,7 +973,7 @@ class OpTrace extends CamOp {
|
|||
}
|
||||
for (let pi of poly)
|
||||
if (down) {
|
||||
let zto = pi.getZ();
|
||||
let zto = pi.getZ() - thru;
|
||||
if (zThru && similar(zto,0)) {
|
||||
zto -= zThru;
|
||||
}
|
||||
|
|
@ -989,7 +989,7 @@ class OpTrace extends CamOp {
|
|||
const zbo = widget.track.top - widget.track.box.d;
|
||||
let zmap = {};
|
||||
for (let poly of polys) {
|
||||
let z = poly.getZ();
|
||||
let z = poly.getZ() - thru;
|
||||
if (op.bottom && camZBottom) {
|
||||
z = Math.max(z, camZBottom) - zbo;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -501,6 +501,7 @@ const conf = exports({
|
|||
camTraceType: "follow",
|
||||
camTraceOver: 0.5,
|
||||
camTraceDown: 0,
|
||||
camTraceThru: 0,
|
||||
camTraceSpeed: 250,
|
||||
camTracePlunge: 200,
|
||||
camTraceLines: false,
|
||||
|
|
|
|||
|
|
@ -446,6 +446,8 @@ self.kiri.lang['en-us'] = {
|
|||
cc_sovr_l: ["a fraction of tool diameter between 0 and 1. values greater than 0.5 may result in uncut areas from acute angle offsets."],
|
||||
cc_sdwn_s: "step down",
|
||||
cc_sdwn_l: ["step down depth","for each pass","in workspace units","0 to disable"],
|
||||
cc_thru_s: "cut thru",
|
||||
cc_thru_l: ["additional cut depth below trace bottom"],
|
||||
cc_feed_s: "feed rate",
|
||||
cc_feed_l: ["max cutting speed in","workspace units / minute"],
|
||||
cc_plng_s: "plunge rate",
|
||||
|
|
|
|||
Loading…
Reference in a new issue