Changed messagebox text after changing extruder diameter with single extruder printers so it is more obvious why it shows
In case nozzle diameters differ and someone checks 'single_extruder_mm', PrusaSlicer asks whether all diameters should be unified. Answering NO did not undo the SEMM check. It does now.
The initial priming now does not assume anything about bed width and always uses the space it has
In case of circular beds it places the priming lines along the diameter
Custom beds are not supported (they are treated as circular with no extra checks whether it is sane)
Slight refactoring of the WipeTower class (constructor now gets reference to PrintConfig and not the individual values, same with set_extruder). This was legacy from times when the wipe tower was meant to be abstract and independent on the rest)
Calling a printf-like function without a format string will cause gcc to
emit a warhing and causes a build failure on distros which build
everything with -Werror=format-security.
Signed-off-by: Jason Tibbitts <j@tib.bs>
Reported in https://github.com/prusa3d/PrusaSlicer/issues/2752 and was a result of setting support contact z distance to negative value.
This lowered the maximum allowed print_z of the next layer, even though previous layer had object layers too, so the penalty from the contact z should not have been applied.
Fixed simply by rejecting the negative contact_z.
when parsing localized file names by the PlaceholderParser:
UTF8 characters were handled as chars, and the negative char values were
used as indices into 7bit long tables.
used for Perl unit / integration tests only. With this commit,
the code will be cleaner, but likely the unit tests will not run
on Windows, if installed in a localized path.
including the alpha channels, which have their 3 lowest bits set to zero.
In case some blending occurs, the lowest 3 bits will likely be used
to interpolate between the false colors, therefore the 3 lowest bits
may be used to detect alpha blending or multi-sampling.
That could happen on empty support layers which do not necessarily matter, since their spacing is not generally synchronized with the object
The new hopefully correct logic is "if there are extrusions on a layer, check that last layer with extrusions is at most the new layer height below
This is a fixup of changes from 0de6e53 and 6ab1cec