Browse Source

Use linestring_length() from Boost

Alessandro Ranellucci 12 years ago
parent
commit
bf809d1fd0
3 changed files with 4 additions and 6 deletions
  1. 2 2
      lib/Slic3r/ExPolygon.pm
  2. 1 1
      lib/Slic3r/Line.pm
  3. 1 3
      lib/Slic3r/Polyline.pm

+ 2 - 2
lib/Slic3r/ExPolygon.pm

@@ -7,7 +7,7 @@ use warnings;
 use Boost::Geometry::Utils;
 use List::Util qw(first);
 use Math::Geometry::Voronoi;
-use Slic3r::Geometry qw(X Y A B point_in_polygon same_line line_length epsilon);
+use Slic3r::Geometry qw(X Y A B point_in_polygon same_line epsilon);
 use Slic3r::Geometry::Clipper qw(union_ex JT_MITER);
 
 # the constructor accepts an array of polygons 
@@ -131,7 +131,7 @@ sub encloses_line {
         # optimization
         return @$clip == 1 && same_line($clip->[0], $line);
     } else {
-        return @$clip == 1 && abs(line_length($clip->[0]) - $line->length) < $tolerance;
+        return @$clip == 1 && abs(Boost::Geometry::Utils::linestring_length($clip->[0]) - $line->length) < $tolerance;
     }
 }
 

+ 1 - 1
lib/Slic3r/Line.pm

@@ -29,7 +29,7 @@ sub coincides_with {
 
 sub length {
     my $self = shift;
-    return Slic3r::Geometry::line_length($self);
+    return Boost::Geometry::Utils::linestring_length($self);
 }
 
 sub vector {

+ 1 - 3
lib/Slic3r/Polyline.pm

@@ -79,9 +79,7 @@ sub reverse {
 
 sub length {
     my $self = shift;
-    my $length = 0;
-    $length += $_->length for $self->lines;
-    return $length;
+    return Boost::Geometry::Utils::linestring_length($self);
 }
 
 sub grow {