Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorbubnikv <bubnikv@gmail.com>2016-09-13 16:02:28 +0300
committerbubnikv <bubnikv@gmail.com>2016-09-13 16:02:28 +0300
commit15c1edd552b04ce9b11afd3529fd9fd27ad14931 (patch)
tree17d50aa8708a7b05162229ba43067a88524316db /lib
parent620c6c7378c4799980f63794669548c104b9bcea (diff)
Configurable volumetric extrusion rate slope.
Diffstat (limited to 'lib')
-rw-r--r--lib/Slic3r.pm6
-rw-r--r--lib/Slic3r/GUI/Tab.pm5
-rw-r--r--lib/Slic3r/Print/GCode.pm3
3 files changed, 10 insertions, 4 deletions
diff --git a/lib/Slic3r.pm b/lib/Slic3r.pm
index e9e7563c1..e7dfd102b 100644
--- a/lib/Slic3r.pm
+++ b/lib/Slic3r.pm
@@ -78,11 +78,13 @@ use Unicode::Normalize;
# Scaling between the float and integer coordinates.
# Floats are in mm.
use constant SCALING_FACTOR => 0.000001;
+use constant LOOP_CLIPPING_LENGTH_OVER_NOZZLE_DIAMETER => 0.15;
+
+# Following constants are used by the infill algorithms and integration tests.
# Resolution to simplify perimeters to. These constants are now used in C++ code only. Better to publish them to Perl from the C++ code.
# use constant RESOLUTION => 0.0125;
# use constant SCALED_RESOLUTION => RESOLUTION / SCALING_FACTOR;
-use constant LOOP_CLIPPING_LENGTH_OVER_NOZZLE_DIAMETER => 0.15;
-# use constant INFILL_OVERLAP_OVER_SPACING => 0.3;
+use constant INFILL_OVERLAP_OVER_SPACING => 0.3;
# Keep track of threads we created. Each thread keeps its own list of threads it spwaned.
my @my_threads = ();
diff --git a/lib/Slic3r/GUI/Tab.pm b/lib/Slic3r/GUI/Tab.pm
index e7ad8370b..4f8defd99 100644
--- a/lib/Slic3r/GUI/Tab.pm
+++ b/lib/Slic3r/GUI/Tab.pm
@@ -464,7 +464,8 @@ sub build {
infill_every_layers infill_only_where_needed
solid_infill_every_layers fill_angle solid_infill_below_area
only_retract_when_crossing_perimeters infill_first
- max_print_speed max_volumetric_speed
+ max_print_speed max_volumetric_speed
+ max_volumetric_extrusion_rate_slope_positive max_volumetric_extrusion_rate_slope_negative
perimeter_speed small_perimeter_speed external_perimeter_speed infill_speed
solid_infill_speed top_solid_infill_speed support_material_speed
support_material_interface_speed bridge_speed gap_fill_speed
@@ -627,6 +628,8 @@ sub build {
my $optgroup = $page->new_optgroup('Autospeed (advanced)');
$optgroup->append_single_option_line('max_print_speed');
$optgroup->append_single_option_line('max_volumetric_speed');
+ $optgroup->append_single_option_line('max_volumetric_extrusion_rate_slope_positive');
+ $optgroup->append_single_option_line('max_volumetric_extrusion_rate_slope_negative');
}
}
diff --git a/lib/Slic3r/Print/GCode.pm b/lib/Slic3r/Print/GCode.pm
index 62e3f3ae1..27cca3221 100644
--- a/lib/Slic3r/Print/GCode.pm
+++ b/lib/Slic3r/Print/GCode.pm
@@ -117,7 +117,8 @@ sub BUILD {
if $self->config->pressure_advance > 0;
$self->_pressure_equalizer(Slic3r::GCode::PressureEqualizer->new($self->config))
- if defined($ENV{"SLIC3R_PRESSURE_EQUALIZER"}) && $ENV{'SLIC3R_PRESSURE_EQUALIZER'} == 1;
+ if ($self->config->max_volumetric_extrusion_rate_slope_positive > 0 ||
+ $self->config->max_volumetric_extrusion_rate_slope_negative > 0);
$self->_gcodegen->set_enable_extrusion_role_markers(defined $self->_pressure_equalizer);
}