Add option for skirt-speed override (#1371)

Add skirt speed option.

Co-authored-by: SoftFever <softfeverever@gmail.com>
This commit is contained in:
Scott Mudge 2023-06-26 08:53:17 -04:00 committed by GitHub
parent e925db8c0f
commit 8e4a43ea5c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 20 additions and 2 deletions

View file

@ -4022,6 +4022,12 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
} }
} }
} }
// Override skirt speed if set
if (path.role() == erSkirt) {
const double skirt_speed = m_config.get_abs_value("skirt_speed");
if (skirt_speed > 0.0)
speed = skirt_speed;
}
//BBS: remove this config //BBS: remove this config
//else if (this->object_layer_over_raft()) //else if (this->object_layer_over_raft())
// speed = m_config.get_abs_value("first_layer_speed_over_raft", speed); // speed = m_config.get_abs_value("first_layer_speed_over_raft", speed);

View file

@ -720,7 +720,7 @@ static std::vector<std::string> s_Preset_print_options {
"inner_wall_speed", "outer_wall_speed", "sparse_infill_speed", "internal_solid_infill_speed", "inner_wall_speed", "outer_wall_speed", "sparse_infill_speed", "internal_solid_infill_speed",
"top_surface_speed", "support_speed", "support_object_xy_distance", "support_interface_speed", "top_surface_speed", "support_speed", "support_object_xy_distance", "support_interface_speed",
"bridge_speed", "gap_infill_speed", "travel_speed", "travel_speed_z", "initial_layer_speed", "bridge_speed", "gap_infill_speed", "travel_speed", "travel_speed_z", "initial_layer_speed",
"outer_wall_acceleration", "initial_layer_acceleration", "top_surface_acceleration", "default_acceleration", "skirt_loops", "skirt_distance", "skirt_height", "draft_shield", "outer_wall_acceleration", "initial_layer_acceleration", "top_surface_acceleration", "default_acceleration", "skirt_loops", "skirt_speed", "skirt_distance", "skirt_height", "draft_shield",
"brim_width", "brim_object_gap", "brim_type", "enable_support", "support_type", "support_threshold_angle", "enforce_support_layers", "brim_width", "brim_object_gap", "brim_type", "enable_support", "support_type", "support_threshold_angle", "enforce_support_layers",
"raft_layers", "raft_first_layer_density", "raft_first_layer_expansion", "raft_contact_distance", "raft_expansion", "raft_layers", "raft_first_layer_density", "raft_first_layer_expansion", "raft_contact_distance", "raft_expansion",
"support_base_pattern", "support_base_pattern_spacing", "support_expansion", "support_style", "support_base_pattern", "support_base_pattern_spacing", "support_expansion", "support_style",

View file

@ -185,6 +185,7 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
// These steps have no influence on the G-code whatsoever. Just ignore them. // These steps have no influence on the G-code whatsoever. Just ignore them.
} else if ( } else if (
opt_key == "skirt_loops" opt_key == "skirt_loops"
|| opt_key == "skirt_speed"
|| opt_key == "skirt_height" || opt_key == "skirt_height"
|| opt_key == "draft_shield" || opt_key == "draft_shield"
|| opt_key == "skirt_distance" || opt_key == "skirt_distance"

View file

@ -2691,6 +2691,15 @@ void PrintConfigDef::init_fff_params()
def->mode = comSimple; def->mode = comSimple;
def->set_default_value(new ConfigOptionInt(1)); def->set_default_value(new ConfigOptionInt(1));
def = this->add("skirt_speed", coFloat);
def->label = L("Skirt speed");
def->full_label = L("Skirt speed");
def->tooltip = L("Speed of skirt, in mm/s. Zero means use default layer extrusion speed.");
def->min = 0;
def->sidetext = L("mm/s");
def->mode = comAdvanced;
def->set_default_value(new ConfigOptionFloat(0.0));
def = this->add("slow_down_layer_time", coFloats); def = this->add("slow_down_layer_time", coFloats);
def->label = L("Layer time"); def->label = L("Layer time");
def->tooltip = L("The printing speed in exported gcode will be slowed down, when the estimated layer time is shorter than this value, to " def->tooltip = L("The printing speed in exported gcode will be slowed down, when the estimated layer time is shorter than this value, to "

View file

@ -968,6 +968,7 @@ PRINT_CONFIG_CLASS_DERIVED_DEFINE(
((ConfigOptionFloat, skirt_distance)) ((ConfigOptionFloat, skirt_distance))
((ConfigOptionInt, skirt_height)) ((ConfigOptionInt, skirt_height))
((ConfigOptionInt, skirt_loops)) ((ConfigOptionInt, skirt_loops))
((ConfigOptionFloat, skirt_speed))
((ConfigOptionFloats, slow_down_layer_time)) ((ConfigOptionFloats, slow_down_layer_time))
((ConfigOptionBool, spiral_mode)) ((ConfigOptionBool, spiral_mode))
((ConfigOptionInt, standby_temperature_delta)) ((ConfigOptionInt, standby_temperature_delta))

View file

@ -2231,7 +2231,7 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame)
//BBS: add bed_exclude_area //BBS: add bed_exclude_area
, config(Slic3r::DynamicPrintConfig::new_from_defaults_keys({ , config(Slic3r::DynamicPrintConfig::new_from_defaults_keys({
"printable_area", "bed_exclude_area", "bed_custom_texture", "bed_custom_model", "print_sequence", "printable_area", "bed_exclude_area", "bed_custom_texture", "bed_custom_model", "print_sequence",
"extruder_clearance_radius", "extruder_clearance_height_to_lid", "extruder_clearance_height_to_rod", "skirt_loops", "skirt_distance", "extruder_clearance_radius", "extruder_clearance_height_to_lid", "extruder_clearance_height_to_rod", "skirt_loops", "skirt_speed", "skirt_distance",
"brim_width", "brim_object_gap", "brim_type", "nozzle_diameter", "single_extruder_multi_material", "brim_width", "brim_object_gap", "brim_type", "nozzle_diameter", "single_extruder_multi_material",
"enable_prime_tower", "wipe_tower_x", "wipe_tower_y", "prime_tower_width", "prime_tower_brim_width", "prime_volume", "enable_prime_tower", "wipe_tower_x", "wipe_tower_y", "prime_tower_width", "prime_tower_brim_width", "prime_volume",
"extruder_colour", "filament_colour", "material_colour", "printable_height", "printer_model", "printer_technology", "extruder_colour", "filament_colour", "material_colour", "printable_height", "printer_model", "printer_technology",

View file

@ -2033,6 +2033,7 @@ void TabPrint::build()
optgroup->append_single_option_line("skirt_loops"); optgroup->append_single_option_line("skirt_loops");
optgroup->append_single_option_line("skirt_distance"); optgroup->append_single_option_line("skirt_distance");
optgroup->append_single_option_line("skirt_height"); optgroup->append_single_option_line("skirt_height");
optgroup->append_single_option_line("skirt_speed");
//optgroup->append_single_option_line("draft_shield"); //optgroup->append_single_option_line("draft_shield");
optgroup->append_single_option_line("brim_type", "auto-brim"); optgroup->append_single_option_line("brim_type", "auto-brim");
optgroup->append_single_option_line("brim_width", "auto-brim#manual"); optgroup->append_single_option_line("brim_width", "auto-brim#manual");