mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-08-13 04:19:03 +08:00
Slight optimization
This commit is contained in:
parent
b266d6217a
commit
27c421c27f
@ -5,7 +5,7 @@ use List::Util qw(sum first);
|
|||||||
use Slic3r::ExtrusionPath ':roles';
|
use Slic3r::ExtrusionPath ':roles';
|
||||||
use Slic3r::Geometry qw(PI A B scale chained_path_items points_coincide);
|
use Slic3r::Geometry qw(PI A B scale chained_path_items points_coincide);
|
||||||
use Slic3r::Geometry::Clipper qw(safety_offset union_ex diff_ex intersection_ex
|
use Slic3r::Geometry::Clipper qw(safety_offset union_ex diff_ex intersection_ex
|
||||||
offset offset2_ex PFT_EVENODD union_pt traverse_pt diff intersection);
|
offset offset2 offset2_ex PFT_EVENODD union_pt traverse_pt diff intersection);
|
||||||
use Slic3r::Surface ':types';
|
use Slic3r::Surface ':types';
|
||||||
|
|
||||||
has 'layer' => (
|
has 'layer' => (
|
||||||
@ -98,12 +98,9 @@ sub make_surfaces {
|
|||||||
# detect thin walls by offsetting slices by half extrusion inwards
|
# detect thin walls by offsetting slices by half extrusion inwards
|
||||||
{
|
{
|
||||||
my $width = $self->perimeter_flow->scaled_width;
|
my $width = $self->perimeter_flow->scaled_width;
|
||||||
my $outgrown = [
|
|
||||||
offset2_ex([ map @$_, map $_->expolygon, @{$self->slices} ], -$width, +$width),
|
|
||||||
];
|
|
||||||
my $diff = diff_ex(
|
my $diff = diff_ex(
|
||||||
[ map $_->p, @{$self->slices} ],
|
[ map $_->p, @{$self->slices} ],
|
||||||
[ map @$_, @$outgrown ],
|
[ offset2([ map @$_, map $_->expolygon, @{$self->slices} ], -$width, +$width) ],
|
||||||
1,
|
1,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user