From 84b019393e496c74cd5781413e37d46dd0e7f7fb Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Thu, 26 Jan 2017 18:19:07 +0100 Subject: [PATCH 1/5] JSON feat: Spaghetti infill settings (CURA-3238) --- resources/definitions/fdmprinter.def.json | 33 +++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 332aacf194..94bd5f7426 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1089,6 +1089,39 @@ "value": "'lines' if infill_sparse_density > 25 else 'grid'", "settable_per_mesh": true }, + "spaghetti_infill_enabled": + { + "label": "Spaghetti Infill", + "description": "Print the infill every so often, so that the filament will curl up chaotically inside the object. This reduces print time, but the behaviour is very unpredictable.", + "type": "bool", + "default_value": "False", + "settable_per_mesh": true + }, + "spaghetti_max_infill_angle": + { + "label": "Spaghetti Maximum Infill Angle", + "description": "The maximum angle w.r.t. the Z axis of the inside of the print for areas which are to be filled with spaghetti infill afterwards.", + "unit": "°", + "type": "float", + "default_value": 10, + "minimum_value": "0", + "maximum_value": "90", + "maximum_value_warning": "45", + "enabled": "infill_sparse_density > 0 and spaghetti_infill_enabled", + "settable_per_mesh": true + }, + "spaghetti_max_height": + { + "label": "Spaghetti Infill Maximum Height", + "description": "The maximum height of inside space which can be combined and filled from the top.", + "unit": "mm", + "type": "float", + "default_value": 2.0, + "minimum_value": "layer_height", + "maximum_value_warning": "10.0", + "enabled": "infill_sparse_density > 0 and spaghetti_infill_enabled", + "settable_per_mesh": true + }, "sub_div_rad_mult": { "label": "Cubic Subdivision Radius", From 647ff3403e39faba126e1c83380a4173aa2e5649 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 13 Feb 2017 12:03:37 +0100 Subject: [PATCH 2/5] feat: spaghetti_inset setting (CURA-3238) --- resources/definitions/fdmprinter.def.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 94bd5f7426..309d4d2af8 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1122,6 +1122,18 @@ "enabled": "infill_sparse_density > 0 and spaghetti_infill_enabled", "settable_per_mesh": true }, + "spaghetti_inset": + { + "label": "Spaghetti Inset", + "description": "The offset from the walls from where the spaghetti infill will be printed.", + "unit": "mm", + "type": "float", + "default_value": 0.2, + "minimum_value_warning": "0", + "maximum_value_warning": "5.0", + "enabled": "infill_sparse_density > 0 and spaghetti_infill_enabled", + "settable_per_mesh": true + }, "sub_div_rad_mult": { "label": "Cubic Subdivision Radius", From 935ee141d47237465e5a98fae26f2b548ddab2b9 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 13 Feb 2017 14:00:37 +0100 Subject: [PATCH 3/5] feat: spaghetti_flow setting (CURA-3238) --- resources/definitions/fdmprinter.def.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 309d4d2af8..641bd86a6e 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1134,6 +1134,18 @@ "enabled": "infill_sparse_density > 0 and spaghetti_infill_enabled", "settable_per_mesh": true }, + "spaghetti_flow": + { + "label": "Spaghetti Flow", + "description": "Adjusts the density of the spaghetti infill. Note that the Infill Density only controls the line spacing of the filling pattern, not the amount of extrusion for spaghetti infill.", + "unit": "%", + "type": "float", + "default_value": 20, + "minimum_value": "0", + "maximum_value_warning": "100", + "enabled": "infill_sparse_density > 0 and spaghetti_infill_enabled", + "settable_per_mesh": true + }, "sub_div_rad_mult": { "label": "Cubic Subdivision Radius", From 7213d3b5e6bc4d3086b38e7e75b5a30f6d24993e Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 13 Mar 2017 12:18:29 +0100 Subject: [PATCH 4/5] fix: disable infill_sparse_thickness and gradual_infill_steps when spaghetti infill is enabled (CURA-3238) --- resources/definitions/fdmprinter.def.json | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 9984ba689c..c8e2afd8f7 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1094,7 +1094,8 @@ "label": "Spaghetti Infill", "description": "Print the infill every so often, so that the filament will curl up chaotically inside the object. This reduces print time, but the behaviour is very unpredictable.", "type": "bool", - "default_value": "False", + "default_value": false, + "enabled": "infill_sparse_density > 0", "settable_per_mesh": true }, "spaghetti_max_infill_angle": @@ -1252,9 +1253,9 @@ "default_value": 0.1, "minimum_value": "resolveOrValue('layer_height')", "maximum_value_warning": "0.75 * machine_nozzle_size", - "maximum_value": "resolveOrValue('layer_height') * 8", + "maximum_value": "resolveOrValue('layer_height') * (1.45 if spaghetti_infill_enabled else 8)", "value": "resolveOrValue('layer_height')", - "enabled": "infill_sparse_density > 0", + "enabled": "infill_sparse_density > 0 and not spaghetti_infill_enabled", "settable_per_mesh": true }, "gradual_infill_steps": @@ -1265,8 +1266,8 @@ "type": "int", "minimum_value": "0", "maximum_value_warning": "4", - "maximum_value": "(20 - math.log(infill_line_distance) / math.log(2)) if infill_line_distance > 0 else 0", - "enabled": "infill_sparse_density > 0 and infill_pattern != 'cubicsubdiv'", + "maximum_value": "(20 - math.log(infill_line_distance) / math.log(2)) if infill_line_distance > 0 and not spaghetti_infill_enabled else 0", + "enabled": "infill_sparse_density > 0 and infill_pattern != 'cubicsubdiv' not spaghetti_infill_enabled", "settable_per_mesh": true }, "gradual_infill_step_height": From 5f1ffe8a4cda511affe6c3f1464b63fa299e497e Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 20 Mar 2017 13:15:32 +0100 Subject: [PATCH 5/5] JSON fix: better description spaghetti_max_infill_angle (CURA-3558) --- resources/definitions/fdmprinter.def.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index f045d6410e..0c7471ef30 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1127,7 +1127,7 @@ "spaghetti_infill_enabled": { "label": "Spaghetti Infill", - "description": "Print the infill every so often, so that the filament will curl up chaotically inside the object. This reduces print time, but the behaviour is very unpredictable.", + "description": "Print the infill every so often, so that the filament will curl up chaotically inside the object. This reduces print time, but the behaviour is rather unpredictable.", "type": "bool", "default_value": false, "enabled": "infill_sparse_density > 0", @@ -1136,7 +1136,7 @@ "spaghetti_max_infill_angle": { "label": "Spaghetti Maximum Infill Angle", - "description": "The maximum angle w.r.t. the Z axis of the inside of the print for areas which are to be filled with spaghetti infill afterwards.", + "description": "The maximum angle w.r.t. the Z axis of the inside of the print for areas which are to be filled with spaghetti infill afterwards. Lowering this value causes more angled parts in your model to be filled on each layer.", "unit": "°", "type": "float", "default_value": 10,