fix op-area rotated vs unrotated area input (auto vs user)

This commit is contained in:
Stewart Allen 2026-01-04 11:24:26 -05:00
commit 1193c3313e
3 changed files with 8 additions and 1 deletions

View file

@ -76,7 +76,9 @@ class OpArea extends CamOp {
let poly = newPolygon().fromArray(arr);
aminz = Math.min(aminz, poly.minZ());
polys.push(poly);
if (axisIndex) {
// user-selected traces are not rotated
// those based on shadow (outline, rough) are
if (!op.rotated && axisIndex) {
// traces come from unrotatead widget edges
poly.applyRotations(axisIndex);
}

View file

@ -39,6 +39,7 @@ class OpOutline extends CamOp {
rate,
rename: rename ?? "outline",
revbones,
rotated: true,
smooth: 0,
spindle,
steps: op.wide ? op.steps + 1 : 1,
@ -66,6 +67,7 @@ class OpOutline extends CamOp {
rate,
rename: rename ?? "outline",
revbones,
rotated: true,
smooth: 0,
spindle,
surfaces: {},

View file

@ -48,6 +48,7 @@ class OpRough extends CamOp {
leave_z: op.leavez,
ov_botz: op.ov_botz,
ov_topz: op.ov_topz,
rotated: true,
areas: { [widget.id]: areas.map(p => p.toArray()) },
surfaces: {}
}));
@ -72,6 +73,7 @@ class OpRough extends CamOp {
leave_z: op.leavez,
ov_botz: op.ov_botz,
ov_topz: op.ov_topz,
rotated: true,
areas: { [widget.id]: areas.map(p => p.toArray()) },
surfaces: {},
flats: Object.keys(slicer.zFlat).map(v => parseFloat(v)).sort((a,b) => b-a),
@ -96,6 +98,7 @@ class OpRough extends CamOp {
outline: !op.omitthru,
ov_botz: op.ov_botz,
ov_topz: op.ov_topz,
rotated: true,
areas: { [widget.id]: areas.map(p => p.toArray()) },
surfaces: {},
thru: true