From c8b491e9e7915b3e5534dee0d4576d7a1bafca20 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Fri, 19 Nov 2021 14:46:24 +0100 Subject: [PATCH] (High) limits for number of walls to prevent engine crash. The engine would reserve space for each outline that should be there according to the count, not for each wall that was actually printed. Values of 999999 where chosen after discussion for _some_ of these (but not anything to do wit hskirt-brim, since we use those in the frontend for dissalowed areas) becasue then you can just fill a number of nines to get a completely 'walled' model printed. --- resources/definitions/fdmprinter.def.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 7ba2ebd6f0..22d6aa8dd0 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1056,6 +1056,7 @@ "minimum_value": "0", "minimum_value_warning": "line_width", "maximum_value_warning": "10 * line_width", + "maximum_value": "999999 * line_width", "type": "float", "limit_to_extruder": "wall_x_extruder_nr", "settable_per_mesh": true, @@ -1069,6 +1070,7 @@ "minimum_value": "0", "minimum_value_warning": "1", "maximum_value_warning": "10", + "maximum_value": "999999", "type": "int", "value": "1 if magic_spiralize else max(1, round((wall_thickness - wall_line_width_0) / wall_line_width_x) + 1) if wall_thickness != 0 else 0", "limit_to_extruder": "wall_x_extruder_nr", @@ -1557,6 +1559,7 @@ "default_value": 1, "minimum_value": "0", "maximum_value_warning": "10", + "maximum_value": "999999", "type": "int", "enabled": "(top_layers > 0 or bottom_layers > 0) and (top_bottom_pattern != 'concentric' or top_bottom_pattern_0 != 'concentric' or (roofing_layer_count > 0 and roofing_pattern != 'concentric'))", "limit_to_extruder": "top_bottom_extruder_nr", @@ -1999,6 +2002,7 @@ "default_value": 0, "type": "int", "minimum_value": "0", + "maximum_value": "999999", "enabled": "infill_sparse_density > 0", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true @@ -4446,6 +4450,7 @@ "minimum_value": "0", "minimum_value_warning": "1 if support_pattern == 'concentric' else 0", "maximum_value_warning": "0 if (support_skip_some_zags and support_pattern == 'zigzag') else 3", + "maximum_value": "999999", "type": "int", "value": "1 if support_enable and support_structure == 'tree' else (1 if (support_pattern == 'grid' or support_pattern == 'triangles' or support_pattern == 'concentric') else 0)", "enabled": "support_enable or support_meshes_present", @@ -4556,6 +4561,7 @@ "default_value": 8.0, "minimum_value": "0.0", "maximum_value_warning": "50.0", + "maximum_value": "0.5 * min(machine_width, machine_depth)", "enabled": "(support_enable or support_meshes_present) and support_brim_enable", "settable_per_mesh": false, "settable_per_extruder": true, @@ -4570,6 +4576,7 @@ "default_value": 20, "minimum_value": "0", "maximum_value_warning": "50 / skirt_brim_line_width", + "maximum_value": "0.5 * min(machine_width, machine_depth) / skirt_brim_line_width", "value": "math.ceil(support_brim_width / (skirt_brim_line_width * initial_layer_line_width_factor / 100.0))", "enabled": "(support_enable or support_meshes_present) and support_brim_enable", "settable_per_mesh": false, @@ -5333,6 +5340,7 @@ "default_value": 1, "minimum_value": "0", "maximum_value_warning": "10", + "maximum_value": "0.5 * min(machine_width, machine_depth) / skirt_brim_line_width", "enabled": "resolveOrValue('adhesion_type') == 'skirt'", "settable_per_mesh": false, "settable_per_extruder": true,