add belt brim comb and gap controls
This commit is contained in:
parent
1c1904ecaa
commit
35a319d9d1
5 changed files with 27 additions and 7 deletions
|
|
@ -317,6 +317,8 @@
|
||||||
firstLayerBedTemp: 0,
|
firstLayerBedTemp: 0,
|
||||||
firstLayerBrim: 0,
|
firstLayerBrim: 0,
|
||||||
firstLayerBrimTrig: 0,
|
firstLayerBrimTrig: 0,
|
||||||
|
firstLayerBrimComb: 0,
|
||||||
|
firstLayerBrimGap: 0,
|
||||||
firstLayerBeltLead: 3,
|
firstLayerBeltLead: 3,
|
||||||
firstLayerFanSpeed: 0,
|
firstLayerFanSpeed: 0,
|
||||||
outputRaft: false,
|
outputRaft: false,
|
||||||
|
|
|
||||||
|
|
@ -1664,8 +1664,10 @@
|
||||||
firstLayerLineMult: UC.newInput(LANG.fl_sfac_s, {title:LANG.fl_sfac_l, convert:UC.toFloat, bound:UC.bound(0.5,2), modes:FDM, show:isNotBelt}),
|
firstLayerLineMult: UC.newInput(LANG.fl_sfac_s, {title:LANG.fl_sfac_l, convert:UC.toFloat, bound:UC.bound(0.5,2), modes:FDM, show:isNotBelt}),
|
||||||
firstLayerPrintMult: UC.newInput(LANG.fl_mult_s, {title:LANG.fl_mult_l, convert:UC.toFloat, modes:FDM}),
|
firstLayerPrintMult: UC.newInput(LANG.fl_mult_s, {title:LANG.fl_mult_l, convert:UC.toFloat, modes:FDM}),
|
||||||
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM, show:isBelt}),
|
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM, show:isBelt}),
|
||||||
firstLayerBrim: UC.newInput(LANG.fl_brim_s, {title:LANG.fl_brim_l, convert:UC.toFloat, modes:FDM, show:isBelt}),
|
firstLayerBrim: UC.newInput(LANG.fl_brim_s, {title:LANG.fl_brim_l, convert:UC.toInt, modes:FDM, show:isBelt}),
|
||||||
firstLayerBrimTrig: UC.newInput(LANG.fl_brmn_s, {title:LANG.fl_brmn_l, convert:UC.toFloat, modes:FDM, show:isBelt}),
|
firstLayerBrimComb: UC.newInput(LANG.fl_brco_s, {title:LANG.fl_brco_l, convert:UC.toInt, modes:FDM, show:isBelt}),
|
||||||
|
firstLayerBrimTrig: UC.newInput(LANG.fl_brmn_s, {title:LANG.fl_brmn_l, convert:UC.toInt, modes:FDM, show:isBelt}),
|
||||||
|
firstLayerBrimGap: UC.newInput(LANG.fl_brgp_s, {title:LANG.fl_brgp_l, convert:UC.toFloat, modes:FDM, show:isBelt}),
|
||||||
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM, show:isBelt}),
|
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM, show:isBelt}),
|
||||||
firstLayerBeltLead: UC.newInput(LANG.fl_bled_s, {title:LANG.fl_bled_l, convert:UC.toFloat, modes:FDM, show:isBelt}),
|
firstLayerBeltLead: UC.newInput(LANG.fl_bled_s, {title:LANG.fl_bled_l, convert:UC.toFloat, modes:FDM, show:isBelt}),
|
||||||
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM, show:isNotBelt}),
|
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM, show:isNotBelt}),
|
||||||
|
|
|
||||||
|
|
@ -52,7 +52,9 @@
|
||||||
"sliceSupportOffset": LANG.sp_offs_s,
|
"sliceSupportOffset": LANG.sp_offs_s,
|
||||||
"sliceLayerStart": LANG.sl_strt_s,
|
"sliceLayerStart": LANG.sl_strt_s,
|
||||||
"firstLayerBrim": LANG.fl_brim_s,
|
"firstLayerBrim": LANG.fl_brim_s,
|
||||||
|
"firstLayerBrimComb": LANG.fl_brco_s,
|
||||||
"firstLayerBrimTrig": LANG.fl_brmn_s,
|
"firstLayerBrimTrig": LANG.fl_brmn_s,
|
||||||
|
"firstLayerBrimGap": LANG.fl_brgp_s,
|
||||||
// export
|
// export
|
||||||
"zHopDistance": LANG.ad_zhop_s,
|
"zHopDistance": LANG.ad_zhop_s,
|
||||||
"arcTolerance": LANG.ad_zhop_s,
|
"arcTolerance": LANG.ad_zhop_s,
|
||||||
|
|
|
||||||
|
|
@ -501,12 +501,16 @@
|
||||||
// }
|
// }
|
||||||
|
|
||||||
let thresh = firstLayerHeight * 1.05;
|
let thresh = firstLayerHeight * 1.05;
|
||||||
|
let seqn = 0;
|
||||||
|
|
||||||
// iterate over layers, find extrusion on belt and
|
// iterate over layers, find extrusion on belt and
|
||||||
// apply corrections and add brim when specified
|
// apply corrections and add brim when specified
|
||||||
for (let layer of output) {
|
for (let layer of output) {
|
||||||
let params = getRangeParameters(settings, layer.layer || 0);
|
let params = getRangeParameters(settings, layer.layer || 0);
|
||||||
let firstLayerBrim = params.firstLayerBrim;
|
let firstLayerBrim = params.firstLayerBrim;
|
||||||
let firstLayerBrimTrig = params.firstLayerBrimTrig;
|
let firstLayerBrimTrig = params.firstLayerBrimTrig;
|
||||||
|
let firstLayerBrimComb = params.firstLayerBrimComb;
|
||||||
|
let firstLayerBrimGap = params.firstLayerBrimGap || 0;
|
||||||
let lastout, first = false;
|
let lastout, first = false;
|
||||||
let minz = Infinity, maxy = -Infinity, minx = Infinity, maxx = -Infinity;
|
let minz = Infinity, maxy = -Infinity, minx = Infinity, maxx = -Infinity;
|
||||||
let mins = Infinity;
|
let mins = Infinity;
|
||||||
|
|
@ -539,18 +543,24 @@
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// add brim, if specified
|
// add brim, if specified
|
||||||
if (first && firstLayerBrim) {
|
if (first && firstLayerBrim && seqn <= firstLayerBrimComb) {
|
||||||
let { emit, tool } = first;
|
let { emit, tool } = first;
|
||||||
let y = maxy;
|
let y = maxy;
|
||||||
let z = minz;
|
let z = minz;
|
||||||
let b = Math.max(firstLayerBrim, 1);
|
let g = firstLayerBrimGap || 0;
|
||||||
|
let b = Math.max(firstLayerBrim, 1) + g;
|
||||||
let tmpout = [];
|
let tmpout = [];
|
||||||
layer.last().retract = true;
|
layer.last().retract = true;
|
||||||
print.addOutput(tmpout, newPoint(maxx + b, y, z), 0, firstLayerSeek, tool);
|
print.addOutput(tmpout, newPoint(maxx + b, y, z), 0, firstLayerSeek, tool);
|
||||||
print.addOutput(tmpout, newPoint(maxx + 0, y, z), emit, firstLayerRate, tool).retract = true;
|
print.addOutput(tmpout, newPoint(maxx + g, y, z), emit, firstLayerRate, tool).retract = true;
|
||||||
print.addOutput(tmpout, newPoint(minx - b, y, z), 0, firstLayerSeek, tool);
|
print.addOutput(tmpout, newPoint(minx - b, y, z), 0, firstLayerSeek, tool);
|
||||||
print.addOutput(tmpout, newPoint(minx - 0, y, z), emit, firstLayerRate, tool).retract = false;
|
print.addOutput(tmpout, newPoint(minx - g, y, z), emit, firstLayerRate, tool).retract = false;
|
||||||
layer.splice(0,0,...tmpout);
|
layer.splice(0,0,...tmpout);
|
||||||
|
if (firstLayerBrimComb) {
|
||||||
|
seqn++;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
seqn = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -310,10 +310,14 @@ kiri.lang['en-us'] = {
|
||||||
// FDM BELT ONLY
|
// FDM BELT ONLY
|
||||||
fl_zoff_s: "belt offset",
|
fl_zoff_s: "belt offset",
|
||||||
fl_zoff_l: ["height offset from belt","of lowest extrusion","in millimeters"],
|
fl_zoff_l: ["height offset from belt","of lowest extrusion","in millimeters"],
|
||||||
fl_brim_s: "brim size",
|
fl_brim_s: "brim width",
|
||||||
fl_brim_l: ["add brim to part bottom","size is width in millimeters","0 to disable"],
|
fl_brim_l: ["add brim to part bottom","size is width in millimeters","0 to disable"],
|
||||||
fl_brmn_s: "brim trigger",
|
fl_brmn_s: "brim trigger",
|
||||||
fl_brmn_l: ["add brims only when segment","facing belt is shorter than this","value in millimeters","0 = Infinity"],
|
fl_brmn_l: ["add brims only when segment","facing belt is shorter than this","value in millimeters","0 = Infinity"],
|
||||||
|
fl_brco_s: "brim comb",
|
||||||
|
fl_brco_l: ["add brim gaps","every n lines","0 to disable"],
|
||||||
|
fl_brgp_s: "brim gap",
|
||||||
|
fl_brgp_l: ["spacing between brim and part","in millimeters"],
|
||||||
fl_bled_s: "part anchor",
|
fl_bled_s: "part anchor",
|
||||||
fl_bled_l: ["belt part anchor","at start of print","in millimeters"],
|
fl_bled_l: ["belt part anchor","at start of print","in millimeters"],
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue