Merge branch 'master' into qt6_beyond_the_splash

This commit is contained in:
Jelle Spijker 2022-04-08 10:26:12 +02:00
commit 4abdd675f6
No known key found for this signature in database
GPG Key ID: 6662DC033BE6B99A
3 changed files with 21 additions and 7 deletions

View File

@ -383,9 +383,9 @@ class ConvexHullDecorator(SceneNodeDecorator):
# Shrinkage compensation.
if not self._global_stack: # Should never happen.
return convex_hull
scale_factor = self._global_stack.getProperty("material_shrinkage_percentage", "value") / 100.0
scale_factor = self._global_stack.getProperty("material_shrinkage_percentage_xy", "value") / 100.0
result = convex_hull
if scale_factor != 1.0 and not self.getNode().callDecoration("isGroup"):
if scale_factor != 1.0 and scale_factor > 0 and not self.getNode().callDecoration("isGroup"):
center = None
if self._global_stack.getProperty("print_sequence", "value") == "one_at_a_time":
# Find the root node that's placed in the scene; the root of the mesh group.
@ -498,7 +498,7 @@ class ConvexHullDecorator(SceneNodeDecorator):
"adhesion_type", "raft_margin", "print_sequence",
"skirt_gap", "skirt_line_count", "skirt_brim_line_width", "skirt_distance", "brim_line_count"]
_influencing_settings = {"xy_offset", "xy_offset_layer_0", "mold_enabled", "mold_width", "anti_overhang_mesh", "infill_mesh", "cutting_mesh", "material_shrinkage_percentage"}
_influencing_settings = {"xy_offset", "xy_offset_layer_0", "mold_enabled", "mold_width", "anti_overhang_mesh", "infill_mesh", "cutting_mesh", "material_shrinkage_percentage_xy"}
"""Settings that change the convex hull.
If these settings change, the convex hull should be recalculated.

View File

@ -1124,15 +1124,28 @@
},
"wall_transition_filter_distance":
{
"label": "Wall Transition Distance Filter",
"label": "Wall Transitioning Filter Distance",
"description": "If it would be transitioning back and forth between different numbers of walls in quick succession, don't transition at all. Remove transitions if they are closer together than this distance.",
"type": "float",
"unit": "mm",
"default_value": 1.4,
"value": "4 * math.cos(wall_transition_angle / 180 * math.pi) * wall_line_width_x",
"value": "100",
"enabled": false,
"default_value": 100,
"minimum_value": "wall_transition_length",
"minimum_value_warning": "math.cos(wall_transition_angle / 180 * math.pi) * wall_line_width_x",
"maximum_value_warning": "10 * math.cos(wall_transition_angle / 180 * math.pi) * wall_line_width_x"
"maximum_value": "999999"
},
"wall_transition_filter_deviation":
{
"label": "Wall Transitioning Filter Margin",
"description": "Prevent transitioning back and forth between one extra wall and one less. This margin extends the range of line widths which follow to [Minimum Wall Line Width - Margin, 2 * Minimum Wall Line Width + Margin]. Increasing this margin reduces the number of transitions, which reduces the number of extrusion starts/stops and travel time. However, large line width variation can lead to under- or overextrusion problems.",
"type": "float",
"unit": "mm",
"default_value": 0.1,
"value": ".25 * machine_nozzle_size",
"minimum_value": "0",
"minimum_value_warning": ".01",
"maximum_value_warning": "machine_nozzle_size"
},
"wall_0_wipe_dist":
{

View File

@ -30,6 +30,7 @@ wall_thickness
wall_line_count
wall_0_wipe_dist
wall_0_inset
wall_transition_filter_distance
optimize_wall_printing_order
inset_direction
alternate_extra_perimeter