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
* for bridges, don't connect if too long (2*spacing). Prevent printing a bridge over another one, following the perimeter.
* try to start the connect the lines from both direction, and choose the one with less continuous lines.
* Fix some cases where rectilinear put itself in a bad state. supermerill/superslicer#1889
* AutoNotFull: now print the dense infill only if the area to cover doesn't fill the sparse area.
* AutoOrEnlarged: now print the auto dense infill, unless the area to cover is wider than (nozzle diameter*2/infill ratio) and the enlarged version is smaller than the auto
* New: AutoOrDisable: now print the auto dense infill, unless the area to cover is wider than (nozzle diameter*2/infill ratio) or the area to cover fill the sparse area.
(when the bridge are near the border of the object)
Also the "only bridge" now won't create artifacts on the perimeter path.
supermerill/SuperSlicer#1917
* 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.
* fix gapfill after external perimeter: Happens if external perimeter has a different width than internal.
supermerill/SuperSlicer#1640
* revert 3b0c006 : not needed anymore. if ever needed again, I added a [size > 1] to fix the problem
supermerill/SuperSlicer#1758
* travel can now slow down to avoid going out of the max_gcode_per_second (useful for avoid_crossing_perimeter)
* travel acceleration is now bound by machine_max_acceleration_travel and not machine_max_acceleration_extruding
supermerill/SuperSlicer#1350supermerill/SuperSlicer#1210
Also change other behaviors to be compliant:
* At the first move don't split the travel
* At the first move, if start_gcode_manual and no layer_gcode, don't lift the nozzle so the printer won't "z-dance", whatever where the nozzle is.
Note:it's a hack, please redo it properly when reworking gcode-writer.
* retract_lift_first_layer is gone back to the old simple behavior (revert b16ecbfc)
* removed auto extra lift for first layer, now that lift_min exists.
* with complete_object, don't unlift at object/first layer change, to avoid Z-dance
* lift_min will be used between brims, skirts, objects but not between object-skirt, object-brim and their object
supermerill/SuperSlicer#1783supermerill/SuperSlicer#1775supermerill/SuperSlicer#1575supermerill/SuperSlicer#599supermerill/SuperSlicer#429supermerill/SuperSlicer#395supermerill/SuperSlicer#241
* on windows, won't be as annoying, stealing the focus.
* Fixing color & activation for ubuntu.
* Also don't activate it by default on MACOS. May need more work for this os.
supermerill/SuperSlicer#1720