add leave stock to tool shadow travel boundaries
This commit is contained in:
parent
24af93550d
commit
6417dd5678
2 changed files with 8 additions and 7 deletions
|
|
@ -115,7 +115,7 @@ class OpArea extends CamOp {
|
|||
let pinc = 1 / polys.length;
|
||||
for (let area of polys) {
|
||||
let bounds = area.getBounds3D();
|
||||
let ts_off = toolDiam / 2 - ts_eps;
|
||||
let ts_off = toolDiam / 2 - ts_eps + (op.leave_xy ?? 0);
|
||||
let offopt = {
|
||||
arc: 250,
|
||||
join: roundSharps ? ClipperLib.JoinType.jtRound : undefined,
|
||||
|
|
|
|||
|
|
@ -484,14 +484,15 @@ export async function prepare_one(widget, settings, print, firstPoint, update) {
|
|||
}
|
||||
} else
|
||||
// check move against a known boundary (pocketing)
|
||||
if (isMove && travelBounds) {
|
||||
if (isMove && (travelBounds || lastTravelBounds)) {
|
||||
// travel boundary "hangover" from last area op when traveling between
|
||||
let check = lastTravelBounds ? [...lastTravelBounds, ...travelBounds] : travelBounds;
|
||||
let check = [];
|
||||
if (travelBounds) check.push(...travelBounds);
|
||||
if (lastTravelBounds) check.push(...lastTravelBounds);
|
||||
let from = toWidgetCoords(printPoint);
|
||||
let to = toWidgetCoords(point);
|
||||
for (let poly of check) {
|
||||
let ints = poly.intersections(
|
||||
toWidgetCoords(printPoint),
|
||||
toWidgetCoords(point)
|
||||
);
|
||||
let ints = poly.intersections(from, to);
|
||||
if (ints.length) {
|
||||
if (debug) console.log({ ints, poly, deltaXY, deltaZ });
|
||||
upAndOver = "bounds";
|
||||
|
|
|
|||
Loading…
Reference in a new issue