allow raft and brim/shield to co-exist

This commit is contained in:
Stewart Allen 2022-02-14 18:52:29 -05:00
commit 69f20f711f
2 changed files with 9 additions and 7 deletions

View file

@ -119,14 +119,17 @@
// if raft is specified
if (process.outputRaft) {
let offset = newPoint(0,0,0),
height = nozzle;
height = nozzle,
rafts = process.outputBrimCount ?
POLY.expand(brims, nozzle * 4, 0, null, 1) : brims;
// cause first point of raft to be used
printPoint = null;
let raft = function(height, angle, spacing, speed, extrude) {
let slice = KIRI.newSlice(zoff + height / 2);
brims.forEach(function(brim) {
rafts.forEach(function(brim) {
// use first point of first brim as start point
if (printPoint === null) printPoint = brim.first();
let t = slice.addTop(brim);
@ -163,9 +166,8 @@
// retract after last raft layer
output.last().last().retract = true;
}
// raft excludes brims
else
// if using brim vs raft
// if using brim or skirt
if (process.outputBrimCount) {
let polys = [],
preout = [];

View file

@ -1786,9 +1786,9 @@
outputBrimCount: UC.newInput(LANG.fl_skrt_s, {title:LANG.fl_skrt_l, convert:UC.toInt, modes:FDM, show:isNotBelt}),
outputBrimOffset: UC.newInput(LANG.fl_skro_s, {title:LANG.fl_skro_l, convert:UC.toFloat, modes:FDM, show:isNotBelt}),
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM, show:isNotBelt}),
outputDraftShield: UC.newBoolean(LANG.fr_draf_s, onBooleanClick, {title:LANG.fr_draf_l, modes:FDM, trigger: true, show:() => !UI.outputRaft.checked && isNotBelt()}),
outputRaftSpacing: UC.newInput(LANG.fr_spac_s, {title:LANG.fr_spac_l, convert:UC.toFloat, bound:UC.bound(0.0,3.0), modes:FDM, show: () => UI.outputRaft.checked && isNotBelt() }),
outputRaft: UC.newBoolean(LANG.fr_nabl_s, onBooleanClick, {title:LANG.fr_nabl_l, modes:FDM, trigger: true, show:() => !UI.outputDraftShield.checked && isNotBelt()}),
outputRaft: UC.newBoolean(LANG.fr_nabl_s, onBooleanClick, {title:LANG.fr_nabl_l, modes:FDM, trigger: true, show:() => isNotBelt()}),
outputDraftShield: UC.newBoolean(LANG.fr_draf_s, onBooleanClick, {title:LANG.fr_draf_l, modes:FDM, trigger: true, show:() => isNotBelt()}),
fdmInfill: UC.newGroup(LANG.fi_menu, $('settings'), {modes:FDM}),
sliceFillType: UC.newSelect(LANG.fi_type, {modes:FDM, trigger:true}, "infill"),