Bugfix: GUI was unable to update flow settings

degen-loop-screen
Alessandro Ranellucci 2012-06-27 19:49:53 +02:00
parent 96a3234eaa
commit 47a07a86ee
2 changed files with 9 additions and 4 deletions

View File

@ -109,10 +109,10 @@ our $perimeters_extrusion_width = 0;
our $infill_extrusion_width = 0; our $infill_extrusion_width = 0;
our $bridge_flow_ratio = 1; our $bridge_flow_ratio = 1;
our $overlap_factor = 0.5; our $overlap_factor = 0.5;
our $flow = Slic3r::Flow->new; our $flow;
our $first_layer_flow = undef; our $first_layer_flow;
our $perimeters_flow = Slic3r::Flow->new; our $perimeters_flow;
our $infill_flow = Slic3r::Flow->new; our $infill_flow;
# print options # print options
our $perimeters = 3; our $perimeters = 3;

View File

@ -672,13 +672,18 @@ sub validate {
if $Slic3r::_first_layer_height > $Slic3r::nozzle_diameter; if $Slic3r::_first_layer_height > $Slic3r::nozzle_diameter;
# calculate flow # calculate flow
$Slic3r::flow = Slic3r::Flow->new;
$Slic3r::flow->calculate($Slic3r::extrusion_width); $Slic3r::flow->calculate($Slic3r::extrusion_width);
if ($Slic3r::first_layer_extrusion_width) { if ($Slic3r::first_layer_extrusion_width) {
$Slic3r::first_layer_flow = Slic3r::Flow->new(layer_height => $Slic3r::_first_layer_height); $Slic3r::first_layer_flow = Slic3r::Flow->new(layer_height => $Slic3r::_first_layer_height);
$Slic3r::first_layer_flow->calculate($Slic3r::first_layer_extrusion_width); $Slic3r::first_layer_flow->calculate($Slic3r::first_layer_extrusion_width);
} }
$Slic3r::perimeters_flow = Slic3r::Flow->new;
$Slic3r::perimeters_flow->calculate($Slic3r::perimeters_extrusion_width || $Slic3r::extrusion_width); $Slic3r::perimeters_flow->calculate($Slic3r::perimeters_extrusion_width || $Slic3r::extrusion_width);
$Slic3r::infill_flow = Slic3r::Flow->new;
$Slic3r::infill_flow->calculate($Slic3r::infill_extrusion_width || $Slic3r::extrusion_width); $Slic3r::infill_flow->calculate($Slic3r::infill_extrusion_width || $Slic3r::extrusion_width);
Slic3r::debugf "Default flow width = %s, spacing = %s, min_spacing = %s\n", Slic3r::debugf "Default flow width = %s, spacing = %s, min_spacing = %s\n",
$Slic3r::flow->width, $Slic3r::flow->spacing, $Slic3r::flow->min_spacing; $Slic3r::flow->width, $Slic3r::flow->spacing, $Slic3r::flow->min_spacing;