From ed070b3d5acc80ec76a9c0d5ecb34737ecf0e7c8 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 4 Jul 2024 08:52:58 +0200 Subject: [PATCH 1/4] Add settiungs for 'conditional outside' for fuzzy skin. Give the user more control over what is considered 'inside' or 'outside' of the model when the 'outside only' option is on for 'magic fuzzy skin'/'outer wall jitter'. part of CURA-11887 --- resources/definitions/fdmprinter.def.json | 26 +++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 5951125167b..7bd26f39e1e 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -8130,6 +8130,32 @@ "limit_to_extruder": "wall_0_extruder_nr", "settable_per_mesh": true }, + "magic_fuzzy_skin_outside_convex_ratio": + { + "label": "Fuzzy Skin Outside Only Max Convexity Ratio", + "description": "The maximum ratio of the size of the openings versus the circumference of the convex subsections of a layer. Fuzz the parts that have a smaller ratio than this (so, larger ratios will encourage more fuzzed skin). -- Helps determine what is considered 'outside' when 'Fuzzy Skin Outside Only' is enabled. (If there is no opening the ratio is 0.)", + "type": "float", + "unit": "%", + "default_value": 35.0, + "minimum_value": "0.0", + "minimum_value_warning": "0.05", + "maximum_value": "50.0", + "enabled": "magic_fuzzy_skin_enabled and magic_fuzzy_skin_outside_only and not interlocking_enable", + "limit_to_extruder": "wall_0_extruder_nr", + "settable_per_mesh": true + }, + "magic_fuzzy_skin_outside_min_area": + { + "label": "Fuzzy Skin Outside Only Min Non-Enclosed Area", + "description": "The minimum area that a convex subsection of a layer can be to be considered 'inside'. Larger area will exclude more from being inside and enable more areas to be fuzzed.- Helps determine what is considered 'outside' when 'Fuzzy Skin Outside Only' is enabled; for any not fully enclosed area that could be considered inside (convex regions of the layer-polygon).", + "type": "float", + "unit": "mm²", + "default_value": 9.0, + "minimum_value": "0.0", + "enabled": "magic_fuzzy_skin_enabled and magic_fuzzy_skin_outside_only and not interlocking_enable", + "limit_to_extruder": "wall_0_extruder_nr", + "settable_per_mesh": true + }, "magic_fuzzy_skin_thickness": { "label": "Fuzzy Skin Thickness", From 45f115e7174e0e842e32bd6fcc141f5feb7f0cda Mon Sep 17 00:00:00 2001 From: rburema Date: Thu, 4 Jul 2024 06:54:57 +0000 Subject: [PATCH 2/4] Applied printer-linter format --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 7bd26f39e1e..4141c7b8713 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -8149,7 +8149,7 @@ "label": "Fuzzy Skin Outside Only Min Non-Enclosed Area", "description": "The minimum area that a convex subsection of a layer can be to be considered 'inside'. Larger area will exclude more from being inside and enable more areas to be fuzzed.- Helps determine what is considered 'outside' when 'Fuzzy Skin Outside Only' is enabled; for any not fully enclosed area that could be considered inside (convex regions of the layer-polygon).", "type": "float", - "unit": "mm²", + "unit": "mm\u00b2", "default_value": 9.0, "minimum_value": "0.0", "enabled": "magic_fuzzy_skin_enabled and magic_fuzzy_skin_outside_only and not interlocking_enable", From 91b8ac3882102bab1982a4120f0129aa2225b640 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 4 Jul 2024 09:25:03 +0200 Subject: [PATCH 3/4] Fuzzy skin outside-only detection: Set defaults to 'old behaviour'. Policy to not confuse already existing users. part of CURA-11887 --- resources/definitions/fdmprinter.def.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 4141c7b8713..4551c7355d3 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -8136,9 +8136,8 @@ "description": "The maximum ratio of the size of the openings versus the circumference of the convex subsections of a layer. Fuzz the parts that have a smaller ratio than this (so, larger ratios will encourage more fuzzed skin). -- Helps determine what is considered 'outside' when 'Fuzzy Skin Outside Only' is enabled. (If there is no opening the ratio is 0.)", "type": "float", "unit": "%", - "default_value": 35.0, + "default_value": 0.0, "minimum_value": "0.0", - "minimum_value_warning": "0.05", "maximum_value": "50.0", "enabled": "magic_fuzzy_skin_enabled and magic_fuzzy_skin_outside_only and not interlocking_enable", "limit_to_extruder": "wall_0_extruder_nr", From c82507122ca2c3a465cb727efa5bfad6abb76ade Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 4 Jul 2024 09:27:05 +0200 Subject: [PATCH 4/4] Fuzzy skin outside-only detection: Set visibility for new settings. part of CURA-11887 --- resources/setting_visibility/expert.cfg | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/setting_visibility/expert.cfg b/resources/setting_visibility/expert.cfg index f0ba478a53b..a909dc95dee 100644 --- a/resources/setting_visibility/expert.cfg +++ b/resources/setting_visibility/expert.cfg @@ -452,6 +452,8 @@ support_conical_angle support_conical_min_width magic_fuzzy_skin_enabled magic_fuzzy_skin_outside_only +magic_fuzzy_skin_outside_convex_ratio +magic_fuzzy_skin_outside_min_area magic_fuzzy_skin_thickness magic_fuzzy_skin_point_density magic_fuzzy_skin_point_dist