decrease cutting speed when entire tool is engaged in roughing
This commit is contained in:
parent
926d6929bd
commit
aedf73ba95
3 changed files with 7 additions and 5 deletions
1
notes.md
1
notes.md
|
|
@ -111,7 +111,6 @@
|
||||||
* `P` log Z interpolation for contour XYZ moves
|
* `P` log Z interpolation for contour XYZ moves
|
||||||
* `P` option to start with the smallest poly by area on layer change
|
* `P` option to start with the smallest poly by area on layer change
|
||||||
* `P` refactor slicing engine to add minion threading
|
* `P` refactor slicing engine to add minion threading
|
||||||
* `P` decrease cutting speed when entire tool is engaged (start of roughing, rest machining)
|
|
||||||
* `P` port arc code from FDM export to CAM export
|
* `P` port arc code from FDM export to CAM export
|
||||||
* `P` redo all path route / planning in prepare to account for terrain before camOut
|
* `P` redo all path route / planning in prepare to account for terrain before camOut
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ Full docs @ https://docs.grid.space/projects/kiri-moto
|
||||||
# Release 3.9
|
# Release 3.9
|
||||||
|
|
||||||
* more graceful handling of security contexts blocking SharedArrayBuffer
|
* more graceful handling of security contexts blocking SharedArrayBuffer
|
||||||
|
* CAM decrease cutting speed when entire tool is engaged in roughing
|
||||||
* CAM add dogbones support to traces ops
|
* CAM add dogbones support to traces ops
|
||||||
* CAM add scripted contour filtering (to be extended to other ops)
|
* CAM add scripted contour filtering (to be extended to other ops)
|
||||||
* CAM add calculation of taper length from angle
|
* CAM add calculation of taper length from angle
|
||||||
|
|
|
||||||
|
|
@ -100,6 +100,7 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
||||||
layerOut = [],
|
layerOut = [],
|
||||||
printPoint,
|
printPoint,
|
||||||
isNewMode,
|
isNewMode,
|
||||||
|
isRough,
|
||||||
isLathe,
|
isLathe,
|
||||||
tool,
|
tool,
|
||||||
toolType,
|
toolType,
|
||||||
|
|
@ -294,7 +295,7 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function camOut(point, cut, moveLen = toolDiamMove) {
|
function camOut(point, cut, moveLen = toolDiamMove, factor = 1) {
|
||||||
point = point.clone();
|
point = point.clone();
|
||||||
point.x += wmx;
|
point.x += wmx;
|
||||||
point.y += wmy;
|
point.y += wmy;
|
||||||
|
|
@ -311,7 +312,7 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
||||||
nextIsMove = false;
|
nextIsMove = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
let rate = feedRate;
|
let rate = feedRate * factor;
|
||||||
|
|
||||||
// before first point, move cutting head to point above it
|
// before first point, move cutting head to point above it
|
||||||
// then set that new point as the lastPoint
|
// then set that new point as the lastPoint
|
||||||
|
|
@ -467,6 +468,7 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
||||||
nextIsMove = true;
|
nextIsMove = true;
|
||||||
currentOp = op.op;
|
currentOp = op.op;
|
||||||
isLathe = currentOp.type === 'lathe';
|
isLathe = currentOp.type === 'lathe';
|
||||||
|
isRough = currentOp.type === 'rough';
|
||||||
let weight = op.weight();
|
let weight = op.weight();
|
||||||
newLayer(op.op);
|
newLayer(op.op);
|
||||||
op.prepare(ops, (progress, message) => {
|
op.prepare(ops, (progress, message) => {
|
||||||
|
|
@ -493,12 +495,12 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
||||||
let last = null;
|
let last = null;
|
||||||
if (easeDown && poly.isClosed()) {
|
if (easeDown && poly.isClosed()) {
|
||||||
last = poly.forEachPointEaseDown(function(point, offset) {
|
last = poly.forEachPointEaseDown(function(point, offset) {
|
||||||
camOut(point.clone(), offset > 0);
|
camOut(point.clone(), offset > 0, undefined, isRough && count === 1 ? 0.5 : 1);
|
||||||
}, fromPoint);
|
}, fromPoint);
|
||||||
} else {
|
} else {
|
||||||
poly.forEachPoint(function(point, pidx, points, offset) {
|
poly.forEachPoint(function(point, pidx, points, offset) {
|
||||||
last = point;
|
last = point;
|
||||||
camOut(point.clone(), offset !== 0);
|
camOut(point.clone(), offset !== 0, undefined, isRough && count === 1 ? 0.5 : 1);
|
||||||
}, poly.isClosed(), index);
|
}, poly.isClosed(), index);
|
||||||
}
|
}
|
||||||
newLayer();
|
newLayer();
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue