From 5943114574ea56dea9419e6159e56c268621af8f Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci <aar@cpan.org> Date: Tue, 30 Oct 2012 14:25:48 +0100 Subject: [PATCH] Only take layer_id instead of layer in filler objects --- lib/Slic3r/Fill.pm | 2 +- lib/Slic3r/Fill/Base.pm | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/Slic3r/Fill.pm b/lib/Slic3r/Fill.pm index 8e919b738..e3a447d75 100644 --- a/lib/Slic3r/Fill.pm +++ b/lib/Slic3r/Fill.pm @@ -56,7 +56,7 @@ sub make_fill { my $self = shift; my ($layer) = @_; - $_->layer($layer) for values %{$self->fillers}; + $_->layer_id($layer->id) for values %{$self->fillers}; Slic3r::debugf "Filling layer %d:\n", $layer->id; diff --git a/lib/Slic3r/Fill/Base.pm b/lib/Slic3r/Fill/Base.pm index 546d914ab..aa68e2989 100644 --- a/lib/Slic3r/Fill/Base.pm +++ b/lib/Slic3r/Fill/Base.pm @@ -4,7 +4,7 @@ use Moo; use Slic3r::Geometry qw(PI); has 'print' => (is => 'rw'); -has 'layer' => (is => 'rw'); +has 'layer_id' => (is => 'rw'); has 'max_print_dimension' => (is => 'rw'); has 'angle' => (is => 'rw', default => sub { $Slic3r::Config->fill_angle }); @@ -20,9 +20,9 @@ sub infill_direction { $rotate[1] = [ $self->max_print_dimension * sqrt(2) / 2, $self->max_print_dimension * sqrt(2) / 2 ]; @shift = @{$rotate[1]}; - if ($self->layer) { + if (defined $self->layer_id) { # alternate fill direction - my $layer_num = $self->layer->id / $surface->depth_layers; + my $layer_num = $self->layer_id / $surface->depth_layers; my $angle = $self->angles->[$layer_num % @{$self->angles}]; $rotate[0] = Slic3r::Geometry::deg2rad($self->angle) + $angle if $angle; }