diff --git a/MatterControl.Printing/Settings/SettingsKey.cs b/MatterControl.Printing/Settings/SettingsKey.cs index ccfabb29f..941be5e84 100644 --- a/MatterControl.Printing/Settings/SettingsKey.cs +++ b/MatterControl.Printing/Settings/SettingsKey.cs @@ -166,6 +166,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration public const string min_print_speed = nameof(min_print_speed); public const string min_skirt_length = nameof(min_skirt_length); public const string model = nameof(model); + public const string montonic_solid_infill = nameof(montonic_solid_infill); public const string nozzle_diameter = nameof(nozzle_diameter); public const string number_of_first_layers = nameof(number_of_first_layers); public const string oem_profile_token = nameof(oem_profile_token); diff --git a/MatterControl.Printing/Settings/SliceSettingsFields.cs b/MatterControl.Printing/Settings/SliceSettingsFields.cs index 4227ad6f4..d2d0ff3c4 100644 --- a/MatterControl.Printing/Settings/SliceSettingsFields.cs +++ b/MatterControl.Printing/Settings/SliceSettingsFields.cs @@ -76,6 +76,17 @@ namespace MatterHackers.MatterControl.SlicerConfiguration Converter = new MappedToBoolString(), }, new SliceSettingData() + { + SlicerConfigName = SettingsKey.montonic_solid_infill, + PresentationName = "Monotonic Solid Infill".Localize().Localize(), + HelpText = "When filling bottom and top solid layers always create them so that each new print segment side is touching a previous segment on the same side.".Localize(), + DataEditType = DataEditTypes.CHECK_BOX, + DefaultValue = "1", + RequiredDisplayDetail = DisplayDetailRequired.Advanced, + UiUpdate = UiUpdateRequired.SliceSettings, + Converter = new MappedToBoolString(), + }, + new SliceSettingData() { SlicerConfigName = SettingsKey.sla_mirror_mode, PresentationName = "Mirror Mode".Localize(), @@ -601,7 +612,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration PresentationName = "Seam Placement".Localize(), HelpText = "What to do when there is not a good place to hide the seam.".Localize(), DataEditType = DataEditTypes.LIST, - ListValues = "Furthest Back,Centered In Back,Randomized,Fastest", + ListValues = "Furthest Back,Centered In Back,Always Centered In Back,Randomized,Fastest", DefaultValue = "Furthest Back", }, new SliceSettingData() diff --git a/MatterControl.Printing/Settings/SliceSettingsLayouts.cs b/MatterControl.Printing/Settings/SliceSettingsLayouts.cs index 31e4e28c2..9cb169e0d 100644 --- a/MatterControl.Printing/Settings/SliceSettingsLayouts.cs +++ b/MatterControl.Printing/Settings/SliceSettingsLayouts.cs @@ -76,7 +76,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration SettingsKey.merge_overlapping_lines, SettingsKey.seam_placement, SettingsKey.expand_thin_walls, - SettingsKey.coast_at_end_distance + SettingsKey.coast_at_end_distance, + SettingsKey.montonic_solid_infill, }), ("Infill", new[] { diff --git a/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs b/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs index f6f7aa0fb..5c7c29e4e 100644 --- a/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs +++ b/MatterControlLib/SlicerConfiguration/EngineMappingsMatterSlice.cs @@ -143,6 +143,7 @@ namespace MatterHackers.MatterControl.SlicerConfiguration [SettingsKey.nozzle_diameter] = new ExportField("extrusionWidth"), [SettingsKey.extruder_count] = new ExportField("extruderCount"), [SettingsKey.avoid_crossing_perimeters] = new ExportField("avoidCrossingPerimeters"), + [SettingsKey.montonic_solid_infill] = new ExportField("monotonicSolidInfill"), [SettingsKey.create_raft] = new ExportField("enableRaft"), [SettingsKey.external_perimeters_first] = new ExportField("outsidePerimetersFirst"), [SettingsKey.output_only_first_layer] = new ExportField("outputOnlyFirstLayer"), diff --git a/MatterControlLib/Utilities/WebUtilities/WebCache.cs b/MatterControlLib/Utilities/WebUtilities/WebCache.cs index a8c321ded..f8a040f1f 100644 --- a/MatterControlLib/Utilities/WebUtilities/WebCache.cs +++ b/MatterControlLib/Utilities/WebUtilities/WebCache.cs @@ -382,12 +382,10 @@ namespace MatterHackers.MatterControl double finalScale = imageToLoadInto.Width / (double)unScaledImage.Width; imageToLoadInto.Allocate(imageToLoadInto.Width, (int)(unScaledImage.Height * finalScale), imageToLoadInto.Width * (imageToLoadInto.BitDepth / 8), imageToLoadInto.BitDepth); imageToLoadInto.NewGraphics2D().Render(unScaledImage, 0, 0, 0, finalScale, finalScale); - imageToLoadInto.MarkImageChanged(); } else { StaticData.Instance.LoadImageData(stream, imageToLoadInto); - imageToLoadInto.MarkImageChanged(); } } } diff --git a/Submodules/MatterSlice b/Submodules/MatterSlice index 24899b9ed..a7ba094ee 160000 --- a/Submodules/MatterSlice +++ b/Submodules/MatterSlice @@ -1 +1 @@ -Subproject commit 24899b9ed5ce615865f6eff7f8abd3b762a59440 +Subproject commit a7ba094ee46ddcb0ecc1963320af01bb745a6808 diff --git a/Submodules/agg-sharp b/Submodules/agg-sharp index bee2b8277..ff9de4009 160000 --- a/Submodules/agg-sharp +++ b/Submodules/agg-sharp @@ -1 +1 @@ -Subproject commit bee2b82773e97a827f8ef22d5b0427864c8222e2 +Subproject commit ff9de4009f162a0d516a4964b5514f0023388225