provided for Perl bindings and their semantic was confusing.
Implemented free function angle() to measure angle between two vectors.
Reworked Polygon::convex/concave_points(), changed the meaning of their
angle threshold parameter.
Removed some unused methods from Perl bindings and tests.
Reworked the "wipe inside at the external perimeter" function
after Point::ccw_angle() was removed.
1) More accurate trimming of an anchor with another infill line
or by another anchor line.
2) Trimming of very short infill lines, which are not anchored,
by another infill lines.
1) Merging of collinear infill lines separated by a thin gap created
by trimming with the boundary polygon.
2) Sorting of the T-joints separately to the left / right of the common
line.
3) Trimming self intersections of the anchor lines.
4) Dropping of very short segments, not anchoring short segments.
Now the algorithm is very different from the OpenVoronoi implementation
and hopefully it is now correct (save numerical issues, which will be
a big PITA).
BoundingBox constructor will no more throw for empty vector of points.
GMP allowed for Vojtech's fork of boost::polygon Voronoi implementation.
Added libslic3r tests for boost::polygon Voronoi. All Voronoi issues
ever reported on the Internet are captured by the tests. Two issues
reported (the two test cases) are real issues which may influence
PrusaSlicer negatively, namely
https://github.com/boostorg/polygon/issues/43