mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-06-04 03:04:18 +08:00
Do not use ironing extrusions for autospeed calculations (#5082)
This commit is contained in:
parent
4d3cb19423
commit
30c8592b10
@ -714,8 +714,21 @@ namespace DoExport {
|
|||||||
if (region->config().get_abs_value("infill_speed") == 0 ||
|
if (region->config().get_abs_value("infill_speed") == 0 ||
|
||||||
region->config().get_abs_value("solid_infill_speed") == 0 ||
|
region->config().get_abs_value("solid_infill_speed") == 0 ||
|
||||||
region->config().get_abs_value("top_solid_infill_speed") == 0 ||
|
region->config().get_abs_value("top_solid_infill_speed") == 0 ||
|
||||||
region->config().get_abs_value("bridge_speed") == 0)
|
region->config().get_abs_value("bridge_speed") == 0)
|
||||||
mm3_per_mm.push_back(layerm->fills.min_mm3_per_mm());
|
{
|
||||||
|
// Minimal volumetric flow should not be calculated over ironing extrusions.
|
||||||
|
// Use following lambda instead of the built-it method.
|
||||||
|
// https://github.com/prusa3d/PrusaSlicer/issues/5082
|
||||||
|
auto min_mm3_per_mm_no_ironing = [](const ExtrusionEntityCollection& eec) -> double {
|
||||||
|
double min = std::numeric_limits<double>::max();
|
||||||
|
for (const ExtrusionEntity* ee : eec.entities)
|
||||||
|
if (ee->role() != erIroning)
|
||||||
|
min = std::min(min, ee->min_mm3_per_mm());
|
||||||
|
return min;
|
||||||
|
};
|
||||||
|
|
||||||
|
mm3_per_mm.push_back(min_mm3_per_mm_no_ironing(layerm->fills));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (object->config().get_abs_value("support_material_speed") == 0 ||
|
if (object->config().get_abs_value("support_material_speed") == 0 ||
|
||||||
|
Loading…
x
Reference in New Issue
Block a user