Take extruder clearance radius into account when autopositioning
This commit is contained in:
parent
ce3e2d396e
commit
bc4b4a981b
@ -164,8 +164,14 @@ sub arrange_objects {
|
|||||||
$partx = $object->x_length if $object->x_length > $partx;
|
$partx = $object->x_length if $object->x_length > $partx;
|
||||||
$party = $object->y_length if $object->y_length > $party;
|
$party = $object->y_length if $object->y_length > $party;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# object distance is max(duplicate_distance, clearance_radius)
|
||||||
|
my $distance = $Slic3r::complete_objects && $Slic3r::extruder_clearance_radius > $Slic3r::duplicate_distance
|
||||||
|
? $Slic3r::extruder_clearance_radius
|
||||||
|
: $Slic3r::duplicate_distance;
|
||||||
|
|
||||||
my @positions = Slic3r::Geometry::arrange
|
my @positions = Slic3r::Geometry::arrange
|
||||||
($total_parts, $partx, $party, (map scale $_, @$Slic3r::bed_size), scale $Slic3r::duplicate_distance);
|
($total_parts, $partx, $party, (map scale $_, @$Slic3r::bed_size), scale $distance);
|
||||||
|
|
||||||
for my $obj_idx (0..$#{$self->objects}) {
|
for my $obj_idx (0..$#{$self->objects}) {
|
||||||
@{$self->copies->[$obj_idx]} = splice @positions, 0, scalar @{$self->copies->[$obj_idx]};
|
@{$self->copies->[$obj_idx]} = splice @positions, 0, scalar @{$self->copies->[$obj_idx]};
|
||||||
|
Loading…
Reference in New Issue
Block a user