mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-18 20:28:08 -06:00
Some work to reduce recursive dependencies between classes
This commit is contained in:
parent
849e714147
commit
9f41f0279e
5 changed files with 30 additions and 27 deletions
|
@ -7,6 +7,7 @@ use Slic3r::Geometry::Clipper qw(union_ex);
|
|||
|
||||
has 'id' => (is => 'rw', required => 1, trigger => 1); # sequential number of layer, 0-based
|
||||
has 'object' => (is => 'ro', weak_ref => 1, required => 1, handles => [qw(print config)]);
|
||||
has 'upper_layer' => (is => 'rw', weak_ref => 1);
|
||||
has 'regions' => (is => 'ro', default => sub { [] });
|
||||
has 'slicing_errors' => (is => 'rw');
|
||||
|
||||
|
@ -23,16 +24,10 @@ sub _trigger_id {
|
|||
$_->_trigger_layer for @{$self->regions || []};
|
||||
}
|
||||
|
||||
# the purpose of this method is to be overridden for ::Support layers
|
||||
sub islands {
|
||||
my $self = shift;
|
||||
return @{$self->slices};
|
||||
}
|
||||
|
||||
sub upper_layer_islands {
|
||||
my $self = shift;
|
||||
|
||||
my $upper_layer = $self->object->layers->[ $self->id + 1 ] or return ();
|
||||
return $upper_layer->islands;
|
||||
return $self->slices;
|
||||
}
|
||||
|
||||
sub region {
|
||||
|
@ -75,7 +70,7 @@ has 'support_interface_fills' => (is => 'rw', default => sub { Slic3r::Extrusi
|
|||
|
||||
sub islands {
|
||||
my $self = shift;
|
||||
return @{$self->slices}, @{$self->support_islands};
|
||||
return [ @{$self->slices}, @{$self->support_islands} ];
|
||||
}
|
||||
|
||||
1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue