Ensure there's no numerical error when searching for concave points
This commit is contained in:
parent
1e3ce9b8c4
commit
5c7b447f07
@ -7,7 +7,7 @@ use parent 'Slic3r::Polyline';
|
|||||||
|
|
||||||
use Slic3r::Geometry qw(polygon_lines polygon_remove_parallel_continuous_edges
|
use Slic3r::Geometry qw(polygon_lines polygon_remove_parallel_continuous_edges
|
||||||
polygon_remove_acute_vertices polygon_segment_having_point point_in_polygon
|
polygon_remove_acute_vertices polygon_segment_having_point point_in_polygon
|
||||||
PI X1 X2 Y1 Y2);
|
PI X1 X2 Y1 Y2 epsilon);
|
||||||
use Slic3r::Geometry::Clipper qw(JT_MITER);
|
use Slic3r::Geometry::Clipper qw(JT_MITER);
|
||||||
|
|
||||||
sub lines {
|
sub lines {
|
||||||
@ -159,7 +159,7 @@ sub concave_points {
|
|||||||
my $self = shift;
|
my $self = shift;
|
||||||
|
|
||||||
return map $self->[$_],
|
return map $self->[$_],
|
||||||
grep Slic3r::Geometry::angle3points(@$self[$_, $_-1, $_+1]) < PI,
|
grep Slic3r::Geometry::angle3points(@$self[$_, $_-1, $_+1]) < PI - epsilon,
|
||||||
-1 .. ($#$self-1);
|
-1 .. ($#$self-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user