From 92fb2bc774a7918c5a7e62cf13f6a180bb8990d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tiago=20Concei=C3=A7=C3=A3o?= Date: Wed, 7 Jun 2023 22:28:50 +0100 Subject: [PATCH] v3.14.2 - **PrusaSlicer printers:** - (Add) Elegoo Mars 4 Ultra - (Add) Elegoo Saturn 3 - (Add) Elegoo Saturn 3 Ultra - (Fix) AnyCubic file format: Retract speed (slow/fast) variables was swapped (#722) --- CHANGELOG.md | 8 + CREDITS.md | 3 +- PrusaSlicer/printer/Elegoo Mars 4 Ultra.ini | 42 ++++ PrusaSlicer/printer/Elegoo Saturn 2.ini | 4 +- PrusaSlicer/printer/Elegoo Saturn 3 Ultra.ini | 42 ++++ PrusaSlicer/printer/Elegoo Saturn 3.ini | 42 ++++ RELEASE_NOTES.md | 7 +- Scripts/010 Editor/PhotonWorkshop.bt | 28 +-- UVtools.Core/FileFormats/FileFormat.cs | 33 +--- .../FileFormats/PhotonWorkshopFile.cs | 30 +-- UVtools.Core/Printer/Machine.cs | 16 +- UVtools.Core/UVtools.Core.csproj | 2 +- UVtools.Installer/UVtools.Installer.wixproj | 180 +++++++++--------- .../SuggestionWaitTimeBeforeCureControl.axaml | 3 +- UVtools.WPF/UVtools.WPF.csproj | 2 +- 15 files changed, 284 insertions(+), 158 deletions(-) create mode 100644 PrusaSlicer/printer/Elegoo Mars 4 Ultra.ini create mode 100644 PrusaSlicer/printer/Elegoo Saturn 3 Ultra.ini create mode 100644 PrusaSlicer/printer/Elegoo Saturn 3.ini diff --git a/CHANGELOG.md b/CHANGELOG.md index a1d38249..bf3dcdaf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 07/06/2023 - v3.14.2 + +- **PrusaSlicer printers:** + - (Add) Elegoo Mars 4 Ultra + - (Add) Elegoo Saturn 3 + - (Add) Elegoo Saturn 3 Ultra +- (Fix) AnyCubic file format: Retract speed (slow/fast) variables was swapped (#722) + ## 03/06/2023 - v3.14.1 - (Improvement) File formats: When full encoding make sure thumbnails are all set according to file, otherwise clone/create them diff --git a/CREDITS.md b/CREDITS.md index 8a2b59ab..4841cd1f 100644 --- a/CREDITS.md +++ b/CREDITS.md @@ -76,4 +76,5 @@ - Steven Woodward - Piotr Czerkasow - Kevin Bullmann -- Robert Redden \ No newline at end of file +- Robert Redden +- Nick Spirov \ No newline at end of file diff --git a/PrusaSlicer/printer/Elegoo Mars 4 Ultra.ini b/PrusaSlicer/printer/Elegoo Mars 4 Ultra.ini new file mode 100644 index 00000000..14915b51 --- /dev/null +++ b/PrusaSlicer/printer/Elegoo Mars 4 Ultra.ini @@ -0,0 +1,42 @@ +# generated by PrusaSlicer 2.5.2+win64 on 2023-06-06 at 16:47:15 UTC +absolute_correction = 0 +area_fill = 50 +bed_custom_model = +bed_custom_texture = +bed_shape = 0x0,153.36x0,153.36x77.76,0x77.76 +default_sla_material_profile = Prusa Orange Tough 0.05 +default_sla_print_profile = 0.05 Normal +display_height = 77.76 +display_mirror_x = 1 +display_mirror_y = 0 +display_orientation = landscape +display_pixels_x = 8520 +display_pixels_y = 4320 +display_width = 153.36 +elefant_foot_compensation = 0.2 +elefant_foot_min_width = 0.2 +fast_tilt_time = 5 +gamma_correction = 1 +high_viscosity_tilt_time = 10 +host_type = octoprint +inherits = Original Prusa SL1 +max_exposure_time = 120 +max_initial_exposure_time = 300 +max_print_height = 165 +min_exposure_time = 1 +min_initial_exposure_time = 1 +print_host = +printer_model = SL1 +printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_SL1\nPRINTER_VENDOR_ELEGOO\nPRINTER_MODEL_MARS4_ULTRA\nFILEFORMAT_GOO\n\nSTART_CUSTOM_VALUES\nBottomWaitTimeBeforeCure_3\nWaitTimeBeforeCure_2.5\nBottomWaitTimeAfterCure_3\nWaitTimeAfterCure_1\nBottomLiftHeight_7\nLiftHeight_5\nBottomLiftSpeed_80\nLiftSpeed_100\nBottomWaitTimeAfterLift_0\nWaitTimeAfterLift_0\nRetractSpeed_150\nBottomLightPWM_255\nLightPWM_255\nEND_CUSTOM_VALUES +printer_settings_id = +printer_technology = SLA +printer_variant = default +printer_vendor = +printhost_apikey = +printhost_cafile = +relative_correction = 1,1 +relative_correction_x = 1 +relative_correction_y = 1 +relative_correction_z = 1 +slow_tilt_time = 8 +thumbnails = 290x290,116x116 diff --git a/PrusaSlicer/printer/Elegoo Saturn 2.ini b/PrusaSlicer/printer/Elegoo Saturn 2.ini index 6b51f8e4..459e463c 100644 --- a/PrusaSlicer/printer/Elegoo Saturn 2.ini +++ b/PrusaSlicer/printer/Elegoo Saturn 2.ini @@ -1,4 +1,4 @@ -# generated by PrusaSlicer 2.5.0+win64 on 2022-10-12 at 19:38:31 UTC +# generated by PrusaSlicer 2.5.2+win64 on 2023-06-06 at 17:10:18 UTC absolute_correction = 0 area_fill = 50 bed_custom_model = @@ -27,7 +27,7 @@ min_exposure_time = 1 min_initial_exposure_time = 1 print_host = printer_model = SL1 -printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_SL1\nPRINTER_VENDOR_ELEGOO\nPRINTER_MODEL_SATURN_2\nFILEFORMAT_ENCRYPTED.CTB\n\nSTART_CUSTOM_VALUES\nLightOffDelay_0\nBottomLightOffDelay_0\nBottomLiftHeight_7\nLiftHeight_7\nBottomLiftSpeed_70\nLiftSpeed_70\nRetractSpeed_210\nBottomLightPWM_255\nLightPWM_255\nEND_CUSTOM_VALUES +printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_SL1\nPRINTER_VENDOR_ELEGOO\nPRINTER_MODEL_SATURN2\nFILEFORMAT_ENCRYPTED.CTB\n\nSTART_CUSTOM_VALUES\nLightOffDelay_0\nBottomLightOffDelay_0\nBottomLiftHeight_7\nLiftHeight_7\nBottomLiftSpeed_70\nLiftSpeed_70\nRetractSpeed_210\nBottomLightPWM_255\nLightPWM_255\nEND_CUSTOM_VALUES printer_settings_id = printer_technology = SLA printer_variant = default diff --git a/PrusaSlicer/printer/Elegoo Saturn 3 Ultra.ini b/PrusaSlicer/printer/Elegoo Saturn 3 Ultra.ini new file mode 100644 index 00000000..8d94a4fa --- /dev/null +++ b/PrusaSlicer/printer/Elegoo Saturn 3 Ultra.ini @@ -0,0 +1,42 @@ +# generated by PrusaSlicer 2.5.2+win64 on 2023-06-06 at 17:10:08 UTC +absolute_correction = 0 +area_fill = 50 +bed_custom_model = +bed_custom_texture = +bed_shape = 0x0,218.88x0,218.88x122.88,0x122.88 +default_sla_material_profile = Prusa Orange Tough 0.05 +default_sla_print_profile = 0.05 Normal +display_height = 122.88 +display_mirror_x = 1 +display_mirror_y = 0 +display_orientation = landscape +display_pixels_x = 11520 +display_pixels_y = 5120 +display_width = 218.88 +elefant_foot_compensation = 0.2 +elefant_foot_min_width = 0.2 +fast_tilt_time = 5 +gamma_correction = 1 +high_viscosity_tilt_time = 10 +host_type = octoprint +inherits = Original Prusa SL1 +max_exposure_time = 120 +max_initial_exposure_time = 300 +max_print_height = 260 +min_exposure_time = 1 +min_initial_exposure_time = 1 +print_host = +printer_model = SL1 +printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_SL1\nPRINTER_VENDOR_ELEGOO\nPRINTER_MODEL_SATURN3_ULTRA\nFILEFORMAT_GOO\n\nSTART_CUSTOM_VALUES\nLightOffDelay_0\nBottomLightOffDelay_0\nBottomLiftHeight_7\nLiftHeight_7\nBottomLiftSpeed_70\nLiftSpeed_70\nRetractSpeed_210\nBottomLightPWM_255\nLightPWM_255\nEND_CUSTOM_VALUES +printer_settings_id = +printer_technology = SLA +printer_variant = default +printer_vendor = +printhost_apikey = +printhost_cafile = +relative_correction = 1,1 +relative_correction_x = 1 +relative_correction_y = 1 +relative_correction_z = 1 +slow_tilt_time = 8 +thumbnails = 290x290,116x116 diff --git a/PrusaSlicer/printer/Elegoo Saturn 3.ini b/PrusaSlicer/printer/Elegoo Saturn 3.ini new file mode 100644 index 00000000..2e50a7bd --- /dev/null +++ b/PrusaSlicer/printer/Elegoo Saturn 3.ini @@ -0,0 +1,42 @@ +# generated by PrusaSlicer 2.5.2+win64 on 2023-06-06 at 17:10:13 UTC +absolute_correction = 0 +area_fill = 50 +bed_custom_model = +bed_custom_texture = +bed_shape = 0x0,218.88x0,218.88x122.88,0x122.88 +default_sla_material_profile = Prusa Orange Tough 0.05 +default_sla_print_profile = 0.05 Normal +display_height = 122.88 +display_mirror_x = 1 +display_mirror_y = 0 +display_orientation = landscape +display_pixels_x = 11520 +display_pixels_y = 5120 +display_width = 218.88 +elefant_foot_compensation = 0.2 +elefant_foot_min_width = 0.2 +fast_tilt_time = 5 +gamma_correction = 1 +high_viscosity_tilt_time = 10 +host_type = octoprint +inherits = Original Prusa SL1 +max_exposure_time = 120 +max_initial_exposure_time = 300 +max_print_height = 249.7 +min_exposure_time = 1 +min_initial_exposure_time = 1 +print_host = +printer_model = SL1 +printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_SL1\nPRINTER_VENDOR_ELEGOO\nPRINTER_MODEL_SATURN3\nFILEFORMAT_GOO\n\nSTART_CUSTOM_VALUES\nLightOffDelay_0\nBottomLightOffDelay_0\nBottomLiftHeight_7\nLiftHeight_7\nBottomLiftSpeed_70\nLiftSpeed_70\nRetractSpeed_210\nBottomLightPWM_255\nLightPWM_255\nEND_CUSTOM_VALUES +printer_settings_id = +printer_technology = SLA +printer_variant = default +printer_vendor = +printhost_apikey = +printhost_cafile = +relative_correction = 1,1 +relative_correction_x = 1 +relative_correction_y = 1 +relative_correction_z = 1 +slow_tilt_time = 8 +thumbnails = 290x290,116x116 diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 3d25f72e..64e5104f 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,3 +1,6 @@ -- (Improvement) File formats: When full encoding make sure thumbnails are all set according to file, otherwise clone/create them -- (Fix) Encrypted CTB: Files are getting read/write without thumbnails making invalid files +- **PrusaSlicer printers:** + - (Add) Elegoo Mars 4 Ultra + - (Add) Elegoo Saturn 3 + - (Add) Elegoo Saturn 3 Ultra +- (Fix) AnyCubic file format: Retract speed (slow/fast) variables was swapped (#722) diff --git a/Scripts/010 Editor/PhotonWorkshop.bt b/Scripts/010 Editor/PhotonWorkshop.bt index 0a460dd3..7cca4727 100644 --- a/Scripts/010 Editor/PhotonWorkshop.bt +++ b/Scripts/010 Editor/PhotonWorkshop.bt @@ -191,20 +191,20 @@ if(fileMark.Version >= 516 && fileMark.ExtraAddress > 0){ FSeek(fileMark.ExtraAddress); struct EXTRA { SECTION section; - uint BottomStateNumber ; // 2 - float BottomLiftHeight0 ; - float BottomLiftSpeed0 ; - float BottomRetractSpeed0 ; - float BottomLiftHeight1 ; - float BottomLiftSpeed1 ; - float BottomRetractSpeed1 ; - uint StateNumber ; // 2 - float LiftHeight0 ; - float LiftSpeed0 ; - float RetractSpeed0 ; - float LiftHeight1 ; - float LiftSpeed1 ; - float RetractSpeed1 ; + uint BottomLiftCount ; // 2 + float BottomLiftHeight0 ; // Slow + float BottomLiftSpeed0 ; // Slow + float BottomRetractSpeed0 ; // Slow + float BottomLiftHeight1 ; // Fast + float BottomLiftSpeed1 ; // Fast + float BottomRetractSpeed1 ; // Fast + uint NormalLiftCount ; // 2 + float LiftHeight0 ; // Slow + float LiftSpeed0 ; // Slow + float RetractSpeed0 ; // Slow + float LiftHeight1 ; // Fast + float LiftSpeed1 ; // Fast + float RetractSpeed1 ; // Fast } extra; } diff --git a/UVtools.Core/FileFormats/FileFormat.cs b/UVtools.Core/FileFormats/FileFormat.cs index 6abe3d3d..6e92ff5e 100644 --- a/UVtools.Core/FileFormats/FileFormat.cs +++ b/UVtools.Core/FileFormats/FileFormat.cs @@ -2670,8 +2670,8 @@ public string RetractRepresentation { var str = string.Empty; - var haveBottomRetractHeight = CanUseLiftHeight; - var haveRetractHeight = CanUseBottomLiftHeight; + var haveBottomRetractHeight = CanUseBottomLiftHeight; + var haveRetractHeight = CanUseLiftHeight; var haveBottomRetractSpeed = CanUseBottomRetractSpeed; var haveRetractSpeed = CanUseRetractSpeed; var haveBottomRetractHeight2 = CanUseBottomRetractHeight2; @@ -2724,34 +2724,7 @@ public string RetractRepresentation } str += "mm/min"; - - // Sequence 2 - /*if (haveBottomRetractHeight2) - { - str += $"\n2th: {BottomRetractHeight2.ToString(CultureInfo.InvariantCulture)}"; - } - if (haveRetractHeight2) - { - str += str.EndsWith("mm/min") ? "\n2th: " : '/'; - str += RetractHeight2.ToString(CultureInfo.InvariantCulture); - } - - if (str.EndsWith("mm/min")) return str; - - str += "mm @ "; - - if (haveBottomRetractSpeed2) - { - str += BottomRetractSpeed2.ToString(CultureInfo.InvariantCulture); - } - if (haveRetractSpeed2) - { - if (haveBottomRetractSpeed2) str += '/'; - str += RetractSpeed2.ToString(CultureInfo.InvariantCulture); - } - - str += "mm/min";*/ - + return str; } } diff --git a/UVtools.Core/FileFormats/PhotonWorkshopFile.cs b/UVtools.Core/FileFormats/PhotonWorkshopFile.cs index 937f374d..aaa47403 100644 --- a/UVtools.Core/FileFormats/PhotonWorkshopFile.cs +++ b/UVtools.Core/FileFormats/PhotonWorkshopFile.cs @@ -521,20 +521,20 @@ public class Extra : AnycubicNamedTable { protected override string DefaultTableName => "EXTRA"; - [FieldOrder(2)] public uint BottomStateNumber { get; set; } = 2; - [FieldOrder(3)] public float BottomLiftHeight1 { get; set; } - [FieldOrder(4)] public float BottomLiftSpeed1 { get; set; } = SpeedConverter.Convert(DefaultBottomLiftSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); - [FieldOrder(5)] public float BottomRetractSpeed1 { get; set; } = SpeedConverter.Convert(DefaultBottomRetractSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); - [FieldOrder(6)] public float BottomLiftHeight2 { get; set; } - [FieldOrder(7)] public float BottomLiftSpeed2 { get; set; } = SpeedConverter.Convert(DefaultBottomLiftSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); - [FieldOrder(8)] public float BottomRetractSpeed2 { get; set; } = SpeedConverter.Convert(DefaultBottomRetractSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); - [FieldOrder(9)] public uint StateNumber { get; set; } = 2; - [FieldOrder(10)] public float LiftHeight1 { get; set; } - [FieldOrder(11)] public float LiftSpeed1 { get; set; } = SpeedConverter.Convert(DefaultLiftSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); - [FieldOrder(12)] public float RetractSpeed1 { get; set; } = SpeedConverter.Convert(DefaultRetractSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); - [FieldOrder(13)] public float LiftHeight2 { get; set; } - [FieldOrder(14)] public float LiftSpeed2 { get; set; } = SpeedConverter.Convert(DefaultLiftSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); - [FieldOrder(15)] public float RetractSpeed2 { get; set; } = SpeedConverter.Convert(DefaultRetractSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(0)] public uint BottomLiftCount { get; set; } = 2; + [FieldOrder(1)] public float BottomLiftHeight1 { get; set; } + [FieldOrder(2)] public float BottomLiftSpeed1 { get; set; } = SpeedConverter.Convert(DefaultBottomLiftSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(3)] public float BottomRetractSpeed2 { get; set; } = SpeedConverter.Convert(DefaultBottomRetractSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(4)] public float BottomLiftHeight2 { get; set; } + [FieldOrder(5)] public float BottomLiftSpeed2 { get; set; } = SpeedConverter.Convert(DefaultBottomLiftSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(6)] public float BottomRetractSpeed1 { get; set; } = SpeedConverter.Convert(DefaultBottomRetractSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(7)] public uint NormalLiftCount { get; set; } = 2; + [FieldOrder(8)] public float LiftHeight1 { get; set; } + [FieldOrder(9)] public float LiftSpeed1 { get; set; } = SpeedConverter.Convert(DefaultLiftSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(10)] public float RetractSpeed2 { get; set; } = SpeedConverter.Convert(DefaultRetractSpeed, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(11)] public float LiftHeight2 { get; set; } + [FieldOrder(12)] public float LiftSpeed2 { get; set; } = SpeedConverter.Convert(DefaultLiftSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); + [FieldOrder(13)] public float RetractSpeed1 { get; set; } = SpeedConverter.Convert(DefaultRetractSpeed2, CoreSpeedUnit, SpeedUnit.MillimetersPerSecond); public Extra() { @@ -543,7 +543,7 @@ public Extra() public override string ToString() { - return $"{base.ToString()}, {nameof(BottomStateNumber)}: {BottomStateNumber}, {nameof(BottomLiftHeight1)}: {BottomLiftHeight1}, {nameof(BottomLiftSpeed1)}: {BottomLiftSpeed1}, {nameof(BottomRetractSpeed1)}: {BottomRetractSpeed1}, {nameof(BottomLiftHeight2)}: {BottomLiftHeight2}, {nameof(BottomLiftSpeed2)}: {BottomLiftSpeed2}, {nameof(BottomRetractSpeed2)}: {BottomRetractSpeed2}, {nameof(StateNumber)}: {StateNumber}, {nameof(LiftHeight1)}: {LiftHeight1}, {nameof(LiftSpeed1)}: {LiftSpeed1}, {nameof(RetractSpeed1)}: {RetractSpeed1}, {nameof(LiftHeight2)}: {LiftHeight2}, {nameof(LiftSpeed2)}: {LiftSpeed2}, {nameof(RetractSpeed2)}: {RetractSpeed2}"; + return $"{base.ToString()}, {nameof(BottomLiftCount)}: {BottomLiftCount}, {nameof(BottomLiftHeight1)}: {BottomLiftHeight1}, {nameof(BottomLiftSpeed1)}: {BottomLiftSpeed1}, {nameof(BottomRetractSpeed1)}: {BottomRetractSpeed1}, {nameof(BottomLiftHeight2)}: {BottomLiftHeight2}, {nameof(BottomLiftSpeed2)}: {BottomLiftSpeed2}, {nameof(BottomRetractSpeed2)}: {BottomRetractSpeed2}, {nameof(NormalLiftCount)}: {NormalLiftCount}, {nameof(LiftHeight1)}: {LiftHeight1}, {nameof(LiftSpeed1)}: {LiftSpeed1}, {nameof(RetractSpeed1)}: {RetractSpeed1}, {nameof(LiftHeight2)}: {LiftHeight2}, {nameof(LiftSpeed2)}: {LiftSpeed2}, {nameof(RetractSpeed2)}: {RetractSpeed2}"; } } #endregion diff --git a/UVtools.Core/Printer/Machine.cs b/UVtools.Core/Printer/Machine.cs index b280bfee..002157a0 100644 --- a/UVtools.Core/Printer/Machine.cs +++ b/UVtools.Core/Printer/Machine.cs @@ -75,6 +75,13 @@ public Machine(PrinterBrand brand, string name, string? model, ushort resolution Brand = brand; Name = name; Model = model ?? name; + + /*if (model is null && name.Length > 0) + { + var whiteSpaceIndex = name.IndexOf(' ', StringComparison.Ordinal) + 1; + if (whiteSpaceIndex > 0) Model = name[whiteSpaceIndex..]; + }*/ + ResolutionX = resolutionX; ResolutionY = resolutionY; DisplayWidth = displayWidth; @@ -86,6 +93,9 @@ public Machine(PrinterBrand brand, string name, string? model, ushort resolution public Machine(PrinterBrand brand, string name, string? model, Size resolution, SizeF display, float machineZ, FlipDirection displayMirror = default) : this(brand, name, model, (ushort)resolution.Width, (ushort)resolution.Height, display.Width, display.Height, machineZ, displayMirror) { } + public Machine(PrinterBrand brand, string name, Size resolution, SizeF display, float machineZ, FlipDirection displayMirror = default) + : this(brand, name, null, (ushort)resolution.Width, (ushort)resolution.Height, display.Width, display.Height, machineZ, displayMirror) { } + public Machine(ushort resolutionX, ushort resolutionY, float displayWidth, float displayHeight, float machineZ, FlipDirection displayMirror = default, PrinterBrand brand = default, string name = FileFormats.FileFormat.DefaultMachineName, string? model = null) : this(brand, name, model, resolutionX, resolutionY, displayWidth, displayHeight, machineZ, displayMirror) {} @@ -254,14 +264,18 @@ public Machine Clone() new(PrinterBrand.Creality, "Creality LD-006", "LD-006", 3840, 2400, 192f, 120f, 245f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Jupiter", "Jupiter", 5448, 3064, 277.848f, 156.264f, 300f, FlipDirection.Horizontally), + new(PrinterBrand.Elegoo, "Elegoo Mars", "Mars", 1440, 2560, 68.04f, 120.96f, 150f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Mars 2 Pro", "Mars 2 Pro", 1620, 2560, 82.62f, 130.56f, 160f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Mars 2", "Mars 2", 1620, 2560, 82.62f, 130.56f, 150f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Mars 3", "Mars 3", 4098, 2560, 143.43f, 89.6f, 175f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Mars 4", "Mars 4", 4098, 2560, 132.8f, 74.7f, 150f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Mars 4 Max", "Mars 4 Max", 5760, 3600, 195.84f, 122.4f, 150f, FlipDirection.Horizontally), + new(PrinterBrand.Elegoo, "Elegoo Mars 4 Ultra", "Mars 4 Ultra", 8520, 4320, 153.36f, 77.76f, 165f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Mars C", "Mars C", 1440, 2560, 68.04f, 120.96f, 150f, FlipDirection.Horizontally), - new(PrinterBrand.Elegoo, "Elegoo Mars", "Mars", 1440, 2560, 68.04f, 120.96f, 150f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Saturn", "Saturn", 3840, 2400, 192f, 120f, 200f, FlipDirection.Horizontally), + new(PrinterBrand.Elegoo, "Elegoo Saturn 2", "Saturn 2", 7680, 4320, 218.88f, 123.12f, 250f, FlipDirection.Horizontally), + new(PrinterBrand.Elegoo, "Elegoo Saturn 3", "Saturn 3", 11520, 5120, 218.88f, 122.88f, 249.7f, FlipDirection.Horizontally), + new(PrinterBrand.Elegoo, "Elegoo Saturn 3 Ultra", "Saturn 3 Ultra", 11520, 5120, 218.88f, 122.88f, 260f, FlipDirection.Horizontally), new(PrinterBrand.Elegoo, "Elegoo Saturn 8K", "Saturn 8K", 7680, 4320, 218.88f, 123.12f, 210f, FlipDirection.Horizontally), new(PrinterBrand.EPAX, "EPAX DX1 PRO", "DX1 PRO", 4098, 2560, 143.43f, 89.6f, 155f, FlipDirection.Horizontally), diff --git a/UVtools.Core/UVtools.Core.csproj b/UVtools.Core/UVtools.Core.csproj index b4e559f2..94c2b1af 100644 --- a/UVtools.Core/UVtools.Core.csproj +++ b/UVtools.Core/UVtools.Core.csproj @@ -10,7 +10,7 @@ https://github.com/sn4k3/UVtools https://github.com/sn4k3/UVtools MSLA/DLP, file analysis, calibration, repair, conversion and manipulation - 3.14.1 + 3.14.2 Copyright © 2020 PTRTECH UVtools.png AnyCPU;x64 diff --git a/UVtools.Installer/UVtools.Installer.wixproj b/UVtools.Installer/UVtools.Installer.wixproj index c18e9d0c..0149720d 100644 --- a/UVtools.Installer/UVtools.Installer.wixproj +++ b/UVtools.Installer/UVtools.Installer.wixproj @@ -1,91 +1,91 @@ - - - x64 - 3.7 - UVtools - - $([System.Text.RegularExpressions.Regex]::Match($(TF_BUILD_BUILDNUMBER), "\d+.\d+.\d+.\d+")) - - $([System.Text.RegularExpressions.Regex]::Match($(BUILD_BUILDNUMBER), "\d+.\d+.\d+.\d+")) - - 3.0.0 - - - - - - true - - - ICE27;ICE38;ICE43;ICE57 - - - Debug;ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) - WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf - ICE27;ICE38;ICE43;ICE57 - - - ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) - WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf - ICE27;ICE38;ICE43;ICE57 - - - Debug;ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) - WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf - bin\$(Platform)\$(Configuration)\ - obj\$(Platform)\$(Configuration)\ - ICE27;ICE38;ICE43;ICE57 - - - ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) - WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf - bin\$(Platform)\$(Configuration)\ - obj\$(Platform)\$(Configuration)\ - ICE27;ICE38;ICE43;ICE57 - - - Debug;ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) - WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf - bin\$(Platform)\$(Configuration)\ - obj\$(Platform)\$(Configuration)\ - ICE27;ICE38;ICE43;ICE57 - - - ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) - WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf - bin\$(Platform)\$(Configuration)\ - obj\$(Platform)\$(Configuration)\ - ICE27;ICE38;ICE43;ICE57 - - - - - - - - - - - - - - - - - - - - - - HarvestedComponents - INSTALLPATH - var.HarvestPath - true - true - true - true - true - true - - + + + x64 + 3.7 + UVtools + + $([System.Text.RegularExpressions.Regex]::Match($(TF_BUILD_BUILDNUMBER), "\d+.\d+.\d+.\d+")) + + $([System.Text.RegularExpressions.Regex]::Match($(BUILD_BUILDNUMBER), "\d+.\d+.\d+.\d+")) + + 3.0.0 + + + + + + true + + + ICE27;ICE38;ICE43;ICE57 + + + Debug;ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) + WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf + ICE27;ICE38;ICE43;ICE57 + + + ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) + WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf + ICE27;ICE38;ICE43;ICE57 + + + Debug;ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) + WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf + bin\$(Platform)\$(Configuration)\ + obj\$(Platform)\$(Configuration)\ + ICE27;ICE38;ICE43;ICE57 + + + ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) + WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf + bin\$(Platform)\$(Configuration)\ + obj\$(Platform)\$(Configuration)\ + ICE27;ICE38;ICE43;ICE57 + + + Debug;ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) + WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf + bin\$(Platform)\$(Configuration)\ + obj\$(Platform)\$(Configuration)\ + ICE27;ICE38;ICE43;ICE57 + + + ProductVersion=$(ProductVersion);HarvestPath=$(HarvestPath) + WixUIBannerBmp=Resources\Banner.jpg;WixUIDialogBmp=Resources\Dialog.jpg;WixUILicenseRtf=Resources\EULA.rtf + bin\$(Platform)\$(Configuration)\ + obj\$(Platform)\$(Configuration)\ + ICE27;ICE38;ICE43;ICE57 + + + + + + + + + + + + + + + + + + + + + + HarvestedComponents + INSTALLPATH + var.HarvestPath + true + true + true + true + true + true + + \ No newline at end of file diff --git a/UVtools.WPF/Controls/Suggestions/SuggestionWaitTimeBeforeCureControl.axaml b/UVtools.WPF/Controls/Suggestions/SuggestionWaitTimeBeforeCureControl.axaml index 47d0c077..4d92bcbc 100644 --- a/UVtools.WPF/Controls/Suggestions/SuggestionWaitTimeBeforeCureControl.axaml +++ b/UVtools.WPF/Controls/Suggestions/SuggestionWaitTimeBeforeCureControl.axaml @@ -10,7 +10,8 @@ LICENSE https://github.com/sn4k3/UVtools Git - 3.14.1 + 3.14.2 AnyCPU;x64 UVtools.png README.md