From f5e48a306d58ac17212a200287cbd2f049eb45ea Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci Date: Sat, 30 Mar 2013 00:21:09 +0100 Subject: [PATCH] Bugfix: support material and brim didn't work correctly. Includes unit test. #1074 --- MANIFEST | 1 + lib/Slic3r/Polyline.pm | 9 +++++---- t/support.t | 21 +++++++++++++++++++++ 3 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 t/support.t diff --git a/MANIFEST b/MANIFEST index 4081339c1..6e59ce2e5 100644 --- a/MANIFEST +++ b/MANIFEST @@ -72,6 +72,7 @@ t/retraction.t t/serialize.t t/shells.t t/slice.t +t/support.t t/vibrationlimit.t utils/amf-to-stl.pl utils/file_info.pl diff --git a/lib/Slic3r/Polyline.pm b/lib/Slic3r/Polyline.pm index 4d7fbe90e..1df68e80c 100644 --- a/lib/Slic3r/Polyline.pm +++ b/lib/Slic3r/Polyline.pm @@ -86,10 +86,11 @@ sub length { sub grow { my $self = shift; - return Slic3r::Geometry::Clipper::offset( - [ Slic3r::Polygon->new(@$self, CORE::reverse @$self[1..($#$self-1)]) ], - @_, - ); + return map Slic3r::Polygon->new($_), + Slic3r::Geometry::Clipper::offset( + [ Slic3r::Polygon->new(@$self, CORE::reverse @$self[1..($#$self-1)]) ], + @_, + ); } sub nearest_point_to { diff --git a/t/support.t b/t/support.t new file mode 100644 index 000000000..1e9a24a6e --- /dev/null +++ b/t/support.t @@ -0,0 +1,21 @@ +use Test::More tests => 1; +use strict; +use warnings; + +BEGIN { + use FindBin; + use lib "$FindBin::Bin/../lib"; +} + +use Slic3r; +use Slic3r::Test; + +{ + my $config = Slic3r::Config->new_from_defaults; + $config->set('raft_layers', 3); + $config->set('brim_width', 6); + my $print = Slic3r::Test::init_print('20mm_cube', config => $config); + ok Slic3r::Test::gcode($print), 'no conflict between raft/support and brim'; +} + +__END__