Add Don't slow down outer walls

This commit is contained in:
QIDI TECH
2024-06-18 16:30:47 +08:00
parent 78513b7b86
commit f25014959b
7 changed files with 31 additions and 2 deletions

View File

@@ -236,6 +236,8 @@ struct PerExtruderAdjustments
float slowdown_below_layer_time = 0.f;
// Minimum print speed allowed for this extruder.
float min_print_speed = 0.f;
//Y28
bool dont_slow_down_outer_wall = true;
// Parsed lines.
std::vector<CoolingLine> lines;
@@ -344,6 +346,8 @@ std::vector<PerExtruderAdjustments> CoolingBuffer::parse_layer_gcode(const std::
adj.cooling_slow_down_enabled = m_config.cooling.get_at(extruder_id);
adj.slowdown_below_layer_time = float(m_config.slowdown_below_layer_time.get_at(extruder_id));
adj.min_print_speed = float(m_config.min_print_speed.get_at(extruder_id));
//Y28
adj.dont_slow_down_outer_wall = m_config.dont_slow_down_outer_wall.get_at(extruder_id);
map_extruder_to_per_extruder_adjustment[extruder_id] = i;
}
@@ -424,7 +428,12 @@ std::vector<PerExtruderAdjustments> CoolingBuffer::parse_layer_gcode(const std::
line.type |= CoolingLine::TYPE_EXTERNAL_PERIMETER;
if (wipe)
line.type |= CoolingLine::TYPE_WIPE;
if (boost::contains(sline, ";_EXTRUDE_SET_SPEED") && ! wipe) {
//Y28
bool adjust_external = true;
if (adjustment->dont_slow_down_outer_wall && external_perimeter)
adjust_external = false;
if (boost::contains(sline, ";_EXTRUDE_SET_SPEED") && ! wipe && adjust_external) {
line.type |= CoolingLine::TYPE_ADJUSTABLE;
active_speed_modifier = adjustment->lines.size();
}