fix: exception for short moves in contouring for safe Z
fix: jellybox device name
This commit is contained in:
parent
09eeb4edc0
commit
232ac76b98
7 changed files with 13 additions and 13 deletions
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"deviceName": "IMADE3D JellyBOX 1 NO.4",
|
||||
"deviceName": "IMADE3D JellyBOX 1 N0.4",
|
||||
"bedWidth": 177,
|
||||
"bedDepth": 155,
|
||||
"maxHeight": 140,
|
||||
|
|
@ -32,8 +32,6 @@
|
|||
"G21 ;metric values",
|
||||
"G90 ;absolute positioning",
|
||||
"M107 ;start with the fan off",
|
||||
"M190 S45 ;wait for the bed to reach 45C (for bed leveling)",
|
||||
"M109 S180 ;wait for the extruder to reach 180C (for bed leveling)",
|
||||
";",
|
||||
"; === Homing and bed leveling (if necessary)",
|
||||
";",
|
||||
|
|
|
|||
|
|
@ -32,8 +32,6 @@
|
|||
"G21 ;metric values",
|
||||
"G90 ;absolute positioning",
|
||||
"M107 ;start with the fan off",
|
||||
"M190 S45 ;wait for the bed to reach 45C (for bed leveling)",
|
||||
"M109 S180 ;wait for the extruder to reach 180C (for bed leveling)",
|
||||
";",
|
||||
"; === Homing and bed leveling (if necessary)",
|
||||
";",
|
||||
|
|
|
|||
|
|
@ -32,8 +32,6 @@
|
|||
"G21 ;metric values",
|
||||
"G90 ;absolute positioning",
|
||||
"M107 ;start with the fan off",
|
||||
"M190 S45 ;wait for the bed to reach 45C (for bed leveling)",
|
||||
"M109 S180 ;wait for the extruder to reach 180C (for bed leveling)",
|
||||
";",
|
||||
"; === Homing and bed leveling (if necessary)",
|
||||
";",
|
||||
|
|
|
|||
|
|
@ -32,8 +32,6 @@
|
|||
"G21 ;metric values",
|
||||
"G90 ;absolute positioning",
|
||||
"M107 ;start with the fan off",
|
||||
"M190 S45 ;wait for the bed to reach 45C (for bed leveling)",
|
||||
"M109 S180 ;wait for the extruder to reach 180C (for bed leveling)",
|
||||
";",
|
||||
"; === Homing and bed leveling (if necessary)",
|
||||
";",
|
||||
|
|
|
|||
|
|
@ -32,8 +32,6 @@
|
|||
"G21 ;metric values",
|
||||
"G90 ;absolute positioning",
|
||||
"M107 ;start with the fan off",
|
||||
"M190 S45 ;wait for the bed to reach 45C (for bed leveling)",
|
||||
"M109 S180 ;wait for the extruder to reach 180C (for bed leveling)",
|
||||
";",
|
||||
"; === Homing and bed leveling (if necessary)",
|
||||
";",
|
||||
|
|
|
|||
|
|
@ -1421,11 +1421,15 @@ class OpPocket extends CamOp {
|
|||
|
||||
prepare(ops, progress) {
|
||||
let { op, state, sliceOut } = this;
|
||||
let { setTool, setSpindle } = ops;
|
||||
let { setTool, setSpindle, setTolerance } = ops;
|
||||
|
||||
setTool(op.tool, op.rate);
|
||||
setSpindle(op.spindle);
|
||||
|
||||
if (this.topo) {
|
||||
setTolerance(this.topo.tolerance);
|
||||
}
|
||||
|
||||
let i=0, l=sliceOut.length;
|
||||
for (let slice of sliceOut.filter(s => s.camLines)) {
|
||||
ops.emitTrace(slice);
|
||||
|
|
|
|||
|
|
@ -100,6 +100,7 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
|||
layerOut = [],
|
||||
printPoint,
|
||||
isNewMode,
|
||||
isContour,
|
||||
isRough,
|
||||
isLathe,
|
||||
tool,
|
||||
|
|
@ -151,6 +152,10 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
|||
// non-zero means contouring
|
||||
function setTolerance(dist) {
|
||||
tolerance = dist;
|
||||
if (isContour) {
|
||||
// avoid moves to safe Z when contouring short steps
|
||||
toolDiamMove = currentOp.step * toolDiam * 1.5;
|
||||
}
|
||||
}
|
||||
|
||||
function setPrintPoint(point) {
|
||||
|
|
@ -362,7 +367,7 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
|||
// for longer moves, check the terrain to see if we need to go up and over
|
||||
const bigXY = (deltaXY > moveLen && !lasering);
|
||||
const bigZ = (deltaZ > toolDiam/2 && deltaXY > tolerance);
|
||||
const midZ = (tolerance && absDeltaZ >= tolerance) && currentOp.type !== 'contour';
|
||||
const midZ = (tolerance && absDeltaZ >= tolerance) && !isContour;
|
||||
|
||||
if (bigXY || bigZ || midZ) {
|
||||
let maxz = getZClearPath(
|
||||
|
|
@ -476,6 +481,7 @@ function prepEach(widget, settings, print, firstPoint, update) {
|
|||
currentOp = op.op;
|
||||
isLathe = currentOp.type === 'lathe';
|
||||
isRough = currentOp.type === 'rough';
|
||||
isContour = currentOp.type === 'contour' || (currentOp.type === 'pocket' && currentOp.contour);
|
||||
let weight = op.weight();
|
||||
newLayer(op.op);
|
||||
op.prepare(ops, (progress, message) => {
|
||||
|
|
|
|||
Loading…
Reference in a new issue