re-add base flow rate multiplier for belt mode fixes #444

This commit is contained in:
Stewart Allen 2025-11-13 15:48:44 -05:00
commit ae65cd2b07
3 changed files with 5 additions and 0 deletions

View file

@ -263,6 +263,7 @@ export const conf = {
firstLayerBedTemp: 0,
firstLayerBeltBump: 0,
firstLayerBeltLead: 3,
firstLayerBeltFact: 1,
firstLayerBrim: 0,
firstLayerBrimGap: 0,
firstLayerBrimIn: 0,

View file

@ -134,6 +134,7 @@ export function menu() {
firstLayerFanSpeed: newInput(LANG.ou_fans_s, {title:LANG.ou_fans_l, convert:toInt, bound:bound(0,255), show:isBelt}),
firstLayerYOffset: newInput(LANG.fl_zoff_s, {title:LANG.fl_zoff_l, convert:toFloat, show:isBelt}),
firstLayerFlatten: newInput(LANG.fl_flat_s, {title:LANG.fl_flat_l, convert:toFloat, show:isBelt}),
firstLayerBeltFact: newInput(LANG.fl_mult_s, {title:LANG.fl_mult_l, convert:toFloat, bound:bound(0, 2), show:isBelt}),
firstLayerRate: newInput(LANG.fl_rate_s, {title:LANG.fl_rate_l, convert:toFloat}),
firstLayerFillRate: newInput(LANG.fl_frat_s, {title:LANG.fl_frat_l, convert:toFloat, show:isNotBelt}),
separator: newBlank({ class:"set-sep", driven, show:isBelt }),

View file

@ -682,6 +682,7 @@ export async function fdm_prepare(widgets, settings, update) {
for (let rec of layer) {
overate = rec.overate >= 0 ? rec.overate : overate;
let bmult = params.firstLayerBeltFact ?? 1;
let brate = params.firstLayerRate || firstLayerRate;
let point = rec.point;
let belty = rec.belty = -point.y + (point.z * belt.slope);
@ -695,6 +696,8 @@ export async function fdm_prepare(widgets, settings, update) {
// apply base speed to segments touching belt
rec.speed = params.firstLayerRate || Math.min(rec.speed, lowrate);
rec.fan = params.firstLayerFanSpeed;
// apply base flowrate multiplier to segments touching belt
rec.emit *= bmult;
minx = Math.min(minx, point.x, lastout.point.x);
maxx = Math.max(maxx, point.x, lastout.point.x);
maxy = Math.max(maxy, point.y);