add cam level option to clear entire stock

This commit is contained in:
Stewart Allen 2024-08-28 11:34:30 -04:00
commit fd7e5a1f0e
4 changed files with 11 additions and 4 deletions

View file

@ -1287,7 +1287,8 @@ CAM.init = function(kiri, api) {
step: 'camLevelOver',
rate: 'camLevelSpeed',
down: 'camLevelDown',
over: 'camLevelOver'
over: 'camLevelOver',
stock: 'camLevelStock'
}).inputs = {
tool: UC.newSelect(LANG.cc_tool, {}, "tools"),
sep: UC.newBlank({class:"pop-sep"}),
@ -1296,6 +1297,8 @@ CAM.init = function(kiri, api) {
rate: UC.newInput(LANG.cc_feed_s, {title:LANG.cc_feed_l, convert:UC.toInt, units:true}),
down: UC.newInput(LANG.cc_loff_s, {title:LANG.cc_loff_l, convert:UC.toFloat, units:true}),
over: UC.newInput(LANG.cc_lxyo_s, {title:LANG.cc_lxyo_l, convert:UC.toFloat, units:true}),
sep: UC.newBlank({class:"pop-sep"}),
stock: UC.newBoolean(LANG.cc_lsto_s, undefined, {title:LANG.cc_lsto_l}),
};
createPopOp('rough', {

View file

@ -124,9 +124,10 @@ class OpLevel extends CamOp {
updateToolDiams(toolDiam);
let points = [];
let clear = POLY.outer(POLY.offset(tshadow, toolDiam * (op.over || 0)));
// let tabsub = [];
// POLY.subtract(clear, POLY.offset(tabs.map(t => t.poly), toolDiam/2), tabsub, []);
let clear = op.stock ?
[ newPolygon().centerRectangle({x:0,y:0,z:0}, stock.x, stock.y) ] :
POLY.outer(POLY.offset(tshadow, toolDiam * (op.over || 0)));
POLY.fillArea(clear, 90, stepOver, points);
let lines = this.lines = [];