mirror of
https://git.mirrors.martin98.com/https://github.com/slic3r/Slic3r.git
synced 2025-08-14 05:25:58 +08:00
added min and max_layer_height options to extruder to be used as limits for adaptive layer heights
This commit is contained in:
parent
cdd7469c58
commit
078f3af9c2
@ -1013,7 +1013,7 @@ sub build {
|
|||||||
$self->_build_extruder_pages;
|
$self->_build_extruder_pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
sub _extruder_options { qw(nozzle_diameter extruder_offset retract_length retract_lift retract_speed retract_restart_extra retract_before_travel wipe
|
sub _extruder_options { qw(nozzle_diameter min_layer_height max_layer_height extruder_offset retract_length retract_lift retract_speed retract_restart_extra retract_before_travel wipe
|
||||||
retract_layer_change retract_length_toolchange retract_restart_extra_toolchange) }
|
retract_layer_change retract_length_toolchange retract_restart_extra_toolchange) }
|
||||||
|
|
||||||
sub _build_extruder_pages {
|
sub _build_extruder_pages {
|
||||||
@ -1042,6 +1042,11 @@ sub _build_extruder_pages {
|
|||||||
my $optgroup = $page->new_optgroup('Size');
|
my $optgroup = $page->new_optgroup('Size');
|
||||||
$optgroup->append_single_option_line('nozzle_diameter', $extruder_idx);
|
$optgroup->append_single_option_line('nozzle_diameter', $extruder_idx);
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
my $optgroup = $page->new_optgroup('Limits');
|
||||||
|
$optgroup->append_single_option_line($_, $extruder_idx)
|
||||||
|
for qw(min_layer_height max_layer_height);
|
||||||
|
}
|
||||||
{
|
{
|
||||||
my $optgroup = $page->new_optgroup('Position (for multi-extruder printers)');
|
my $optgroup = $page->new_optgroup('Position (for multi-extruder printers)');
|
||||||
$optgroup->append_single_option_line('extruder_offset', $extruder_idx);
|
$optgroup->append_single_option_line('extruder_offset', $extruder_idx);
|
||||||
|
@ -461,6 +461,12 @@ PrintConfigDef::build_def() {
|
|||||||
Options["max_fan_speed"].min = 0;
|
Options["max_fan_speed"].min = 0;
|
||||||
Options["max_fan_speed"].max = 100;
|
Options["max_fan_speed"].max = 100;
|
||||||
|
|
||||||
|
Options["max_layer_height"].type = coFloats;
|
||||||
|
Options["max_layer_height"].label = "max";
|
||||||
|
Options["max_layer_height"].tooltip = "This is the highest printable layer height for this extruder and limits the resolution for adaptive slicing. Typical values are slightly smaller than nozzle_diameter.";
|
||||||
|
Options["max_layer_height"].sidetext = "mm";
|
||||||
|
Options["max_layer_height"].cli = "max-layer-height=f@";
|
||||||
|
|
||||||
Options["min_fan_speed"].type = coInt;
|
Options["min_fan_speed"].type = coInt;
|
||||||
Options["min_fan_speed"].label = "Min";
|
Options["min_fan_speed"].label = "Min";
|
||||||
Options["min_fan_speed"].tooltip = "This setting represents the minimum PWM your fan needs to work.";
|
Options["min_fan_speed"].tooltip = "This setting represents the minimum PWM your fan needs to work.";
|
||||||
@ -469,6 +475,12 @@ PrintConfigDef::build_def() {
|
|||||||
Options["min_fan_speed"].min = 0;
|
Options["min_fan_speed"].min = 0;
|
||||||
Options["min_fan_speed"].max = 100;
|
Options["min_fan_speed"].max = 100;
|
||||||
|
|
||||||
|
Options["min_layer_height"].type = coFloats;
|
||||||
|
Options["min_layer_height"].label = "min";
|
||||||
|
Options["min_layer_height"].tooltip = "TThis is the lowest printable layer height for this extruder and limits the resolution for adaptive slicing. Typical values are 0.1 or 0.05.";
|
||||||
|
Options["min_layer_height"].sidetext = "mm";
|
||||||
|
Options["min_layer_height"].cli = "min-layer-height=f@";
|
||||||
|
|
||||||
Options["min_print_speed"].type = coInt;
|
Options["min_print_speed"].type = coInt;
|
||||||
Options["min_print_speed"].label = "Min print speed";
|
Options["min_print_speed"].label = "Min print speed";
|
||||||
Options["min_print_speed"].tooltip = "Slic3r will not scale speed down below this speed.";
|
Options["min_print_speed"].tooltip = "Slic3r will not scale speed down below this speed.";
|
||||||
|
@ -348,7 +348,9 @@ class PrintConfig : public virtual StaticPrintConfig
|
|||||||
ConfigOptionBool infill_first;
|
ConfigOptionBool infill_first;
|
||||||
ConfigOptionString layer_gcode;
|
ConfigOptionString layer_gcode;
|
||||||
ConfigOptionInt max_fan_speed;
|
ConfigOptionInt max_fan_speed;
|
||||||
|
ConfigOptionFloats max_layer_height;
|
||||||
ConfigOptionInt min_fan_speed;
|
ConfigOptionInt min_fan_speed;
|
||||||
|
ConfigOptionFloats min_layer_height;
|
||||||
ConfigOptionInt min_print_speed;
|
ConfigOptionInt min_print_speed;
|
||||||
ConfigOptionFloat min_skirt_length;
|
ConfigOptionFloat min_skirt_length;
|
||||||
ConfigOptionString notes;
|
ConfigOptionString notes;
|
||||||
@ -427,7 +429,11 @@ class PrintConfig : public virtual StaticPrintConfig
|
|||||||
this->infill_first.value = false;
|
this->infill_first.value = false;
|
||||||
this->layer_gcode.value = "";
|
this->layer_gcode.value = "";
|
||||||
this->max_fan_speed.value = 100;
|
this->max_fan_speed.value = 100;
|
||||||
|
this->max_layer_height.values.resize(1);
|
||||||
|
this->max_layer_height.values[0] = 0.3;
|
||||||
this->min_fan_speed.value = 35;
|
this->min_fan_speed.value = 35;
|
||||||
|
this->min_layer_height.values.resize(1);
|
||||||
|
this->min_layer_height.values[0] = 0.1;
|
||||||
this->min_print_speed.value = 10;
|
this->min_print_speed.value = 10;
|
||||||
this->min_skirt_length.value = 0;
|
this->min_skirt_length.value = 0;
|
||||||
this->notes.value = "";
|
this->notes.value = "";
|
||||||
@ -508,7 +514,9 @@ class PrintConfig : public virtual StaticPrintConfig
|
|||||||
if (opt_key == "infill_first") return &this->infill_first;
|
if (opt_key == "infill_first") return &this->infill_first;
|
||||||
if (opt_key == "layer_gcode") return &this->layer_gcode;
|
if (opt_key == "layer_gcode") return &this->layer_gcode;
|
||||||
if (opt_key == "max_fan_speed") return &this->max_fan_speed;
|
if (opt_key == "max_fan_speed") return &this->max_fan_speed;
|
||||||
|
if (opt_key == "max_layer_height") return &this->max_layer_height;
|
||||||
if (opt_key == "min_fan_speed") return &this->min_fan_speed;
|
if (opt_key == "min_fan_speed") return &this->min_fan_speed;
|
||||||
|
if (opt_key == "min_layer_height") return &this->min_layer_height;
|
||||||
if (opt_key == "min_print_speed") return &this->min_print_speed;
|
if (opt_key == "min_print_speed") return &this->min_print_speed;
|
||||||
if (opt_key == "min_skirt_length") return &this->min_skirt_length;
|
if (opt_key == "min_skirt_length") return &this->min_skirt_length;
|
||||||
if (opt_key == "notes") return &this->notes;
|
if (opt_key == "notes") return &this->notes;
|
||||||
|
@ -143,6 +143,8 @@ PrintObject::invalidate_state_by_config_options(const std::vector<t_config_optio
|
|||||||
steps.insert(posPerimeters);
|
steps.insert(posPerimeters);
|
||||||
} else if (*opt_key == "resolution"
|
} else if (*opt_key == "resolution"
|
||||||
|| *opt_key == "layer_height"
|
|| *opt_key == "layer_height"
|
||||||
|
|| *opt_key == "min_layer_height"
|
||||||
|
|| *opt_key == "max_layer_height"
|
||||||
|| *opt_key == "first_layer_height"
|
|| *opt_key == "first_layer_height"
|
||||||
|| *opt_key == "xy_size_compensation"
|
|| *opt_key == "xy_size_compensation"
|
||||||
|| *opt_key == "adaptive_slicing"
|
|| *opt_key == "adaptive_slicing"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user