Switch to improve readability

This commit is contained in:
Ian Bassi 2025-04-03 15:56:07 -03:00
parent a66bc06b2d
commit 40928a5d22

View file

@ -3749,25 +3749,37 @@ LayerResult GCode::process_layer(
//BBS: set layer time fan speed after layer change gcode //BBS: set layer time fan speed after layer change gcode
gcode += ";_SET_FAN_SPEED_CHANGING_LAYER\n"; gcode += ";_SET_FAN_SPEED_CHANGING_LAYER\n";
if (print.calib_mode() == CalibMode::Calib_PA_Tower) { //Calibration Layer-specific GCode
switch (print.calib_mode()) {
case CalibMode::Calib_PA_Tower: {
gcode += writer().set_pressure_advance(print.calib_params().start + static_cast<int>(print_z) * print.calib_params().step); gcode += writer().set_pressure_advance(print.calib_params().start + static_cast<int>(print_z) * print.calib_params().step);
} else if (print.calib_mode() == CalibMode::Calib_Temp_Tower) { break;
}
case CalibMode::Calib_Temp_Tower: {
auto offset = static_cast<unsigned int>(print_z / 10.001) * 5; auto offset = static_cast<unsigned int>(print_z / 10.001) * 5;
gcode += writer().set_temperature(print.calib_params().start - offset); gcode += writer().set_temperature(print.calib_params().start - offset);
} else if (print.calib_mode() == CalibMode::Calib_VFA_Tower) { break;
}
case CalibMode::Calib_VFA_Tower: {
auto _speed = print.calib_params().start + std::floor(print_z / 5.0) * print.calib_params().step; auto _speed = print.calib_params().start + std::floor(print_z / 5.0) * print.calib_params().step;
m_calib_config.set_key_value("outer_wall_speed", new ConfigOptionFloat(std::round(_speed))); m_calib_config.set_key_value("outer_wall_speed", new ConfigOptionFloat(std::round(_speed)));
} else if (print.calib_mode() == CalibMode::Calib_Vol_speed_Tower) { break;
}
case CalibMode::Calib_Vol_speed_Tower: {
auto _speed = print.calib_params().start + print_z * print.calib_params().step; auto _speed = print.calib_params().start + print_z * print.calib_params().step;
m_calib_config.set_key_value("outer_wall_speed", new ConfigOptionFloat(std::round(_speed))); m_calib_config.set_key_value("outer_wall_speed", new ConfigOptionFloat(std::round(_speed)));
} else if (print.calib_mode() == CalibMode::Calib_Retraction_tower) { break;
}
case CalibMode::Calib_Retraction_tower: {
auto _length = print.calib_params().start + std::floor(std::max(0.0,print_z-0.4)) * print.calib_params().step; auto _length = print.calib_params().start + std::floor(std::max(0.0,print_z-0.4)) * print.calib_params().step;
DynamicConfig _cfg; DynamicConfig _cfg;
_cfg.set_key_value("retraction_length", new ConfigOptionFloats{_length}); _cfg.set_key_value("retraction_length", new ConfigOptionFloats{_length});
writer().config.apply(_cfg); writer().config.apply(_cfg);
sprintf(buf, "; Calib_Retraction_tower: Z_HEIGHT: %g, length:%g\n", print_z, _length); sprintf(buf, "; Calib_Retraction_tower: Z_HEIGHT: %g, length:%g\n", print_z, _length);
gcode += buf; gcode += buf;
} else if (print.calib_mode() == CalibMode::Calib_Input_shaping_freq) { break;
}
case CalibMode::Calib_Input_shaping_freq: {
if (m_layer_index == 1){ if (m_layer_index == 1){
if (print.config().gcode_flavor.value == gcfMarlinFirmware) { if (print.config().gcode_flavor.value == gcfMarlinFirmware) {
gcode += writer().set_junction_deviation(0.25);//Set junction deviation at high value to maximize ringing. gcode += writer().set_junction_deviation(0.25);//Set junction deviation at high value to maximize ringing.
@ -3781,7 +3793,9 @@ LayerResult GCode::process_layer(
gcode += writer().set_input_shaping('Y', 0.f, (print.calib_params().freqStartY) + ((print.calib_params().freqEndY)-(print.calib_params().freqStartY)) * (m_layer_index - 2) / (m_layer_count - 3)); gcode += writer().set_input_shaping('Y', 0.f, (print.calib_params().freqStartY) + ((print.calib_params().freqEndY)-(print.calib_params().freqStartY)) * (m_layer_index - 2) / (m_layer_count - 3));
} }
} }
} else if (print.calib_mode() == CalibMode::Calib_Input_shaping_damp) { break;
}
case CalibMode::Calib_Input_shaping_damp: {
if (m_layer_index == 1){ if (m_layer_index == 1){
if (print.config().gcode_flavor.value == gcfMarlinFirmware) { if (print.config().gcode_flavor.value == gcfMarlinFirmware) {
gcode += writer().set_junction_deviation(0.25); // Set junction deviation at high value to maximize ringing. gcode += writer().set_junction_deviation(0.25); // Set junction deviation at high value to maximize ringing.
@ -3791,8 +3805,12 @@ LayerResult GCode::process_layer(
} else { } else {
gcode += writer().set_input_shaping('A', print.calib_params().start + ((print.calib_params().end)-(print.calib_params().start)) * (m_layer_index) / (m_layer_count), 0.f); gcode += writer().set_input_shaping('A', print.calib_params().start + ((print.calib_params().end)-(print.calib_params().start)) * (m_layer_index) / (m_layer_count), 0.f);
} }
} else if (print.calib_mode() == CalibMode::Calib_Junction_Deviation){ break;
}
case CalibMode::Calib_Junction_Deviation: {
gcode += writer().set_junction_deviation(print.calib_params().start + ((print.calib_params().end)-(print.calib_params().start)) * (m_layer_index) / (m_layer_count)); gcode += writer().set_junction_deviation(print.calib_params().start + ((print.calib_params().end)-(print.calib_params().start)) * (m_layer_index) / (m_layer_count));
break;
}
} }
//BBS //BBS