diff --git a/README.markdown b/README.markdown index ee3d088ff..77bac9a64 100644 --- a/README.markdown +++ b/README.markdown @@ -35,6 +35,7 @@ Slic3r is able to: * generate rectilinear feed (100% solid for external surfaces or with customizable less density for inner surfaces); * use relative or absolute extrusion commands; * center print around bed center point; +* use different speed for bottom layer; * output relevant GCODE. Roadmap include the following goals: diff --git a/lib/Slic3r/Print.pm b/lib/Slic3r/Print.pm index c67e6ad42..8f82565ba 100644 --- a/lib/Slic3r/Print.pm +++ b/lib/Slic3r/Print.pm @@ -109,12 +109,13 @@ sub export_gcode { ($point->x * $Slic3r::resolution) + $shift[X], ($point->y * $Slic3r::resolution) + $shift[Y], #** $z; + my $speed_multiplier = $z == 0 ? $Slic3r::bottom_layer_speed_ratio : 1; if ($extrusion_distance) { printf $fh " F%.${dec}f E%.${dec}f", - $print_feed_rate, + ($print_feed_rate * $speed_multiplier), ($extrusion_distance * $extrusion_speed_ratio * $Slic3r::resolution); } else { - printf $fh " F%.${dec}f", $travel_feed_rate; + printf $fh " F%.${dec}f", ($travel_feed_rate * $speed_multiplier); } printf $fh " ; %s", $comment if $comment; print $fh "\n";