Changed the way the surface to fill is computed (more work) to ensure there isn't problem anymore anywhere.
FIXME: enforce_full_fill_volume isn't really compatible with filament_max_overlap right now
* now has a min setting.
* the density can be chosen between the two values, with the highest density possible.
* remove the hardcoded 87.5% density modifier. Replaced by a max of 90% and a min of 80%
* try to place the bridge at the right position (only works if the shape is simple).
FIXME: bridge can be printed on top of the previous one (if began in the wrong direction, or it has a odd number and need to go back to the same side)
try to mitigate that.
It allows to control the spacing vs width (10%% fill vs a bit less)
The 'enforce 100% fill volume' is also adjusted to take that into account
Note that if you're using multiple extruders/filament everywhere (and spacing setting for width setting),
the result may be a bit unexpected, as the gui can't display all the interactions,
also some features (like support) may revert to default overlap value, if printed with multiple filaments.
supermerill/SuperSlicer#1590
with perimeters:
1) Increased accuracy of the contour length parametrization from
float to double, as double should capture the difference of
32bit coord_t with full accuracy (or at least very close).
2) The algorithm to insert the T-joint points into the infill perimeter
contour was improved to avoid inserting duplicate points.
Fixed some issues in internal anchors of the Adaptive Cubic infill.
The ugly and dangerous implicit casting operators in Line, MultiPoint,
Polyline and Polygon were made explicit.
limited anchors, while before a full perimeter segment was always
taken if possible.
2) Adapted the line infills (grid, stars, triangles, cubic) to 1).
This also solves a long standing issue of these infills producing
anchors for each sweep direction independently, thus possibly
overlapping and overextruding, which was quite detrimental
in narrow areas.
3) Refactored cubic adaptive infill anchroing algorithm
for performance and clarity.
Hooks are preferably generated in the direction of printed perimeters.
Small refactoring of the algorithm. Some parts of the algorithm are better documented.
but it works only for half of rectilinear2: because it go over a new polyline start always from the same direction.
So it needs a difficult to do change to rectilinear2. (TODO)