To do this, I'm giving more power to the NumericTextFieldWithUnit QML element, to allow an arbitrary minimum and maximum. Enforcing this minimum and maximum is fairly simple with a JavaScript hook. This hook is necessary because the DoubleValidator allows intermediary values which defeats the purpose, essentially allowing any number as long as it has the correct number of digits.
Printers larger than 2km would start to give overflow errors in its X and Y coordinates. Z is okay up to about 9 billion kilometres in theory, since we don't need to do any squaring math on those coordinates afaik. In practice I'm doing this because at very high values the Arranger also gives errors because Numpy can't handle those extremely big arrays (since the arranger creates a 2mm grid).
Fixes Sentry issue CURA-CB.
For BAM and filled materials the default would give a warning position since for a filament switch it needs to retract more than for the normal print.
Done as a 5 minute fix.
extruderValues('machine_nozzle_offset_x') := [0, 20, -18]
map(abs(extruderValues('machine_nozzle_offset_x') := [0, 20, 18]
max(map(abs(extruderValues('machine_nozzle_offset_x') := 20
So we take the highest offset of all extruders to get the area that can be reached by all extruders. And we take the abs() of all extruder values because positive or negative only means that the other extruders get offset in the same direction.
Fixes#6997.
Retraction_min_travel overrides retraction_combing_max_distance in CuraEngine, so it has no effect to make it any lower.
Contributes to issue CURA-6860.
You can make the small features print FASTER if you like, as well. There is no physical or computational constraint there.
Discovered during investigation of #6866.
This setting will not be automatically translated to support_wall_thickness if it's overwritten, because that would require knowing the line width and we don't know that here. So it's hard to do.
Contributes to issue CURA-7077.
These settings are currently unused by cura, but passed into the PPA
output. Some considerations:
- material_ prepended to all. Even though they are not all
material specific. The consistency is more developer-friendly imho
- defaults taken from generic_pla
- type is float for all, consistent with what I found in this file
CURA-7041
The small hole max size is not used in CuraEngine. It may not be a leaf setting then. Instead, Small Feature Max Length is used which is directly dependent on Small Hole Max Size. They are simply different units of the same thing. This is how we should structure these settings then.