Fixed regression preventing arcs to be generated at all (center detection is still buggy)

This commit is contained in:
Alessandro Ranellucci 2012-06-07 19:53:27 +02:00
parent c0c53c4397
commit 0c4b112718
3 changed files with 8 additions and 2 deletions

View File

@ -120,7 +120,10 @@ sub extrude_path {
# detect arcs
if ($Slic3r::gcode_arcs && !$recursive) {
my $gcode = "";
$gcode .= $self->extrude_path($_, $description, 1) for $path->detect_arcs;
foreach my $arc_path ($path->detect_arcs) {
$arc_path->deserialize;
$gcode .= $self->extrude_path($arc_path, $description, 1);
}
return $gcode;
}

View File

@ -28,6 +28,8 @@ sub split_at {
$point = Slic3r::Point->new($point);
$self->deserialize;
# find index of point
my $i = -1;
for (my $n = 0; $n <= $#{$self->polygon}; $n++) {
@ -50,6 +52,7 @@ sub split_at {
sub split_at_first_point {
my $self = shift;
$self->deserialize;
return $self->split_at($self->polygon->[0]);
}

View File

@ -184,7 +184,7 @@ sub make_fill {
paths => [
map {
$_->isa('Slic3r::Polygon')
? Slic3r::ExtrusionLoop->new(polygon => $_, role => EXTR_ROLE_SOLIDFILL)->split_at($_->[0])
? Slic3r::ExtrusionLoop->new(polygon => $_, role => EXTR_ROLE_SOLIDFILL)->split_at_first_point
: Slic3r::ExtrusionPath->new(polyline => $_, role => EXTR_ROLE_SOLIDFILL)
} @{$layer->thin_fills},
],