From 3c0a4da20dfbf2af2f9fdefd547bbf345635f9a8 Mon Sep 17 00:00:00 2001 From: Lars Brubaker Date: Thu, 7 Apr 2022 17:15:31 -0700 Subject: [PATCH] Added fuzzy surface option --- .../Settings/SettingsKey.cs | 2 + .../Settings/SliceSettingsFields.cs | 37 ++++++++++++++++++- .../Settings/SliceSettingsLayouts.cs | 25 ++++++++----- .../EngineMappingsMatterSlice.cs | 2 + StaticData/Translations/Master.txt | 21 +++++++++++ 5 files changed, 76 insertions(+), 11 deletions(-) diff --git a/MatterControl.Printing/Settings/SettingsKey.cs b/MatterControl.Printing/Settings/SettingsKey.cs index 7badd32a9..4f7ee27fe 100644 --- a/MatterControl.Printing/Settings/SettingsKey.cs +++ b/MatterControl.Printing/Settings/SettingsKey.cs @@ -125,6 +125,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration public const string first_layer_height = nameof(first_layer_height); public const string first_layer_speed = nameof(first_layer_speed); public const string first_layer_temperature = nameof(first_layer_temperature); + public const string fuzzy_thickness = nameof(fuzzy_thickness); + public const string fuzzy_frequency = nameof(fuzzy_frequency); public const string g0 = nameof(g0); public const string has_c_axis = nameof(has_c_axis); public const string has_conductive_nozzle = nameof(has_conductive_nozzle); diff --git a/MatterControl.Printing/Settings/SliceSettingsFields.cs b/MatterControl.Printing/Settings/SliceSettingsFields.cs index a7fe08289..bf7380d8e 100644 --- a/MatterControl.Printing/Settings/SliceSettingsFields.cs +++ b/MatterControl.Printing/Settings/SliceSettingsFields.cs @@ -822,6 +822,41 @@ namespace MatterHackers.MatterControl.SlicerConfiguration Converter = new ValueConverter(), }, new SliceSettingData() + { + SlicerConfigName = SettingsKey.fuzzy_thickness, + PresentationName = "Fuzzy Thickness".Localize(), + HelpText = @"The maximum thickness the fuzz will be from the surface. +To Create: +- Right Click a part + - Modify + - Printing + - Convert to Fuzzy Region +- Place over the area you want to make Fuzzy".Replace("\r", "").Localize(), + DataEditType = DataEditTypes.POSITIVE_DOUBLE, + Units = "mm".Localize(), + DefaultValue = ".3", + RequiredDisplayDetail = DisplayDetailRequired.Advanced, + Converter = new ValueConverter(), + }, + new SliceSettingData() + { + SlicerConfigName = SettingsKey.fuzzy_frequency, + PresentationName = "Fuzzy Frequency".Localize(), + HelpText = @"The average distance along the perimeter to change the depth of the fuzzy pattern. You can think of this as the smoothness of the pattern. + +To Create: +- Right Click a part + - Modify + - Printing + - Convert to Fuzzy Region +- Place over the area you want to make Fuzzy".Replace("\r", "").Localize(), + DataEditType = DataEditTypes.POSITIVE_DOUBLE, + Units = "mm".Localize(), + DefaultValue = ".8", + RequiredDisplayDetail = DisplayDetailRequired.Advanced, + Converter = new ValueConverter(), + }, + new SliceSettingData() { SlicerConfigName = SettingsKey.fill_density, QuickMenuSettings = { { "Light", "10%" }, { "Standard", "30%" }, { "Heavy", "90%" } }, @@ -1649,7 +1684,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration DataEditType = DataEditTypes.POSITIVE_DOUBLE, Units = "mm/s".Localize(), RequiredDisplayDetail = DisplayDetailRequired.Advanced, - DefaultValue = "0", + DefaultValue = "0", Converter = new ValueConverter(), }, new SliceSettingData() diff --git a/MatterControl.Printing/Settings/SliceSettingsLayouts.cs b/MatterControl.Printing/Settings/SliceSettingsLayouts.cs index e03c298e7..30a8aa00c 100644 --- a/MatterControl.Printing/Settings/SliceSettingsLayouts.cs +++ b/MatterControl.Printing/Settings/SliceSettingsLayouts.cs @@ -82,6 +82,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration SettingsKey.expand_thin_walls, SettingsKey.coast_at_end_distance, SettingsKey.monotonic_solid_infill, + SettingsKey.fuzzy_thickness, + SettingsKey.fuzzy_frequency, }), ("Infill", new[] { @@ -360,6 +362,19 @@ namespace MatterHackers.MatterControl.SlicerConfiguration { SettingsKey.report_runout_sensor_data, }), + ("Printer Help", new[] + { + SettingsKey.trim_filament_markdown, + SettingsKey.insert_filament_markdown2, + SettingsKey.running_clean_markdown2, + SettingsKey.insert_filament_1_markdown, + SettingsKey.running_clean_1_markdown, + SettingsKey.printer_sku, + SettingsKey.created_date, + }), + }), + ("Hardware", new (string groupName, string[] settings)[] + { ("Hardware", new[] { SettingsKey.firmware_type, @@ -390,16 +405,6 @@ namespace MatterHackers.MatterControl.SlicerConfiguration SettingsKey.unload_filament_length, SettingsKey.load_filament_speed, }), - ("Printer Help", new[] - { - SettingsKey.trim_filament_markdown, - SettingsKey.insert_filament_markdown2, - SettingsKey.running_clean_markdown2, - SettingsKey.insert_filament_1_markdown, - SettingsKey.running_clean_1_markdown, - SettingsKey.printer_sku, - SettingsKey.created_date, - }), }), ("G-Code", new[] { diff --git a/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs b/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs index 3bb6b42da..36984a012 100644 --- a/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs +++ b/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs @@ -88,6 +88,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration [SettingsKey.bridge_over_infill] = new ExportField("bridgeOverInfill"), [SettingsKey.extrusion_multiplier] = new ExportField("extrusionMultiplier"), [SettingsKey.fill_angle] = new ExportField("infillStartingAngle"), + [SettingsKey.fuzzy_thickness] = new ExportField("fuzzyThickness"), + [SettingsKey.fuzzy_frequency] = new ExportField("fuzzyFrequency"), [SettingsKey.infill_overlap_perimeter] = new ExportField("infillExtendIntoPerimeter"), [SettingsKey.infill_speed] = new ExportField("infillSpeed"), [SettingsKey.infill_type] = new ExportField("infillType"), diff --git a/StaticData/Translations/Master.txt b/StaticData/Translations/Master.txt index 5e55ca919..978cb2699 100644 --- a/StaticData/Translations/Master.txt +++ b/StaticData/Translations/Master.txt @@ -1921,6 +1921,12 @@ Translated:Found a line that is {0} characters long.\n{1}... English:Furthest Back Translated:Furthest Back +English:Fuzzy Frequency +Translated:Fuzzy Frequency + +English:Fuzzy Thickness +Translated:Fuzzy Thickness + English:g/cm³ Translated:g/cm³ @@ -4957,6 +4963,12 @@ Translated:The angle of the infill, measured from the X axis. Not used when brid English:The angle to generate support for Translated:The angle to generate support for +English:The average distance along the perimeter to change the depth of the fuzzy pattern. You can think of this as the smoothness of the pattern.\n\nTo Create:\n- Right Click a part\n - Modify\n - Printing\n - Convert to Fuzzy Region\n- Place over the area you want to make Fuzzy +Translated:The average distance along the perimeter to change the depth of the fuzzy pattern. You can think of this as the smoothness of the pattern.\n\nTo Create:\n- Right Click a part\n - Modify\n - Printing\n - Convert to Fuzzy Region\n- Place over the area you want to make Fuzzy + +English:The average distance along the perimeter to change the depth of the fuzzy pattern. You can think of this as the smoothness of the pattern.\n\nTo Create:\n- Right Click a part\n - Modify\n - Printing\n - Convert to Fuzzy Region\n- Place over the arrears you want to make Fuzzy +Translated:The average distance along the perimeter to change the depth of the fuzzy pattern. You can think of this as the smoothness of the pattern.\n\nTo Create:\n- Right Click a part\n - Modify\n - Printing\n - Convert to Fuzzy Region\n- Place over the arrears you want to make Fuzzy + English:The bed is currently heating and its target temperature cannot be changed until it reaches {0}°C.\n\nYou can set the starting bed temperature in SETTINGS -> Filament -> Temperatures.\n\n{1} Translated:The bed is currently heating and its target temperature cannot be changed until it reaches {0}°C.\n\nYou can set the starting bed temperature in SETTINGS -> Filament -> Temperatures.\n\n{1} @@ -5137,6 +5149,15 @@ Translated:The maximum speed the printer can move. Uused for print time estimati English:The maximum speed the printer will extrude filament. All extrusion speeds will be clamped to this amount. Set to 0 to have no effect. Translated:The maximum speed the printer will extrude filament. All extrusion speeds will be clamped to this amount. Set to 0 to have no effect. +English:The maximum thickness the fuzz will be from the surface.\nTo Create:\n- Right Click a part\n - Modify\n - Printing\n - Convert to Fuzzy Region\n- Place over the area you want to make Fuzzy +Translated:The maximum thickness the fuzz will be from the surface.\nTo Create:\n- Right Click a part\n - Modify\n - Printing\n - Convert to Fuzzy Region\n- Place over the area you want to make Fuzzy + +English:The maximum thickness the fuzz will be from the surface.\nTo Create:\n- Right Click a part\n - Modify\n    - Printing\n      - Convert to Fuzzy Region\n- Place over the area you want to make Fuzzy +Translated:The maximum thickness the fuzz will be from the surface.\nTo Create:\n- Right Click a part\n - Modify\n    - Printing\n      - Convert to Fuzzy Region\n- Place over the area you want to make Fuzzy + +English:The maximum thickness the fuzz will be from the surface.\nTo Create:\n- Right Click a part\n - Modify\n    - Printing\n      - Convert to Fuzzy Region\n- Place over the arrears you want to make Fuzzy +Translated:The maximum thickness the fuzz will be from the surface.\nTo Create:\n- Right Click a part\n - Modify\n    - Printing\n      - Convert to Fuzzy Region\n- Place over the arrears you want to make Fuzzy + English:The minimum amount of time a layer must take to print. If a layer will take less than this amount of time, the movement speed is reduced so the layer print time will match this value, down to the minimum print speed at the slowest. Translated:The minimum amount of time a layer must take to print. If a layer will take less than this amount of time, the movement speed is reduced so the layer print time will match this value, down to the minimum print speed at the slowest.