add finish shell speed override

This commit is contained in:
Stewart Allen 2017-12-06 21:15:37 -05:00
commit 76eeb43b5c
3 changed files with 9 additions and 6 deletions

View file

@ -432,6 +432,9 @@ var gs_kiri_fdm = exports;
emitMM = emitPerMM * out.emit * dist;
if (layer === 0) {
emitMM = emitPerMMLayer1 * out.emit * dist;
} else if (out.speed && out.speed < process.outputFeedrate) {
// usually outer shell (finish speed) override
outMMM = out.speed * 60;
}
if (dist < shortDist) {
outMMM = shortMMM + ((outMMM - shortMMM) * (dist / shortDist));

View file

@ -332,16 +332,16 @@ var gs_kiri_print = exports;
first = true,
settings = this.settings,
shellMult = extrude || settings.process.outputShellMult,
shellSpeed = settings.process.outputShellSpeedMult || 1;
shellSpeed = settings.process.outputFinishrate || 0;
poly.forEachPoint(function(point) {
if (first) {
if (onfirst) onfirst(point);
// move from startPoint to point
addOutput(output, point, 0, 1);
addOutput(output, point, 0, 0);
first = false;
} else {
addOutput(output, point, shellMult, poly.depth == 0 ? shellSpeed : 1);
addOutput(output, point, shellMult, poly.depth == 0 ? shellSpeed : 0);
}
}, true, closest.index);

View file

@ -67,12 +67,12 @@ self.kiri.license = exports.LICENSE;
outputFanMax: 1,
outputBedTemp: 1,
outputFeedrate: 1,
outputFinishrate: 1,
outputSeekrate: 1,
outputShellMult: 1,
// outputShellSpeed: 1,
outputFillMult: 1,
outputSparseMult: 1,
outputShellSpeedMult: 1,
outputRetractOver: 1,
outputRetractDist: 1,
outputRetractSpeed: 1,
@ -260,12 +260,12 @@ self.kiri.license = exports.LICENSE;
outputFanMax: 255,
outputBedTemp: 0,
outputFeedrate: 100,
outputFinishrate: 60,
outputSeekrate: 150,
outputShellMult: 1.0,
// outputShellSpeed: 1.0,
outputFillMult: 1.25,
outputSparseMult: 1.5,
outputShellSpeedMult: 1.0,
outputRetractOver: 5.0,
outputRetractDist: 0.5,
outputRetractSpeed: 20,
@ -2305,12 +2305,12 @@ self.kiri.license = exports.LICENSE;
outputBedTemp: UC.newInput("bed temp", {title:"degrees celsius", convert:UC.toInt, modes:FDM}),
outputTemp: UC.newInput("nozzle temp", {title:"degrees celsius", convert:UC.toInt, modes:FDM}),
outputFeedrate: UC.newInput("print speed", {title:"print move max speed\nmillimeters / minute", convert:UC.toInt, modes:FDM}),
outputFinishrate: UC.newInput("finish speed", {title:"outermost shell speed\nmillimeters / minute", convert:UC.toInt, modes:FDM}),
outputSeekrate: UC.newInput("move speed", {title:"non-print move max speed\nmillimeters / minute", convert:UC.toInt, modes:FDM}),
// outputShellSpeed: UC.newInput("shell speed", {title:"speed multiplier\n0.1 - 2.0", convert:UC.toFloat, bound:UC.bound(0.1,2.0), modes:FDM}),
outputShellMult: UC.newInput("shell factor", {title:"extrusion multiplier\n0.0 - 2.0", convert:UC.toFloat, bound:UC.bound(0.0,2.0), modes:FDM}),
outputFillMult: UC.newInput("solid factor", {title:"extrusion multiplier\n0.0 - 2.0", convert:UC.toFloat, bound:UC.bound(0.0,2.0), modes:FDM}),
outputSparseMult: UC.newInput("infill factor", {title:"extrusion multiplier\n0.0 - 2.0", convert:UC.toFloat, bound:UC.bound(0.0,2.0), modes:FDM}),
outputShellSpeedMult: UC.newInput("finish factor", {title:"outermost shell speed multiplier\n0.0 - 1.0", convert:UC.toFloat, bound:UC.bound(0.0,1.0), modes:FDM}),
// cam
camTolerance: UC.newInput("tolerance", {title:"surface precision\nin millimeters", convert:UC.toFloat, bound:UC.bound(0.05,1.0), modes:CAM}),