diff --git a/bbl/i18n/BambuStudio.pot b/bbl/i18n/BambuStudio.pot index e837141893..96d791ee89 100644 --- a/bbl/i18n/BambuStudio.pot +++ b/bbl/i18n/BambuStudio.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -4556,7 +4556,10 @@ msgstr "" msgid "Cancel print" msgstr "" -msgid "Are you sure you want to cancel this print?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." msgstr "" msgid "Downloading..." @@ -4717,19 +4720,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -5658,6 +5654,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "" @@ -5778,6 +5780,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6386,9 +6396,8 @@ msgid "" "change settings." msgstr "" -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, possible-c-format, possible-boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -6655,8 +6664,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" msgid "" @@ -10544,7 +10553,7 @@ msgstr "" msgid "Auto-Calibration" msgstr "" -msgid "We would use Lidar to read the calibration result" +msgid "The printer will automatically read the calibration results." msgstr "" msgid "Prev" @@ -11379,8 +11388,8 @@ msgid "" msgstr "" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" diff --git a/bbl/i18n/cs/BambuStudio_cs.po b/bbl/i18n/cs/BambuStudio_cs.po index ded2a21635..fa897e68aa 100644 --- a/bbl/i18n/cs/BambuStudio_cs.po +++ b/bbl/i18n/cs/BambuStudio_cs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: 2023-10-18 10:45+0800\n" "Last-Translator: René Mošner \n" "Language-Team: \n" @@ -4738,8 +4738,11 @@ msgstr "SD karta Abnormální" msgid "Cancel print" msgstr "Zrušit tisk" -msgid "Are you sure you want to cancel this print?" -msgstr "Opravdu chcete zrušit tento tisk?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Stahuji..." @@ -4901,19 +4904,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -5889,6 +5885,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Procházet" @@ -6009,6 +6011,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6640,9 +6650,8 @@ msgid "" "change settings." msgstr "" -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -6931,8 +6940,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Při nahrávání časosběru bez nástrojové hlavy se doporučuje přidat " "\"Timelapse Wipe Tower\" \n" @@ -11202,8 +11211,8 @@ msgstr "Výsledek lze číst lidskýma očima." msgid "Auto-Calibration" msgstr "Automatická kalibrace" -msgid "We would use Lidar to read the calibration result" -msgstr "Použijeme Lidar ke čtení výsledku kalibrace" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Předchozí" @@ -12106,8 +12115,8 @@ msgid "" msgstr "" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" @@ -13051,8 +13060,8 @@ msgid "" msgstr "" "Plochou na podložku\n" "Věděli jste, že můžete rychle nastavit orientaci modelu tak, aby jedna z " -"jeho stěn spočívala na tiskovém podloží? Vyberte funkci \"Plochou na podložku" -"\" nebo stiskněte klávesu F." +"jeho stěn spočívala na tiskovém podloží? Vyberte funkci \"Plochou na " +"podložku\" nebo stiskněte klávesu F." #: resources/data/hints.ini: [hint:Object List] msgid "" @@ -13271,6 +13280,12 @@ msgid "" "probability of warping." msgstr "" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Použijeme Lidar ke čtení výsledku kalibrace" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Opravdu chcete zrušit tento tisk?" + #~ msgid "Jump to layer" #~ msgstr "Přeskočit do vrstvy" @@ -13435,12 +13450,12 @@ msgstr "" #~ "Najdete podrobnosti o kalibraci průtoku dynamiky v naší wiki.\n" #~ "\n" #~ "Obvykle kalibrace není potřebná. Při spuštění tisku s jednobarevným/" -#~ "materiálovým filamentem a zaškrtnutou volbou \"kalibrace průtoku dynamiky" -#~ "\" v menu spuštění tisku, tiskárna bude postupovat podle staré metody a " -#~ "zkalibruje filament před tiskem. Při spuštění tisku s vícebarevným/" -#~ "materiálovým filamentem bude tiskárna při každé změně filamentu používat " -#~ "výchozí kompenzační parametr pro filament, což má většinou dobrý " -#~ "výsledek.\n" +#~ "materiálovým filamentem a zaškrtnutou volbou \"kalibrace průtoku " +#~ "dynamiky\" v menu spuštění tisku, tiskárna bude postupovat podle staré " +#~ "metody a zkalibruje filament před tiskem. Při spuštění tisku s " +#~ "vícebarevným/materiálovým filamentem bude tiskárna při každé změně " +#~ "filamentu používat výchozí kompenzační parametr pro filament, což má " +#~ "většinou dobrý výsledek.\n" #~ "\n" #~ "Všimněte si, že existují některé případy, které mohou způsobit, že " #~ "výsledek kalibrace nebude spolehlivý: použití texturované podložky pro " diff --git a/bbl/i18n/de/BambuStudio_de.po b/bbl/i18n/de/BambuStudio_de.po index fdc1e279d8..a3155fcd7b 100644 --- a/bbl/i18n/de/BambuStudio_de.po +++ b/bbl/i18n/de/BambuStudio_de.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4907,8 +4907,11 @@ msgstr "MicroSD-Karte abnormal" msgid "Cancel print" msgstr "Druck abbrechen" -msgid "Are you sure you want to cancel this print?" -msgstr "Möchten Sie diesen Druck wirklich abbrechen?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Herunterladen..." @@ -5089,19 +5092,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6119,6 +6115,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Suchen" @@ -6254,6 +6256,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6912,9 +6922,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7245,13 +7254,13 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Wenn Sie einen Zeitraffer ohne Werkzeugkopf aufnehmen, wird empfohlen, einen " "\"Timelapse Wischturm\" hinzuzufügen, indem Sie mit der rechten Maustaste " -"auf die leere Position der Bauplatte klicken und \"Primitiv hinzufügen\"->" -"\"Timelapse Wischturm\" wählen." +"auf die leere Position der Bauplatte klicken und \"Primitiv hinzufügen\"-" +">\"Timelapse Wischturm\" wählen." msgid "" "The notes are too large, and may not be synchronized to the cloud. Please " @@ -11821,8 +11830,8 @@ msgstr "Die Ergebnisse sind leicht zu erkennen und zu verstehen." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "Wir würden Lidar verwenden, um das Kalibrierungsergebnis abzulesen." +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Vorh." @@ -12784,12 +12793,12 @@ msgstr "" "Möchten Sie es umschreiben?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -14143,6 +14152,12 @@ msgstr "" "wie z. B. ABS, die Wahrscheinlichkeit von Verformungen durch eine " "entsprechende Erhöhung der Heizbetttemperatur verringert werden kann?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Wir würden Lidar verwenden, um das Kalibrierungsergebnis abzulesen." + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Möchten Sie diesen Druck wirklich abbrechen?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " @@ -14787,8 +14802,8 @@ msgstr "" #~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " #~ "automatically load or unload filiament." #~ msgstr "" -#~ "Wählen Sie einen AMS-Slot und drücken Sie dann \"Laden\" oder \"Entladen" -#~ "\", um automatisch Filament zu laden oder zu entladen." +#~ "Wählen Sie einen AMS-Slot und drücken Sie dann \"Laden\" oder " +#~ "\"Entladen\", um automatisch Filament zu laden oder zu entladen." #~ msgid "Choose one or more files (3mf/step/stl/obj/amf):" #~ msgstr "Wählen Sie eine oder mehrere Dateien aus (3mf/step/stl/obj/amf):" diff --git a/bbl/i18n/en/BambuStudio_en.po b/bbl/i18n/en/BambuStudio_en.po index 24b30ce639..34ca0998bc 100644 --- a/bbl/i18n/en/BambuStudio_en.po +++ b/bbl/i18n/en/BambuStudio_en.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -4805,8 +4805,11 @@ msgstr "MicroSD Card Abnormal" msgid "Cancel print" msgstr "Cancel print" -msgid "Are you sure you want to cancel this print?" -msgstr "Are you sure you want to cancel this print?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Downloading..." @@ -4983,19 +4986,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -5987,6 +5983,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Browse" @@ -6119,6 +6121,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6763,9 +6773,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7076,13 +7085,13 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgid "" "The notes are too large, and may not be synchronized to the cloud. Please " @@ -11495,8 +11504,8 @@ msgstr "Result can be read by human eyes." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "We would use Lidar to read the calibration result" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Prev" @@ -12426,12 +12435,12 @@ msgstr "" "Do you want to rewrite it?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -13763,6 +13772,12 @@ msgstr "" "ABS, appropriately increasing the heatbed temperature can reduce the " "probability of warping?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "We would use Lidar to read the calibration result" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Are you sure you want to cancel this print?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/es/BambuStudio_es.po b/bbl/i18n/es/BambuStudio_es.po index ea3b843f91..f0a00b33c6 100644 --- a/bbl/i18n/es/BambuStudio_es.po +++ b/bbl/i18n/es/BambuStudio_es.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4883,8 +4883,11 @@ msgstr "Tarjeta SD errónea" msgid "Cancel print" msgstr "Cancelar impresión" -msgid "Are you sure you want to cancel this print?" -msgstr "¿Está seguro de cancelar la impresión?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Descargando…" @@ -5063,19 +5066,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6093,6 +6089,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Navegar" @@ -6228,6 +6230,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6888,9 +6898,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7214,8 +7223,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Al grabar timelapse sin el cabezal de la herramienta, se recomienda añadir " "una «Torre de purga para el timelapse» \n" @@ -11780,8 +11789,8 @@ msgstr "Los resultados se pueden ver y entender fácilmente." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "Usaríamos Lidar para leer el resultado de la calibración." +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Anterior" @@ -12740,12 +12749,12 @@ msgstr "" "¿Quieres reescribirlo?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -14098,6 +14107,12 @@ msgstr "" "aumentar adecuadamente la temperatura del lecho térmico puede reducir la " "probabilidad de alabeo?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Usaríamos Lidar para leer el resultado de la calibración." + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "¿Está seguro de cancelar la impresión?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " @@ -16435,9 +16450,9 @@ msgstr "" #~ "Gracias por comprar un dispositivo Bambu Lab. Antes de usar tu " #~ "dispositivo Bambu Lab, lee los términos y condiciones. Al hacer clic para " #~ "aceptar el uso de tu dispositivo Bambu Lab, aceptas cumplir con la " -#~ "Política de privacidad y los Términos de uso (en conjunto, los \"Términos" -#~ "\"). Si no cumple o no está de acuerdo con la Política de privacidad de " -#~ "Bambu Lab, no utilice los equipos y servicios de Bambu Lab." +#~ "Política de privacidad y los Términos de uso (en conjunto, los " +#~ "\"Términos\"). Si no cumple o no está de acuerdo con la Política de " +#~ "privacidad de Bambu Lab, no utilice los equipos y servicios de Bambu Lab." #~ msgid "The %s filament is too soft to be used with the AMS" #~ msgstr "El filamento %s es demasiado blando para usarlo con el AMS" diff --git a/bbl/i18n/fr/BambuStudio_fr.po b/bbl/i18n/fr/BambuStudio_fr.po index 28dbe8ffe8..2510dc1510 100644 --- a/bbl/i18n/fr/BambuStudio_fr.po +++ b/bbl/i18n/fr/BambuStudio_fr.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4889,8 +4889,11 @@ msgstr "Carte SD anormale" msgid "Cancel print" msgstr "Annuler l'impression" -msgid "Are you sure you want to cancel this print?" -msgstr "Êtes-vous sûr de vouloir annuler cette impression ?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Téléchargement…" @@ -5069,19 +5072,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6099,6 +6095,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Parcourir" @@ -6234,6 +6236,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6899,9 +6909,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7236,8 +7245,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Lorsque vous enregistrez un timelapse sans tête d’outil, il est recommandé " "d’ajouter une \"Tour de nettoyage timelapse\".\n" @@ -7389,9 +7398,9 @@ msgid "" "Bed temperature when cool plate is installed. Value 0 means the filament " "does not support to print on the Cool Plate" msgstr "" -"Il s'agit de la température du plateau lorsque le plateau froid (\"Cool plate" -"\") est installé. Une valeur à 0 signifie que ce filament ne peut pas être " -"imprimé sur le plateau froid." +"Il s'agit de la température du plateau lorsque le plateau froid (\"Cool " +"plate\") est installé. Une valeur à 0 signifie que ce filament ne peut pas " +"être imprimé sur le plateau froid." msgid "Engineering Plate" msgstr "Engineering Plate" @@ -9393,8 +9402,8 @@ msgid "" "thickness (top+bottom solid layers)" msgstr "" "Ajoutez du remplissage solide à proximité des surfaces inclinées pour " -"garantir l'épaisseur verticale de la coque (couches solides supérieure" -"+inférieure)." +"garantir l'épaisseur verticale de la coque (couches solides " +"supérieure+inférieure)." msgid "Internal bridge support thickness" msgstr "Épaisseur du support interne du pont" @@ -11821,8 +11830,8 @@ msgstr "Le résultat peut être lu à l'œil nu." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "Nous utiliserons le Lidar pour lire les résultats de calibration." +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Préc." @@ -12788,12 +12797,12 @@ msgstr "" "Voulez-vous le réécrire ?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -14154,6 +14163,12 @@ msgstr "" "que l'ABS, une augmentation appropriée de la température du plateau peut " "réduire le risque de déformation ?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Nous utiliserons le Lidar pour lire les résultats de calibration." + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Êtes-vous sûr de vouloir annuler cette impression ?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/hu/BambuStudio_hu.po b/bbl/i18n/hu/BambuStudio_hu.po index b860334c23..ed8c6ff695 100644 --- a/bbl/i18n/hu/BambuStudio_hu.po +++ b/bbl/i18n/hu/BambuStudio_hu.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4854,8 +4854,11 @@ msgstr "Hibás MicroSD kártya" msgid "Cancel print" msgstr "Nyomtatás megszakítása" -msgid "Are you sure you want to cancel this print?" -msgstr "Biztosan megszakítod ezt a nyomtatást?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Letöltés..." @@ -5032,19 +5035,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6044,6 +6040,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Tallózás" @@ -6178,6 +6180,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6830,9 +6840,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7153,8 +7162,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Ha a nyomtatófej nélküli timelapse engedélyezve van, javasoljuk, hogy " "helyezz el a tálcán egy „Timelapse törlőtornyot“. Ehhez kattints jobb " @@ -11673,8 +11682,8 @@ msgstr "Az eredmények könnyen átláthatóak és megérthetőek." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "A Lidar segítségével olvassuk le a kalibrálás eredményét" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Előző" @@ -12614,12 +12623,12 @@ msgstr "" "Szeretnéd felülírni?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -13952,6 +13961,12 @@ msgstr "" "Tudtad, hogy a vetemedésre hajlamos anyagok (például ABS) nyomtatásakor a " "tárgyasztal hőmérsékletének növelése csökkentheti a vetemedés valószínűségét?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "A Lidar segítségével olvassuk le a kalibrálás eredményét" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Biztosan megszakítod ezt a nyomtatást?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/it/BambuStudio_it.po b/bbl/i18n/it/BambuStudio_it.po index 39df12d1bf..af44b50ccd 100644 --- a/bbl/i18n/it/BambuStudio_it.po +++ b/bbl/i18n/it/BambuStudio_it.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4864,8 +4864,11 @@ msgstr "microSD anomala" msgid "Cancel print" msgstr "Annulla la stampa" -msgid "Are you sure you want to cancel this print?" -msgstr "Sei sicuro di voler annullare la stampa?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Download in corso…" @@ -5043,19 +5046,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6060,6 +6056,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Sfoglia" @@ -6195,6 +6197,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6845,9 +6855,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7170,8 +7179,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Quando si registra un timelapse senza testa di satmpa, si consiglia di " "aggiungere un \"Timelapse Torre di pulizia\"\n" @@ -8270,8 +8279,8 @@ msgid "" msgstr "" "È stato rilevato un aggiornamento importante che deve essere eseguito prima " "che la stampa possa continuare. Vuoi effettuare l'aggiornamento adesso? Puoi " -"effettuare l'aggiornamento anche in un secondo momento da \"Aggiorna firmware" -"\"." +"effettuare l'aggiornamento anche in un secondo momento da \"Aggiorna " +"firmware\"." msgid "" "The firmware version is abnormal. Repairing and updating are required before " @@ -11723,8 +11732,8 @@ msgstr "Il risultato può essere letto da occhi umani." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "Utilizzeremo il Lidar per leggere il risultato della calibrazione." +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Prev" @@ -12677,8 +12686,8 @@ msgstr "" "Vuoi riscriverlo?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" "Rinomineremo i preset come \"Vendor Type Serial @printer selezionato\". \n" @@ -14024,6 +14033,12 @@ msgstr "" "aumentare adeguatamente la temperatura del piano può ridurre la probabilità " "di deformazione." +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Utilizzeremo il Lidar per leggere il risultato della calibrazione." + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Sei sicuro di voler annullare la stampa?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " @@ -14259,12 +14274,13 @@ msgstr "" #~ "wiki.\n" #~ "\n" #~ "Di solito la calibrazione non è necessaria. Quando si avvia una stampa a " -#~ "singolo colore/materiale, con l'opzione \"calibrazione dinamica del flusso" -#~ "\" selezionata nel menu di avvio della stampa, la stampante eseguirà la " -#~ "vecchia procedura, calibrando il filamento prima della stampa; Quando si " -#~ "avvia una stampa multicolore/materiale, la stampante utilizzerà il " -#~ "parametro di compensazione predefinito del filamento durante ogni cambio, " -#~ "che nella maggior parte dei casi avrà un buon risultato.\n" +#~ "singolo colore/materiale, con l'opzione \"calibrazione dinamica del " +#~ "flusso\" selezionata nel menu di avvio della stampa, la stampante " +#~ "eseguirà la vecchia procedura, calibrando il filamento prima della " +#~ "stampa; Quando si avvia una stampa multicolore/materiale, la stampante " +#~ "utilizzerà il parametro di compensazione predefinito del filamento " +#~ "durante ogni cambio, che nella maggior parte dei casi avrà un buon " +#~ "risultato.\n" #~ "\n" #~ "Tieni presente che ci sono alcuni casi che renderanno il risultato della " #~ "calibrazione non affidabile: utilizzo di un piatto texture; il piatto non " @@ -16789,8 +16805,8 @@ msgstr "" #~ "Quando si registra un timelapse senza testa di satmpa, si consiglia di " #~ "aggiungere un \"Timelapse Torre di pulizia\"\n" #~ "facendo clic con il pulsante destro del mouse sulla posizione vuota del " -#~ "piatto e scegli \"Aggiungi primitiva\" ->\"Timelapse Torre di pulizia" -#~ "\"».\n" +#~ "piatto e scegli \"Aggiungi primitiva\" ->\"Timelapse Torre di " +#~ "pulizia\"».\n" #~ msgid "" #~ "When sparse infill density is low, the internal solid infill or internal " diff --git a/bbl/i18n/ja/BambuStudio_ja.po b/bbl/i18n/ja/BambuStudio_ja.po index a2aa68f6b6..ee22da1911 100644 --- a/bbl/i18n/ja/BambuStudio_ja.po +++ b/bbl/i18n/ja/BambuStudio_ja.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4740,8 +4740,11 @@ msgstr "SDカードに異常があります。" msgid "Cancel print" msgstr "造形を取消し" -msgid "Are you sure you want to cancel this print?" -msgstr "現在の造形をキャンセルしても宜しいでしょうか?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "ダウンロード中" @@ -4918,19 +4921,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -5911,6 +5907,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "閲覧" @@ -6043,6 +6045,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6669,9 +6679,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -6982,8 +6991,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "ヘッド無しのタイムラプスビデオを録画する時に、「タイムラプスプライムタワー」" "を追加してください。プレートで右クリックして、「プリミティブを追加」→「タイム" @@ -11282,8 +11291,8 @@ msgstr "Results can be easily seen and understood." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "We would use Lidar to read the calibration result." +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Prev" @@ -12215,12 +12224,12 @@ msgstr "" "リライトしますか?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -13525,6 +13534,12 @@ msgstr "" "ABS, appropriately increasing the heatbed temperature can reduce the " "probability of warping?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "We would use Lidar to read the calibration result." + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "現在の造形をキャンセルしても宜しいでしょうか?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/ko/BambuStudio_ko.po b/bbl/i18n/ko/BambuStudio_ko.po index 7e0b230c6a..aea43071b4 100644 --- a/bbl/i18n/ko/BambuStudio_ko.po +++ b/bbl/i18n/ko/BambuStudio_ko.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4756,8 +4756,11 @@ msgstr "MicroSD 카드 이상" msgid "Cancel print" msgstr "출력 취소" -msgid "Are you sure you want to cancel this print?" -msgstr "이 출력을 취소하시겠습니까?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "다운로드 중…" @@ -4933,19 +4936,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -5933,6 +5929,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "브라우저" @@ -6062,6 +6064,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6702,9 +6712,8 @@ msgstr "" "슬라이스 파일의 노즐 직경이 저장된 노즐과 일치하지 않습니다. 최근에 노즐을 변" "경한 경우 장치 > 프린터 부품으로 이동하여 설정을 변경하세요." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7007,8 +7016,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "툴헤드 없이 타임랩스를 녹화할 때는 “타임랩스 와이프 타워”를 추가하는 것이 좋" "습니다. \n" @@ -11361,8 +11370,8 @@ msgstr "Result can be read by human eyes." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "We would use Lidar to read the calibration result" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Prev" @@ -12286,12 +12295,12 @@ msgstr "" "다시 작성하시겠습니까?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -13618,6 +13627,12 @@ msgstr "" "ABS 등 뒤틀림이 발생하기 쉬운 소재를 출력할 때, 히트베드 온도를 적절하게 높이" "면 뒤틀림 가능성을 줄일 수 있다는 사실을 알고 계셨나요?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "We would use Lidar to read the calibration result" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "이 출력을 취소하시겠습니까?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/nl/BambuStudio_nl.po b/bbl/i18n/nl/BambuStudio_nl.po index 7aaf920cf0..d4cc727393 100644 --- a/bbl/i18n/nl/BambuStudio_nl.po +++ b/bbl/i18n/nl/BambuStudio_nl.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4883,8 +4883,11 @@ msgstr "MicroSD Kaart Abnormaal" msgid "Cancel print" msgstr "Print annuleren" -msgid "Are you sure you want to cancel this print?" -msgstr "Weet je zeker dat je deze print wilt annuleren?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Downloaden..." @@ -5063,19 +5066,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6096,6 +6092,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Browsen" @@ -6232,6 +6234,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6891,9 +6901,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7050,9 +7059,10 @@ msgstr "" "Bedankt voor uw aankoop van een Bambu Lab-apparaat. Lees de algemene " "voorwaarden voordat u uw Bambu Lab apparaat gebruikt. Door te klikken om " "akkoord te gaan met het gebruik van uw Bambu Lab apparaat, gaat u akkoord " -"met het Privacybeleid en de Gebruiksvoorwaarden (gezamenlijk de \"Voorwaarden" -"\"). Als u niet voldoet aan of akkoord gaat met het Privacybeleid van Bambu " -"Lab, maak dan geen gebruik van Bambu Lab apparatuur en diensten." +"met het Privacybeleid en de Gebruiksvoorwaarden (gezamenlijk de " +"\"Voorwaarden\"). Als u niet voldoet aan of akkoord gaat met het " +"Privacybeleid van Bambu Lab, maak dan geen gebruik van Bambu Lab apparatuur " +"en diensten." msgid "and" msgstr "en" @@ -7217,8 +7227,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Bij het opnemen van timelapse zonder toolhead is het aan te raden om een " "„Timelapse Wipe Tower” toe te voegen \n" @@ -11755,8 +11765,8 @@ msgstr "Het resultaat kan door mensenogen worden gelezen." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "We zouden Lidar gebruiken om het kalibratieresultaat af te lezen" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Vorige" @@ -12705,12 +12715,12 @@ msgstr "" "Wil je het herschrijven?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -14049,6 +14059,12 @@ msgstr "" "kromtrekken, zoals ABS, een juiste verhoging van de temperatuur van het " "warmtebed de kans op kromtrekken kan verkleinen?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "We zouden Lidar gebruiken om het kalibratieresultaat af te lezen" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Weet je zeker dat je deze print wilt annuleren?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/pl/BambuStudio_pl.po b/bbl/i18n/pl/BambuStudio_pl.po index f7a18a7c0c..189845ad7c 100644 --- a/bbl/i18n/pl/BambuStudio_pl.po +++ b/bbl/i18n/pl/BambuStudio_pl.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -10,8 +10,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : ((n%10>=2 && n%10<=4) && ((n" -"%100<12 || n%100>14))) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : ((n%10>=2 && n%10<=4) && " +"((n%100<12 || n%100>14))) ? 1 : 2;\n" "X-Generator: Poedit 3.4.2\n" msgid "Supports Painting" @@ -4873,8 +4873,11 @@ msgstr "Błąd karty MicroSD" msgid "Cancel print" msgstr "Anuluj drukowanie" -msgid "Are you sure you want to cancel this print?" -msgstr "Czy na pewno chcesz anulować to drukowanie?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Pobieranie..." @@ -5051,19 +5054,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6070,6 +6066,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Przeglądaj" @@ -6211,6 +6213,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6859,9 +6869,8 @@ msgstr "" "ustawieniach. Jeśli ostatnio zmieniłeś dyszę, przejdź do opcji Urządzenie > " "Części drukarki, aby zmienić to ustawienie." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7177,8 +7186,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Podczas nagrywania timelapse'a bez głowicy zaleca się dodanie \"Timelaps - " "Wieża Czyszcząca\" \n" @@ -10900,10 +10909,10 @@ msgid "" "triangle mesh slicing. The gap closing operation may reduce the final print " "resolution, therefore it is advisable to keep the value reasonably low." msgstr "" -"Szpary mniejsze niż dwukrotność wartości parametru \"promień zamykania szpar" -"\" zostaną zamknięte przy cięciu. Operacja zamykania szpar może zmniejszyć " -"finalną rozdzielczość wydruku, więc zalecane jest ustawienie tej wartości na " -"rozsądnie niskim poziomie." +"Szpary mniejsze niż dwukrotność wartości parametru \"promień zamykania " +"szpar\" zostaną zamknięte przy cięciu. Operacja zamykania szpar może " +"zmniejszyć finalną rozdzielczość wydruku, więc zalecane jest ustawienie tej " +"wartości na rozsądnie niskim poziomie." msgid "Slicing Mode" msgstr "Tryb cięcia" @@ -11702,8 +11711,8 @@ msgstr "Wynik można odczytać gołym okiem." msgid "Auto-Calibration" msgstr "Automatyczna kalibracja" -msgid "We would use Lidar to read the calibration result" -msgstr "Skorzystamy z Lidaru do odczytania wyniku kalibracji" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Poprzedni" @@ -12654,8 +12663,8 @@ msgstr "" "Czy chcesz go zastąpić?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" "Nazwa profilu zostanie zmieniona na \"Dostawca Typ Seria @nazwa drukarki, " @@ -14023,6 +14032,12 @@ msgstr "" "jak ABS, odpowiednie zwiększenie temperatury stołu grzejnego może zmniejszyć " "prawdopodobieństwo wypaczania." +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Skorzystamy z Lidaru do odczytania wyniku kalibracji" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Czy na pewno chcesz anulować to drukowanie?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/pt-BR/BambuStudio_pt-BR.po b/bbl/i18n/pt-BR/BambuStudio_pt-BR.po index 434241ec70..b0307f61eb 100644 --- a/bbl/i18n/pt-BR/BambuStudio_pt-BR.po +++ b/bbl/i18n/pt-BR/BambuStudio_pt-BR.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -4851,8 +4851,11 @@ msgstr "Cartão microSD anormal" msgid "Cancel print" msgstr "Cancelar impressão" -msgid "Are you sure you want to cancel this print?" -msgstr "Tem certeza de que deseja cancelar esta impressão?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Baixando" @@ -5029,19 +5032,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6045,6 +6041,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Navegar" @@ -6179,6 +6181,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6831,9 +6841,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7158,8 +7167,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Ao gravar o timelapse sem o cabeçote de ferramenta, é recomendável adicionar " "uma “Timelapse Wipe Tower” \n" @@ -11687,8 +11696,8 @@ msgstr "O resultado pode ser lido pelos olhos humanos." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "Usaríamos o Lidar para ler o resultado da calibração" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Ant" @@ -12634,8 +12643,8 @@ msgstr "" "Você quer reescrevê-lo?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" "Nós renomearíamos as predefinições como “Tipo de fornecedor Serial @printer " @@ -13991,6 +14000,12 @@ msgstr "" "aumentar adequadamente a temperatura do leito térmico pode reduzir a " "probabilidade de deformação." +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Usaríamos o Lidar para ler o resultado da calibração" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Tem certeza de que deseja cancelar esta impressão?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/ru/BambuStudio_ru.po b/bbl/i18n/ru/BambuStudio_ru.po index c3b0a76a50..29bfb0f534 100644 --- a/bbl/i18n/ru/BambuStudio_ru.po +++ b/bbl/i18n/ru/BambuStudio_ru.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: 1.9.7.52 Public Official\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: 2024-09-27 23:58+0700\n" "Last-Translator: \n" "Language-Team: Andylg \n" @@ -15,8 +15,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n" "X-Generator: Poedit 3.4.2\n" msgid "Supports Painting" @@ -4966,8 +4966,11 @@ msgstr "Неисправность SD-карты" msgid "Cancel print" msgstr "Отмена печати" -msgid "Are you sure you want to cancel this print?" -msgstr "Вы уверены, что хотите отменить эту печать?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Загрузка..." @@ -5149,19 +5152,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6186,6 +6182,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Обзор" @@ -6326,6 +6328,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6999,9 +7009,8 @@ msgstr "" "недавно меняли сопло, перейдите в раздел Принтер > Части принтера, чтобы " "изменить настройки." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7322,8 +7331,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "При записи таймлапса без видимости головы рекомендуется добавить «Черновая " "башня таймлапса». \n" @@ -10352,8 +10361,8 @@ msgstr "" "две ближайшие линии заполнения с коротким отрезком периметра. Если не " "найдено такого отрезка периметра короче этого параметра, линия заполнения " "соединяется с отрезком периметра только с одной стороны, а длина отрезка " -"периметра ограничена значением «Длина привязок разреженного " -"заполнения» (infill_anchor), но не больше этого параметра.\n" +"периметра ограничена значением «Длина привязок разреженного заполнения» " +"(infill_anchor), но не больше этого параметра.\n" "Установите 0 для отключения привязок." msgid "0 (not anchored)" @@ -11982,8 +11991,8 @@ msgstr "Результат калибровки может быть визуал msgid "Auto-Calibration" msgstr "Автокалибровка" -msgid "We would use Lidar to read the calibration result" -msgstr "Для считывания результата калибровки будет использоваться лидар." +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Назад" @@ -12961,8 +12970,8 @@ msgstr "" "Хотите перезаписать его?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" "Мы переименуем профиль в \"Производитель Тип Серия @выбранный принтер\".\n" @@ -14327,6 +14336,12 @@ msgstr "" "ABS, повышение температуры подогреваемого стола может снизить эту " "вероятность?" +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Для считывания результата калибровки будет использоваться лидар." + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Вы уверены, что хотите отменить эту печать?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/sv/BambuStudio_sv.po b/bbl/i18n/sv/BambuStudio_sv.po index a05cc99a68..7d96dfd6bb 100644 --- a/bbl/i18n/sv/BambuStudio_sv.po +++ b/bbl/i18n/sv/BambuStudio_sv.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "Language: sv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -4822,8 +4822,11 @@ msgstr "MicroSD-kortet är onormalt" msgid "Cancel print" msgstr "Avbryt utskrift" -msgid "Are you sure you want to cancel this print?" -msgstr "Är du säker på att du vill avbryta utskriften?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Laddar ner..." @@ -4999,19 +5002,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6006,6 +6002,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Sök" @@ -6138,6 +6140,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6745,8 +6755,8 @@ msgstr "" msgid "" "Timelapse is not supported because Print sequence is set to \"By object\"." msgstr "" -"Timelapse stöds inte eftersom utskrifts sekvensen är inställd på \"Per objekt" -"\"." +"Timelapse stöds inte eftersom utskrifts sekvensen är inställd på \"Per " +"objekt\"." msgid "Errors" msgstr "Fel" @@ -6789,9 +6799,8 @@ msgstr "" "If you changed your nozzle lately, please go to Device > Printer Parts to " "change settings." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7108,8 +7117,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "När du spelar in timelapse utan verktygshuvud rekommenderas att du lägger " "till ett \"Timelapse Wipe Tower\".\n" @@ -11568,8 +11577,8 @@ msgstr "Resultatet kan läsas av mänskliga ögon." msgid "Auto-Calibration" msgstr "Auto-Calibration" -msgid "We would use Lidar to read the calibration result" -msgstr "Vi vill använda Lidar för att läsa av kalibrerings resultatet" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Föregående" @@ -12510,12 +12519,12 @@ msgstr "" "Vill du skriva om det?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more printers; please go to printer selection" msgid "Create Printer/Nozzle" @@ -13851,6 +13860,12 @@ msgstr "" "ABS, kan en lämplig ökning av värmebäddens temperatur minska sannolikheten " "för vridning." +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Vi vill använda Lidar för att läsa av kalibrerings resultatet" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Är du säker på att du vill avbryta utskriften?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " @@ -16108,9 +16123,9 @@ msgstr "" #~ "Tack för att du har köpt en Bambu Lab enhet. Innan du använder din Bambu " #~ "Lab enhet ska du läsa villkoren. Genom att klicka för att godkänna " #~ "användningen av din Bambu Lab enhet godkänner du att följa " -#~ "sekretesspolicyn och användningsvillkoren (gemensamt kallade \"Villkor" -#~ "\"). Om du inte följer eller samtycker till Bambu Labs integritetspolicy " -#~ "ska du inte använda Bambu Labs utrustning och tjänster." +#~ "sekretesspolicyn och användningsvillkoren (gemensamt kallade " +#~ "\"Villkor\"). Om du inte följer eller samtycker till Bambu Labs " +#~ "integritetspolicy ska du inte använda Bambu Labs utrustning och tjänster." #~ msgid "The %s filament is too soft to be used with the AMS" #~ msgstr "Filament %s är för mjukt för att kunna användas med AMS" diff --git a/bbl/i18n/tr/BambuStudio_tr.po b/bbl/i18n/tr/BambuStudio_tr.po index d697424e45..c012102bf3 100644 --- a/bbl/i18n/tr/BambuStudio_tr.po +++ b/bbl/i18n/tr/BambuStudio_tr.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: 2024-09-29 02:13+0300\n" "Last-Translator: Fatih AYDIN \n" "Language-Team: \n" @@ -4840,8 +4840,11 @@ msgstr "SD Kart Anormal" msgid "Cancel print" msgstr "Yazdırmayı iptal et" -msgid "Are you sure you want to cancel this print?" -msgstr "Bu yazdırmayı iptal etmek istediğinizden emin misiniz?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "İndiriliyor..." @@ -5020,19 +5023,12 @@ msgstr "" msgid "Step file import parameters" msgstr "" -msgid "Rough" -msgstr "" - -msgid "Reduce Linear" -msgstr "" - -msgid "Reduce Angle" -msgstr "" - -msgid "Fewer faces" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." msgstr "" -msgid "More faces" +msgid "See BambuLab Wiki" msgstr "" msgid "Linear Deflection" @@ -6040,6 +6036,12 @@ msgstr "" msgid "Enable LOD" msgstr "" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Aç" @@ -6180,6 +6182,14 @@ msgid "" "models." msgstr "" +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "" @@ -6832,9 +6842,8 @@ msgstr "" "Nozulunuzu yakın zamanda değiştirdiyseniz, ayarları değiştirmek için lütfen " "Cihaz > Yazıcı Parçaları bölümüne gidin." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7151,8 +7160,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "Araç başlığı olmadan timelapse kaydederken, bir \"Timelapse Wipe Tower\" " "eklenmesi önerilir.\n" @@ -8547,8 +8556,8 @@ msgid "" "Please select \"By object\" print sequence to print multiple objects in " "spiral vase mode." msgstr "" -"Birden fazla nesneyi spiral vazo modunda yazdırmak için lütfen \"Nesneye göre" -"\" yazdırma sırasını seçin." +"Birden fazla nesneyi spiral vazo modunda yazdırmak için lütfen \"Nesneye " +"göre\" yazdırma sırasını seçin." msgid "" "The spiral vase mode does not work when an object contains more than one " @@ -11619,8 +11628,8 @@ msgstr "Sonuç insan gözüyle okunabilir." msgid "Auto-Calibration" msgstr "Otomatik Kalibrasyon" -msgid "We would use Lidar to read the calibration result" -msgstr "Kalibrasyon sonucunu okumak için Lidar'ı kullanırdık" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Önceki" @@ -12577,8 +12586,8 @@ msgstr "" "Yeniden yazmak ister misin?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" "Ön ayarları \"Satıcı Tipi Seri @seçtiğiniz yazıcı\" olarak yeniden " @@ -13937,6 +13946,12 @@ msgstr "" "sıcaklığının uygun şekilde arttırılmasının bükülme olasılığını " "azaltabileceğini biliyor muydunuz." +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Kalibrasyon sonucunu okumak için Lidar'ı kullanırdık" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Bu yazdırmayı iptal etmek istediğinizden emin misiniz?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/uk/BambuStudio_uk.po b/bbl/i18n/uk/BambuStudio_uk.po index 60b863069f..00551b03b7 100644 --- a/bbl/i18n/uk/BambuStudio_uk.po +++ b/bbl/i18n/uk/BambuStudio_uk.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Bambu Studio\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: BambuLab Україна\n" @@ -2652,8 +2652,8 @@ msgstr "Будь ласка, введіть допустиме значення #, c-format, boost-format msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" msgstr "" -"Будь ласка, введіть допустиме значення (K у межах %.1f~%.1f, N у межах %.1f~" -"%.1f)" +"Будь ласка, введіть допустиме значення (K у межах %.1f~%.1f, N у межах " +"%.1f~%.1f)" msgid "Other Color" msgstr "Інший колір" @@ -4877,8 +4877,11 @@ msgstr "SD-картка не в порядку" msgid "Cancel print" msgstr "Скасувати друк" -msgid "Are you sure you want to cancel this print?" -msgstr "Ви впевнені, що хочете скасувати цей друк?" +msgid "Are you sure to stop printing?" +msgstr "" + +msgid "Unknown error." +msgstr "" msgid "Downloading..." msgstr "Завантаження..." @@ -5058,20 +5061,13 @@ msgstr "" msgid "Step file import parameters" msgstr "Параметри імпорту STEP-файлу" -msgid "Rough" -msgstr "Грубо" - -msgid "Reduce Linear" -msgstr "Зменшити лінійно" - -msgid "Reduce Angle" -msgstr "Зменшити кут" - -msgid "Fewer faces" -msgstr "Менше граней" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." +msgstr "" -msgid "More faces" -msgstr "Більше граней" +msgid "See BambuLab Wiki" +msgstr "" msgid "Linear Deflection" msgstr "Лінійне відхилення" @@ -6094,6 +6090,12 @@ msgstr "" msgid "Enable LOD" msgstr "Увімкнути LOD" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "" + +msgid "Enable opengl multi instance rendering" +msgstr "" + msgid "Browse" msgstr "Огляд" @@ -6235,6 +6237,14 @@ msgstr "" "Покращена продуктивність рендерингу в умовах кількох пластин і багатьох " "моделей." +msgid "enable multi instance rendering by opengl" +msgstr "" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" + msgid "Grabber scale" msgstr "Масштаб захоплювача" @@ -6893,9 +6903,8 @@ msgstr "" "сопла. Якщо ви недавно змінили сопло, будь ласка, перейдіть до “Пристрій > " "Частини принтера”, щоб змінити налаштування." -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." msgstr "" msgid "Please fix the error above, otherwise printing cannot continue." @@ -7219,8 +7228,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "При записі таймлапсу без інструментальної головки рекомендується додати " "“Timelapse Wipe Tower” \n" @@ -11753,8 +11762,8 @@ msgstr "Результат може бути прочитаний людськи msgid "Auto-Calibration" msgstr "Автокалібрування" -msgid "We would use Lidar to read the calibration result" -msgstr "Ми використовуватимемо Лідар для зчитування результату калібрування" +msgid "The printer will automatically read the calibration results." +msgstr "" msgid "Prev" msgstr "Попередній" @@ -12733,8 +12742,8 @@ msgstr "" "Чи бажаєте ви їх перезаписати?" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" "Ми перейменовуємо налаштування на “Виробник Тип Серійний номер @принтер, " @@ -14149,6 +14158,27 @@ msgstr "" "ABS, відповідне підвищення температури гарячого ліжка може зменшити " "ймовірність деформації." +#~ msgid "Rough" +#~ msgstr "Грубо" + +#~ msgid "Reduce Linear" +#~ msgstr "Зменшити лінійно" + +#~ msgid "Reduce Angle" +#~ msgstr "Зменшити кут" + +#~ msgid "More faces" +#~ msgstr "Більше граней" + +#~ msgid "Fewer faces" +#~ msgstr "Менше граней" + +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "Ми використовуватимемо Лідар для зчитування результату калібрування" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "Ви впевнені, що хочете скасувати цей друк?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " diff --git a/bbl/i18n/zh_cn/BambuStudio_zh_CN.po b/bbl/i18n/zh_cn/BambuStudio_zh_CN.po index d12f563839..9cd9e1090e 100644 --- a/bbl/i18n/zh_cn/BambuStudio_zh_CN.po +++ b/bbl/i18n/zh_cn/BambuStudio_zh_CN.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Slic3rPE\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-12 11:34+0800\n" +"POT-Creation-Date: 2024-11-14 20:56+0800\n" "PO-Revision-Date: 2024-03-21 10:39+0800\n" "Last-Translator: Jiang Yue \n" "Language-Team: \n" @@ -4667,8 +4667,11 @@ msgstr "SD卡异常" msgid "Cancel print" msgstr "取消打印" -msgid "Are you sure you want to cancel this print?" -msgstr "你确定要取消这次打印吗?" +msgid "Are you sure to stop printing?" +msgstr "您确定要停止打印吗?" + +msgid "Unknown error." +msgstr "未知错误。" msgid "Downloading..." msgstr "下载中..." @@ -4836,20 +4839,13 @@ msgstr "至少需要一个成功的打印记录,才能给出积极的评价( msgid "Step file import parameters" msgstr "导入step文件选项" -msgid "Rough" -msgstr "粗糙" - -msgid "Reduce Linear" -msgstr "减少线偏转值" - -msgid "Reduce Angle" -msgstr "减少角偏转值" - -msgid "Fewer faces" -msgstr "更少三角面" +msgid "" +"Smaller linear and angular deflections result in higher-quality " +"transformations but increase the processing time." +msgstr "较小的线偏转值和角偏转值会产生更高质量的转换,但会增加处理时间。" -msgid "More faces" -msgstr "更多三角面" +msgid "See BambuLab Wiki" +msgstr "查看BambuLab Wiki" msgid "Linear Deflection" msgstr "线偏转值" @@ -5805,6 +5801,12 @@ msgstr "" msgid "Enable LOD" msgstr "启用LOD" +msgid "Change opengl multi instance rendering requires application restart." +msgstr "改变opengl多实例渲染要求软件重启。" + +msgid "Enable opengl multi instance rendering" +msgstr "开启opengl多实例渲染" + msgid "Browse" msgstr "浏览" @@ -5929,6 +5931,16 @@ msgid "" "models." msgstr "在多盘和多模型的场景下提高了渲染性能" +msgid "enable multi instance rendering by opengl" +msgstr "开启opengl多实例渲染" + +msgid "" +"If enabled, it can improve certain rendering performance. But for some " +"graphics cards, it may not be applicable, please turn it off." +msgstr "" +"如果启用,它可以提高一定的渲染性能。但对于某些图形卡,它可能不适用,请将其关" +"闭。" + msgid "Grabber scale" msgstr "抓手比例" @@ -6553,10 +6565,9 @@ msgstr "" "切片文件中的喷嘴直径与记忆的喷嘴不一致。如果您最近更换了喷嘴,请前往设备 > 打" "印机零件进行更改设置。" -msgid "" -"Printing high temperature material(%1 material) with %2 may cause nozzle " -"damage" -msgstr "用%2打印高温材料(%1材料)可能会导致喷嘴损坏" +#, c-format, boost-format +msgid "Printing %1s material with %2s nozzle may cause nozzle damage." +msgstr "%1s材料在使用%2s的喷嘴打印时,可能会导致喷嘴损坏。" msgid "Please fix the error above, otherwise printing cannot continue." msgstr "请修复上述错误,否则打印无法继续。" @@ -6849,8 +6860,8 @@ msgstr "" msgid "" "When recording timelapse without toolhead, it is recommended to add a " "\"Timelapse Wipe Tower\" \n" -"by right-click the empty position of build plate and choose \"Add Primitive" -"\"->\"Timelapse Wipe Tower\"." +"by right-click the empty position of build plate and choose \"Add " +"Primitive\"->\"Timelapse Wipe Tower\"." msgstr "" "在录制无工具头延时摄影视频时,建议添加“延时摄影擦料塔”\n" "右键单击打印板的空白位置,选择“添加标准模型”->“延时摄影擦料塔”。" @@ -10973,8 +10984,8 @@ msgstr "结果可由人眼读取。" msgid "Auto-Calibration" msgstr "自动校准" -msgid "We would use Lidar to read the calibration result" -msgstr "我们将使用激光雷达来读取校准结果。" +msgid "The printer will automatically read the calibration results." +msgstr "打印机将自动读取校准结果。" msgid "Prev" msgstr "上一个" @@ -11890,8 +11901,8 @@ msgstr "" "你想重写预设吗" msgid "" -"We would rename the presets as \"Vendor Type Serial @printer you selected" -"\". \n" +"We would rename the presets as \"Vendor Type Serial @printer you " +"selected\". \n" "To add preset for more prinetrs, Please go to printer selection" msgstr "" "我们会将预设重命名为“供应商 类型 系列 @您选择的打印机”。\n" @@ -13150,6 +13161,41 @@ msgstr "" "避免翘曲\n" "您知道吗?打印ABS这类易翘曲材料时,适当提高热床温度可以降低翘曲的概率。" +#~ msgid "Rough" +#~ msgstr "粗糙" + +#~ msgid "Reduce Linear" +#~ msgstr "减少线偏转值" + +#~ msgid "Reduce Angle" +#~ msgstr "减少角偏转值" + +#~ msgid "More faces" +#~ msgstr "更多三角面" + +#~ msgid "Fewer faces" +#~ msgstr "更少三角面" + +#, c-format, boost-format +#~ msgid "" +#~ "Printing high temperature material(%1s material) with %2s may cause " +#~ "nozzle damage" +#~ msgstr "用%2s打印高温材料(%1s材料)可能会导致喷嘴损坏" + +#~ msgid "Unknow error." +#~ msgstr "未知错误" + +#~ msgid "" +#~ "Printing high temperature material(%1 material) with %2 may cause nozzle " +#~ "damage" +#~ msgstr "用%2打印高温材料(%1材料)可能会导致喷嘴损坏" + +#~ msgid "We would use Lidar to read the calibration result" +#~ msgstr "我们将使用激光雷达来读取校准结果。" + +#~ msgid "Are you sure you want to cancel this print?" +#~ msgstr "你确定要取消这次打印吗?" + #, c-format, boost-format #~ msgid "" #~ "Printing high temperature material(%s material) with %s may cause nozzle " @@ -18938,8 +18984,8 @@ msgstr "" #~ msgstr "正在准备设置页" #~ msgid "" -#~ "You have the following presets with saved options for \"Print Host upload" -#~ "\"" +#~ "You have the following presets with saved options for \"Print Host " +#~ "upload\"" #~ msgstr "您的以下预设中包含未保存的选项“打印主机上传”" #~ msgid "" diff --git a/resources/i18n/cs/BambuStudio.mo b/resources/i18n/cs/BambuStudio.mo index 3d1d484b35..8f18a19d98 100644 Binary files a/resources/i18n/cs/BambuStudio.mo and b/resources/i18n/cs/BambuStudio.mo differ diff --git a/resources/i18n/de/BambuStudio.mo b/resources/i18n/de/BambuStudio.mo index 6390f90a68..0374dc9bef 100644 Binary files a/resources/i18n/de/BambuStudio.mo and b/resources/i18n/de/BambuStudio.mo differ diff --git a/resources/i18n/en/BambuStudio.mo b/resources/i18n/en/BambuStudio.mo index afd84a83f9..e4fa84b9b9 100644 Binary files a/resources/i18n/en/BambuStudio.mo and b/resources/i18n/en/BambuStudio.mo differ diff --git a/resources/i18n/es/BambuStudio.mo b/resources/i18n/es/BambuStudio.mo index d73b189b8b..255aac37ca 100644 Binary files a/resources/i18n/es/BambuStudio.mo and b/resources/i18n/es/BambuStudio.mo differ diff --git a/resources/i18n/fr/BambuStudio.mo b/resources/i18n/fr/BambuStudio.mo index e65fe89d72..a6cf2118ca 100644 Binary files a/resources/i18n/fr/BambuStudio.mo and b/resources/i18n/fr/BambuStudio.mo differ diff --git a/resources/i18n/hu/BambuStudio.mo b/resources/i18n/hu/BambuStudio.mo index 88973cb17b..49a62ab337 100644 Binary files a/resources/i18n/hu/BambuStudio.mo and b/resources/i18n/hu/BambuStudio.mo differ diff --git a/resources/i18n/it/BambuStudio.mo b/resources/i18n/it/BambuStudio.mo index 9e264cc304..ce8155f348 100644 Binary files a/resources/i18n/it/BambuStudio.mo and b/resources/i18n/it/BambuStudio.mo differ diff --git a/resources/i18n/ja/BambuStudio.mo b/resources/i18n/ja/BambuStudio.mo index db8afa75ba..98d1f1580c 100644 Binary files a/resources/i18n/ja/BambuStudio.mo and b/resources/i18n/ja/BambuStudio.mo differ diff --git a/resources/i18n/ko/BambuStudio.mo b/resources/i18n/ko/BambuStudio.mo index 8fb4343302..c5e0aed8ff 100644 Binary files a/resources/i18n/ko/BambuStudio.mo and b/resources/i18n/ko/BambuStudio.mo differ diff --git a/resources/i18n/nl/BambuStudio.mo b/resources/i18n/nl/BambuStudio.mo index b684574181..0e75325952 100644 Binary files a/resources/i18n/nl/BambuStudio.mo and b/resources/i18n/nl/BambuStudio.mo differ diff --git a/resources/i18n/pl/BambuStudio.mo b/resources/i18n/pl/BambuStudio.mo index ebd84485e1..c0f677b32b 100644 Binary files a/resources/i18n/pl/BambuStudio.mo and b/resources/i18n/pl/BambuStudio.mo differ diff --git a/resources/i18n/pt-BR/BambuStudio.mo b/resources/i18n/pt-BR/BambuStudio.mo index 74d63df0ad..463130df77 100644 Binary files a/resources/i18n/pt-BR/BambuStudio.mo and b/resources/i18n/pt-BR/BambuStudio.mo differ diff --git a/resources/i18n/pt_br/BambuStudio.mo b/resources/i18n/pt_br/BambuStudio.mo index 74d63df0ad..463130df77 100644 Binary files a/resources/i18n/pt_br/BambuStudio.mo and b/resources/i18n/pt_br/BambuStudio.mo differ diff --git a/resources/i18n/ru/BambuStudio.mo b/resources/i18n/ru/BambuStudio.mo index 2482f8bd0d..50db522b0f 100644 Binary files a/resources/i18n/ru/BambuStudio.mo and b/resources/i18n/ru/BambuStudio.mo differ diff --git a/resources/i18n/sv/BambuStudio.mo b/resources/i18n/sv/BambuStudio.mo index 9daf7caf7e..12836ec812 100644 Binary files a/resources/i18n/sv/BambuStudio.mo and b/resources/i18n/sv/BambuStudio.mo differ diff --git a/resources/i18n/tr/BambuStudio.mo b/resources/i18n/tr/BambuStudio.mo index 6468047601..cf77da17cc 100644 Binary files a/resources/i18n/tr/BambuStudio.mo and b/resources/i18n/tr/BambuStudio.mo differ diff --git a/resources/i18n/uk/BambuStudio.mo b/resources/i18n/uk/BambuStudio.mo index 76a3531c10..a4e1c2bfb5 100644 Binary files a/resources/i18n/uk/BambuStudio.mo and b/resources/i18n/uk/BambuStudio.mo differ diff --git a/resources/i18n/zh_cn/BambuStudio.mo b/resources/i18n/zh_cn/BambuStudio.mo index 4755713073..d8bef9a622 100644 Binary files a/resources/i18n/zh_cn/BambuStudio.mo and b/resources/i18n/zh_cn/BambuStudio.mo differ diff --git a/resources/images/step_mesh_info.svg b/resources/images/step_mesh_info.svg index c12b253a53..28f840853a 100644 --- a/resources/images/step_mesh_info.svg +++ b/resources/images/step_mesh_info.svg @@ -1,5 +1,5 @@ - - - + + + diff --git a/resources/profiles/BBL.json b/resources/profiles/BBL.json index 7f06370aab..c8fdc74220 100644 --- a/resources/profiles/BBL.json +++ b/resources/profiles/BBL.json @@ -1,7 +1,7 @@ { "name": "Bambulab", "url": "http://www.bambulab.com/Parameters/vendor/BBL.json", - "version": "01.10.00.19", + "version": "01.10.00.26", "force_update": "0", "description": "the initial version of BBL configurations", "machine_model_list": [ diff --git a/resources/profiles/BBL/cli_config.json b/resources/profiles/BBL/cli_config.json index 2bd68647c9..7c75b738d8 100644 --- a/resources/profiles/BBL/cli_config.json +++ b/resources/profiles/BBL/cli_config.json @@ -75,80 +75,100 @@ "Bambu Lab X1": { "downward_check": { "Bambu Lab X1 0.2 nozzle": [ - "Bambu Lab A1 mini 0.2 nozzle" + "Bambu Lab A1 mini 0.2 nozzle", + "Bambu Lab A1 0.2 nozzle" ], "Bambu Lab X1 0.4 nozzle": [ - "Bambu Lab A1 mini 0.4 nozzle" + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 0.4 nozzle" ], "Bambu Lab X1 0.6 nozzle": [ - "Bambu Lab A1 mini 0.6 nozzle" + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 0.6 nozzle" ], "Bambu Lab X1 0.8 nozzle": [ - "Bambu Lab A1 mini 0.8 nozzle" + "Bambu Lab A1 mini 0.8 nozzle", + "Bambu Lab A1 0.8 nozzle" ] } }, "Bambu Lab X1 Carbon": { "downward_check": { "Bambu Lab X1 Carbon 0.2 nozzle": [ - "Bambu Lab A1 mini 0.2 nozzle" + "Bambu Lab A1 mini 0.2 nozzle", + "Bambu Lab A1 0.2 nozzle" ], "Bambu Lab X1 Carbon 0.4 nozzle": [ - "Bambu Lab A1 mini 0.4 nozzle" + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 0.4 nozzle" ], "Bambu Lab X1 Carbon 0.6 nozzle": [ - "Bambu Lab A1 mini 0.6 nozzle" + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 0.6 nozzle" ], "Bambu Lab X1 Carbon 0.8 nozzle": [ - "Bambu Lab A1 mini 0.8 nozzle" + "Bambu Lab A1 mini 0.8 nozzle", + "Bambu Lab A1 0.8 nozzle" ] } }, "Bambu Lab X1E": { "downward_check": { "Bambu Lab X1E 0.2 nozzle": [ - "Bambu Lab A1 mini 0.2 nozzle" + "Bambu Lab A1 mini 0.2 nozzle", + "Bambu Lab A1 0.2 nozzle" ], "Bambu Lab X1E 0.4 nozzle": [ - "Bambu Lab A1 mini 0.4 nozzle" + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 0.4 nozzle" ], "Bambu Lab X1E 0.6 nozzle": [ - "Bambu Lab A1 mini 0.6 nozzle" + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 0.6 nozzle" ], "Bambu Lab X1E 0.8 nozzle": [ - "Bambu Lab A1 mini 0.8 nozzle" + "Bambu Lab A1 mini 0.8 nozzle", + "Bambu Lab A1 0.8 nozzle" ] } }, "Bambu Lab P1P": { "downward_check": { "Bambu Lab P1P 0.2 nozzle": [ - "Bambu Lab A1 mini 0.2 nozzle" + "Bambu Lab A1 mini 0.2 nozzle", + "Bambu Lab A1 0.2 nozzle" ], "Bambu Lab P1P 0.4 nozzle": [ - "Bambu Lab A1 mini 0.4 nozzle" + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 0.4 nozzle" ], "Bambu Lab P1P 0.6 nozzle": [ - "Bambu Lab A1 mini 0.6 nozzle" + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 0.6 nozzle" ], "Bambu Lab P1P 0.8 nozzle": [ - "Bambu Lab A1 mini 0.8 nozzle" + "Bambu Lab A1 mini 0.8 nozzle", + "Bambu Lab A1 0.8 nozzle" ] } }, "Bambu Lab P1S": { "downward_check": { "Bambu Lab P1S 0.2 nozzle": [ - "Bambu Lab A1 mini 0.2 nozzle" + "Bambu Lab A1 mini 0.2 nozzle", + "Bambu Lab A1 0.2 nozzle" ], "Bambu Lab P1S 0.4 nozzle": [ - "Bambu Lab A1 mini 0.4 nozzle" + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 0.4 nozzle" ], "Bambu Lab P1S 0.6 nozzle": [ - "Bambu Lab A1 mini 0.6 nozzle" + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 0.6 nozzle" ], "Bambu Lab P1S 0.8 nozzle": [ - "Bambu Lab A1 mini 0.8 nozzle" + "Bambu Lab A1 mini 0.8 nozzle", + "Bambu Lab A1 0.8 nozzle" ] } } diff --git a/resources/profiles/BBL/filament/Bambu PLA Basic @base.json b/resources/profiles/BBL/filament/Bambu PLA Basic @base.json index 81275272a8..45a5b35790 100644 --- a/resources/profiles/BBL/filament/Bambu PLA Basic @base.json +++ b/resources/profiles/BBL/filament/Bambu PLA Basic @base.json @@ -21,7 +21,7 @@ "Bambu Lab" ], "filament_scarf_seam_type": [ - "all" + "none" ], "filament_scarf_height":[ "10%" diff --git a/resources/profiles/BBL/filament/Bambu PLA Matte @base.json b/resources/profiles/BBL/filament/Bambu PLA Matte @base.json index b4e54a2722..1550142d46 100644 --- a/resources/profiles/BBL/filament/Bambu PLA Matte @base.json +++ b/resources/profiles/BBL/filament/Bambu PLA Matte @base.json @@ -18,7 +18,7 @@ "Bambu Lab" ], "filament_scarf_seam_type": [ - "all" + "none" ], "filament_scarf_height":[ "5%" diff --git a/resources/profiles/BBL/filament/fdm_filament_pla.json b/resources/profiles/BBL/filament/fdm_filament_pla.json index 14291cea0b..9321b9ecad 100644 --- a/resources/profiles/BBL/filament/fdm_filament_pla.json +++ b/resources/profiles/BBL/filament/fdm_filament_pla.json @@ -38,7 +38,7 @@ "12" ], "filament_scarf_seam_type": [ - "all" + "none" ], "filament_scarf_gap": [ "15%" diff --git a/src/BambuStudio.cpp b/src/BambuStudio.cpp index 918eedfe7e..ce643572bc 100644 --- a/src/BambuStudio.cpp +++ b/src/BambuStudio.cpp @@ -1288,6 +1288,7 @@ int CLI::run(int argc, char **argv) const std::vector &uptodate_filaments = m_config.option("uptodate_filaments", true)->values; std::vector downward_settings = m_config.option("downward_settings", true)->values; std::vector downward_compatible_machines; + std::set downward_uncompatible_machines; //BBS: always use ForwardCompatibilitySubstitutionRule::Enable //const ForwardCompatibilitySubstitutionRule config_substitution_rule = m_config.option>("config_compatibility", true)->value; const ForwardCompatibilitySubstitutionRule config_substitution_rule = ForwardCompatibilitySubstitutionRule::Enable; @@ -3659,19 +3660,29 @@ int CLI::run(int argc, char **argv) } } } - if (failed_count < downward_check_size) + + for (int index2 = 0; index2 < downward_check_size; index2 ++) { - //has success ones - BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: downward_check_size %1%, failed_count %2%")%downward_check_size %failed_count; - for (int index2 = 0; index2 < downward_check_size; index2 ++) - { - if (downward_check_status[index2]) - continue; - printer_plate_info_t& plate_info = downward_check_printers[index2]; - BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: found compatible printer %1%")%plate_info.printer_name; + printer_plate_info_t& plate_info = downward_check_printers[index2]; + if (downward_check_status[index2]) { + downward_uncompatible_machines.emplace(plate_info.printer_name); + BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: found uncompatible printer %1%")%plate_info.printer_name; + } + else { downward_compatible_machines.push_back(plate_info.printer_name); + BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: found compatible printer %1%")%plate_info.printer_name; + } + } + BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: downward_check_size %1%, failed_count %2%")%downward_check_size %failed_count; + sliced_info.downward_machines = downward_compatible_machines; + + for(std::vector::iterator it = sliced_info.upward_machines.begin(); it != sliced_info.upward_machines.end();){ + if(downward_uncompatible_machines.find(*it) != downward_uncompatible_machines.end()){ + BOOST_LOG_TRIVIAL(info) << boost::format("downward_check: remove %1% from upward compatible printers")%*it; + it = sliced_info.upward_machines.erase(it); + } else { + it ++; } - sliced_info.downward_machines = downward_compatible_machines; } } diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp index 527c65d47b..f31bef0bf7 100644 --- a/src/libslic3r/AppConfig.cpp +++ b/src/libslic3r/AppConfig.cpp @@ -176,6 +176,8 @@ void AppConfig::set_defaults() set_bool("show_shells_in_preview", true); if (get("enable_lod").empty()) set_bool("enable_lod", true); + if (get("enable_opengl_multi_instance").empty()) + set_bool("enable_opengl_multi_instance", true); if (get("user_bed_type").empty()) set_bool("user_bed_type", true); if (get("grabber_size_factor").empty()) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 47484011ec..d0684071ad 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -4015,7 +4015,8 @@ std::string GCode::extrude_loop(ExtrusionLoop loop, std::string description, dou if (enable_seam_slope && m_config.seam_slope_conditional.value) { //BBS: the seam has been decide, only check the seam position angle - enable_seam_slope = loop.check_seam_point_angle(m_config.scarf_angle_threshold.value * M_PI / 180.0); + const auto nozzle_diameter = EXTRUDER_CONFIG(nozzle_diameter); + enable_seam_slope = loop.check_seam_point_angle(m_config.scarf_angle_threshold.value * M_PI / 180.0, nozzle_diameter); } // clip the path to avoid the extruder to get exactly on the first point of the loop; diff --git a/src/libslic3r/GCode/ToolOrdering.cpp b/src/libslic3r/GCode/ToolOrdering.cpp index dc9c157a8f..c1ddf87e97 100644 --- a/src/libslic3r/GCode/ToolOrdering.cpp +++ b/src/libslic3r/GCode/ToolOrdering.cpp @@ -954,61 +954,84 @@ void ToolOrdering::mark_skirt_layers(const PrintConfig &config, coordf_t max_lay // BBS: replace model custom gcode with current plate custom gcode static CustomGCode::Info custom_gcode_per_print_z; -void ToolOrdering::assign_custom_gcodes(const Print &print) +void ToolOrdering::assign_custom_gcodes(const Print& print) { - // Only valid for non-sequential print. - assert(print.config().print_sequence == PrintSequence::ByLayer); + // Only valid for non-sequential print. + assert(print.config().print_sequence == PrintSequence::ByLayer); custom_gcode_per_print_z = print.model().get_curr_plate_custom_gcodes(); - if (custom_gcode_per_print_z.gcodes.empty()) - return; + if (custom_gcode_per_print_z.gcodes.empty()) + return; // BBS - auto num_filaments = unsigned(print.config().filament_diameter.size()); - CustomGCode::Mode mode = - (num_filaments == 1) ? CustomGCode::SingleExtruder : - print.object_extruders().size() == 1 ? CustomGCode::MultiAsSingle : CustomGCode::MultiExtruder; - CustomGCode::Mode model_mode = print.model().get_curr_plate_custom_gcodes().mode; - std::vector extruder_printing_above(num_filaments, false); - auto custom_gcode_it = custom_gcode_per_print_z.gcodes.rbegin(); - // Tool changes and color changes will be ignored, if the model's tool/color changes were entered in mm mode and the print is in non mm mode - // or vice versa. - bool ignore_tool_and_color_changes = (mode == CustomGCode::MultiExtruder) != (model_mode == CustomGCode::MultiExtruder); - // If printing on a single extruder machine, make the tool changes trigger color change (M600) events. - bool tool_changes_as_color_changes = mode == CustomGCode::SingleExtruder && model_mode == CustomGCode::MultiAsSingle; - - // take the half of the minimum layer height gap as episilon - double layer_height_episilon = std::numeric_limits::max(); - for (auto it_prev = m_layer_tools.begin(), it_next = std::next(m_layer_tools.begin()); it_next != m_layer_tools.end(); it_prev = it_next, ++it_next) - layer_height_episilon = std::min(layer_height_episilon, it_next->print_z - it_prev->print_z); - layer_height_episilon *= 0.5; - - auto it_lt = m_layer_tools.rbegin(); + auto num_filaments = unsigned(print.config().filament_diameter.size()); + CustomGCode::Mode mode = + (num_filaments == 1) ? CustomGCode::SingleExtruder : + print.object_extruders().size() == 1 ? CustomGCode::MultiAsSingle : CustomGCode::MultiExtruder; + CustomGCode::Mode model_mode = print.model().get_curr_plate_custom_gcodes().mode; + auto custom_gcode_it = custom_gcode_per_print_z.gcodes.rbegin(); + // Tool changes and color changes will be ignored, if the model's tool/color changes were entered in mm mode and the print is in non mm mode + // or vice versa. + bool ignore_tool_and_color_changes = (mode == CustomGCode::MultiExtruder) != (model_mode == CustomGCode::MultiExtruder); + // If printing on a single extruder machine, make the tool changes trigger color change (M600) events. + bool tool_changes_as_color_changes = mode == CustomGCode::SingleExtruder && model_mode == CustomGCode::MultiAsSingle; + + auto apply_custom_gcode_to_layer = [mode, + ignore_tool_and_color_changes, + tool_changes_as_color_changes, + num_filaments](LayerTools& lt, const std::vector& extruder_printing_above, const CustomGCode::Item& item) + { + bool color_change = item.type == CustomGCode::ColorChange; + bool tool_change = item.type == CustomGCode::ToolChange; + bool pause_or_custom_gcode = !color_change && !tool_change; + bool apply_color_change = !ignore_tool_and_color_changes && + // If it is color change, it will actually be useful as the exturder above will print. + // BBS + (color_change ? + mode == CustomGCode::SingleExtruder || + (item.extruder <= int(num_filaments) && extruder_printing_above[unsigned(item.extruder - 1)]) : + tool_change && tool_changes_as_color_changes); + if (pause_or_custom_gcode || apply_color_change) + lt.custom_gcode = &item; + }; + + std::unordered_map> extruder_print_above_by_layer; + { + std::vector extruder_printing_above(num_filaments, false); + for (auto iter = m_layer_tools.rbegin(); iter != m_layer_tools.rend(); ++iter) { + for (unsigned int i : iter->extruders) + extruder_printing_above[i] = true; + int layer_idx = m_layer_tools.rend() - iter - 1; + extruder_print_above_by_layer.emplace(layer_idx, extruder_printing_above); + } + } + for (auto custom_gcode_it = custom_gcode_per_print_z.gcodes.rbegin(); custom_gcode_it != custom_gcode_per_print_z.gcodes.rend(); ++custom_gcode_it) { if (custom_gcode_it->type == CustomGCode::ToolChange) continue; - for (; it_lt != m_layer_tools.rend(); ++it_lt) { - for (unsigned int i : it_lt->extruders) - extruder_printing_above[i] = true; - if (std::abs(it_lt->print_z - custom_gcode_it->print_z) < layer_height_episilon) { - const CustomGCode::Item &custom_gcode = *custom_gcode_it; - // The custom G-code applies to the current layer. - bool color_change = custom_gcode.type == CustomGCode::ColorChange; - bool tool_change = custom_gcode.type == CustomGCode::ToolChange; - bool pause_or_custom_gcode = ! color_change && ! tool_change; - bool apply_color_change = ! ignore_tool_and_color_changes && - // If it is color change, it will actually be useful as the exturder above will print. - // BBS - (color_change ? - mode == CustomGCode::SingleExtruder || - (custom_gcode.extruder <= int(num_filaments) && extruder_printing_above[unsigned(custom_gcode.extruder - 1)]) : - tool_change && tool_changes_as_color_changes); - if (pause_or_custom_gcode || apply_color_change) - it_lt->custom_gcode = &custom_gcode; - - ++it_lt; - break; - } + + auto layer_it_upper = std::upper_bound(m_layer_tools.begin(), m_layer_tools.end(), custom_gcode_it->print_z, [](double z,const LayerTools& lt) { + return z < lt.print_z; + }); + + int upper_layer_idx = layer_it_upper - m_layer_tools.begin(); + if (layer_it_upper == m_layer_tools.begin()) { + apply_custom_gcode_to_layer(*layer_it_upper, extruder_print_above_by_layer[0], *custom_gcode_it); + } + else if (layer_it_upper == m_layer_tools.end()) { + auto layer_it_lower = std::prev(layer_it_upper); + int lower_layer_idx = layer_it_lower - m_layer_tools.begin(); + apply_custom_gcode_to_layer(*layer_it_lower, extruder_print_above_by_layer[lower_layer_idx], *custom_gcode_it); + } + else { + auto layer_it_lower = std::prev(layer_it_upper); + int lower_layer_idx = layer_it_lower - m_layer_tools.begin(); + double gap_to_lower = std::fabs(custom_gcode_it->print_z - layer_it_lower->print_z); + double gap_to_upper = std::fabs(custom_gcode_it->print_z - layer_it_upper->print_z); + if (gap_to_lower < gap_to_upper) + apply_custom_gcode_to_layer(*layer_it_lower, extruder_print_above_by_layer[lower_layer_idx], *custom_gcode_it); + else + apply_custom_gcode_to_layer(*layer_it_upper, extruder_print_above_by_layer[upper_layer_idx], *custom_gcode_it); } } } diff --git a/src/libslic3r/MeshSplitImpl.hpp b/src/libslic3r/MeshSplitImpl.hpp index f01d1d799a..ca94cd2fec 100644 --- a/src/libslic3r/MeshSplitImpl.hpp +++ b/src/libslic3r/MeshSplitImpl.hpp @@ -184,6 +184,81 @@ std::vector its_split(const Its &its) return ret; } +// Splits a mesh into multiple meshes when possible. +template +void its_split_and_keep_relationship(const Its &m, OutputIt out_it, OutputIt_ship out_ship) +{ + using namespace meshsplit_detail; + + const indexed_triangle_set &its = ItsWithNeighborsIndex_::get_its(m); + + struct VertexConv + { + size_t part_id = std::numeric_limits::max(); + size_t vertex_image; + }; + std::vector vidx_conv(its.vertices.size()); + + meshsplit_detail::NeighborVisitor visitor(its, meshsplit_detail::ItsWithNeighborsIndex_::get_index(m)); + + std::vector facets; + for (size_t part_id = 0;; ++part_id) { + // Collect all faces of the next patch. + facets.clear(); + visitor.visit([&facets](size_t idx) { + facets.emplace_back(idx); + return true; + }); + if (facets.empty()) break; + std::sort(facets.begin(), facets.end()); + // Create a new mesh for the part that was just split off. + indexed_triangle_set mesh; + mesh.indices.reserve(facets.size()); + mesh.vertices.reserve(std::min(facets.size() * 3, its.vertices.size())); + std::unordered_map relationship; + // Assign the facets to the new mesh. + for (size_t face_id : facets) { + const auto &face = its.indices[face_id]; + Vec3i new_face; + for (size_t v = 0; v < 3; ++v) { + auto vi = face(v); + + if (vidx_conv[vi].part_id != part_id) { + vidx_conv[vi] = {part_id, mesh.vertices.size()}; + mesh.vertices.emplace_back(its.vertices[size_t(vi)]); + } + + new_face(v) = vidx_conv[vi].vertex_image; + } + relationship[mesh.indices.size()] = face_id; + mesh.indices.emplace_back(new_face); + } + + *out_it = std::move(mesh); + *out_ship = std::move(relationship); + ++out_it; + } +} +class MeshAndShip +{ +public: + std::vector itses; + std::vector> ships; +}; + +template +MeshAndShip its_split_and_save_relationship(const Its &its) +{ + auto ret = reserve_vector(3); + auto ret_ship = reserve_vector>(3); + + its_split_and_keep_relationship(its, std::back_inserter(ret), std::back_inserter(ret_ship)); + MeshAndShip mesh_ship; + mesh_ship.itses = ret; + mesh_ship.ships = ret_ship; + return mesh_ship; +} + template bool its_is_splittable(const Its &m) { diff --git a/src/libslic3r/Model.cpp b/src/libslic3r/Model.cpp index 4f8cffd547..82328083c3 100644 --- a/src/libslic3r/Model.cpp +++ b/src/libslic3r/Model.cpp @@ -3243,9 +3243,12 @@ std::string ModelVolume::type_to_string(const ModelVolumeType t) // This is useful to assign different materials to different volumes of an object. size_t ModelVolume::split(unsigned int max_extruders) { - std::vector meshes = this->mesh().split(); + std::vector> ships; + std::vector meshes = this->mesh().split_and_save_relationship(ships); if (meshes.size() <= 1) return 1; + if (meshes.size() != ships.size()) + return 1; // splited volume should not be text object size_t idx = 0; size_t ivolume = std::find(this->object->volumes.begin(), this->object->volumes.end(), this) - this->object->volumes.begin(); @@ -3279,17 +3282,23 @@ size_t ModelVolume::split(unsigned int max_extruders) this->exterior_facets.reset(); this->supported_facets.reset(); this->seam_facets.reset(); - for (size_t i = 0; i < tris_split_strs.size(); i++) { - if (i < cur_face_count && tris_split_strs[i].size()>0) { - mmu_segmentation_facets.set_triangle_from_string(i, tris_split_strs[i]); + for (size_t i = 0; i < cur_face_count; i++) { + if (ships[idx].find(i) != ships[idx].end()) { + auto index = ships[idx][i]; + if (tris_split_strs[index].size() > 0) { + mmu_segmentation_facets.set_triangle_from_string(i, tris_split_strs[index]); + } } } } else { auto new_mv =new ModelVolume(object, *this, std::move(mesh)); this->object->volumes.insert(this->object->volumes.begin() + (++ivolume), new_mv); - for (size_t i = last_all_mesh_face_count; i < tris_split_strs.size(); i++) { - if (i < last_all_mesh_face_count + cur_face_count && tris_split_strs[i].size() > 0) { - new_mv->mmu_segmentation_facets.set_triangle_from_string(i - last_all_mesh_face_count, tris_split_strs[i]); + for (size_t i = 0; i < new_mv->mesh_ptr()->its.indices.size(); i++) { + if (ships[idx].find(i) != ships[idx].end()) { + auto index = ships[idx][i]; + if (tris_split_strs[index].size() > 0) { + new_mv->mmu_segmentation_facets.set_triangle_from_string(i, tris_split_strs[index]); + } } } } diff --git a/src/libslic3r/TriangleMesh.cpp b/src/libslic3r/TriangleMesh.cpp index 676780a4dd..006d9fe16f 100644 --- a/src/libslic3r/TriangleMesh.cpp +++ b/src/libslic3r/TriangleMesh.cpp @@ -406,6 +406,29 @@ std::vector TriangleMesh::split() const return out; } +std::vector TriangleMesh::split_and_save_relationship(std::vector> &result) const { + auto itss_and_ships = its_split_and_save_relationship<>(this->its); + std::vector out; + out.reserve(itss_and_ships.itses.size()); + result.reserve(itss_and_ships.itses.size()); + unsigned int index = 0; + for (indexed_triangle_set &m : itss_and_ships.itses) { + // The TriangleMesh constructor shall fill in the mesh statistics including volume. + TriangleMesh temp_triangle_mesh(std::move(m)); + if (abs(temp_triangle_mesh.volume() < 0.01)) { // 0.01mm^3 + index++; + continue; + } + if (temp_triangle_mesh.volume() < 0) { // Some source mesh parts may be incorrectly oriented. Correct them. + temp_triangle_mesh.flip_triangles(); + } + out.emplace_back(temp_triangle_mesh); + result.emplace_back(itss_and_ships.ships[index]); + index++; + } + return out; +} + void TriangleMesh::merge(const TriangleMesh &mesh) { its_merge(this->its, mesh.its); diff --git a/src/libslic3r/TriangleMesh.hpp b/src/libslic3r/TriangleMesh.hpp index c3815af0a0..4b1a7a0e54 100644 --- a/src/libslic3r/TriangleMesh.hpp +++ b/src/libslic3r/TriangleMesh.hpp @@ -119,6 +119,7 @@ class TriangleMesh void align_to_origin(); void rotate(double angle, Point* center); std::vector split() const; + std::vector split_and_save_relationship(std::vector> &result) const; void merge(const TriangleMesh &mesh); ExPolygons horizontal_projection() const; // 2D convex hull of a 3D mesh projected into the Z=0 plane. diff --git a/src/slic3r/GUI/CalibrationWizardCaliPage.cpp b/src/slic3r/GUI/CalibrationWizardCaliPage.cpp index 7621f4be9b..6245b069c7 100644 --- a/src/slic3r/GUI/CalibrationWizardCaliPage.cpp +++ b/src/slic3r/GUI/CalibrationWizardCaliPage.cpp @@ -92,7 +92,8 @@ void CalibrationCaliPage::on_subtask_abort(wxCommandEvent& event) if (obj) obj->command_task_abort(); }); } - abort_dlg->update_text(_L("Are you sure you want to cancel this print?")); + abort_dlg->update_text(_L("Are you sure to stop printing?")); + abort_dlg->update_btn_label(_L("Yes"), _L("No")); abort_dlg->on_show(); } diff --git a/src/slic3r/GUI/CalibrationWizardPage.cpp b/src/slic3r/GUI/CalibrationWizardPage.cpp index 2b90b1341c..89bd525769 100644 --- a/src/slic3r/GUI/CalibrationWizardPage.cpp +++ b/src/slic3r/GUI/CalibrationWizardPage.cpp @@ -174,7 +174,7 @@ CaliPageButton::CaliPageButton(wxWindow* parent, CaliPageActionType type, wxStri break; case CaliPageActionType::CALI_ACTION_AUTO_CALI: this->SetLabel(_L("Auto-Calibration")); - this->SetToolTip(_L("We would use Lidar to read the calibration result")); + this->SetToolTip(_L("The printer will automatically read the calibration results.")); break; case CaliPageActionType::CALI_ACTION_START: this->SetLabel(_L("Start Calibration")); diff --git a/src/slic3r/GUI/GLCanvas3D.cpp b/src/slic3r/GUI/GLCanvas3D.cpp index 6934d867b6..15df02e581 100644 --- a/src/slic3r/GUI/GLCanvas3D.cpp +++ b/src/slic3r/GUI/GLCanvas3D.cpp @@ -7081,7 +7081,8 @@ void GLCanvas3D::_render_bed_for_picking(bool bottom) void GLCanvas3D::_render_platelist(bool bottom, bool only_current, bool only_body, int hover_id, bool render_cali, bool show_grid) const { - wxGetApp().plater()->get_partplate_list().render(bottom, only_current, only_body, hover_id, render_cali, show_grid); + wxGetApp().plater()->get_partplate_list().render(bottom, only_current, only_body, hover_id, render_cali, show_grid, + wxGetApp().app_config->get_bool("enable_opengl_multi_instance")); } void GLCanvas3D::_render_plates_for_picking() const diff --git a/src/slic3r/GUI/GUI_ObjectList.cpp b/src/slic3r/GUI/GUI_ObjectList.cpp index 07b933ab7d..9ce64b1e87 100644 --- a/src/slic3r/GUI/GUI_ObjectList.cpp +++ b/src/slic3r/GUI/GUI_ObjectList.cpp @@ -909,12 +909,15 @@ void ObjectList::update_filament_in_config(const wxDataViewItem& item) } else { const int obj_idx = m_objects_model->GetIdByItem(m_objects_model->GetObject(item)); - if (item_type & itVolume) - { - const int volume_id = m_objects_model->GetVolumeIdByItem(item); - if (obj_idx < 0 || volume_id < 0) - return; - m_config = &(*m_objects)[obj_idx]->volumes[volume_id]->config; + if (item_type & itVolume){ + const int ui_volume_idx = m_objects_model->GetVolumeIdByItem(item); + if (obj_idx < 0 || ui_volume_idx < 0) + return; + auto &ui_and_3d_volume_map = m_objects_model->get_ui_and_3d_volume_map(); + if (ui_and_3d_volume_map.find(ui_volume_idx) == ui_and_3d_volume_map.end()) { + return; + } + m_config = &(*m_objects)[obj_idx]->volumes[ui_and_3d_volume_map[ui_volume_idx]]->config; } else if (item_type & itLayer) m_config = &get_item_config(item); diff --git a/src/slic3r/GUI/PartPlate.cpp b/src/slic3r/GUI/PartPlate.cpp index 52ba1902b5..05c8c6b4c2 100644 --- a/src/slic3r/GUI/PartPlate.cpp +++ b/src/slic3r/GUI/PartPlate.cpp @@ -4682,15 +4682,19 @@ void PartPlateList::postprocess_arrange_polygon(arrangement::ArrangePolygon& arr } /*rendering related functions*/ -void PartPlateList::render_instance(bool bottom, bool only_current, bool only_body, bool force_background_color, int hover_id, bool show_grid) +void PartPlateList::render_instance(bool bottom, bool only_current, bool only_body, bool force_background_color, int hover_id, bool show_grid, bool enable_multi_instance) { - if (m_update_plate_mats_vbo) { - m_update_plate_mats_vbo = false; - GLModel::create_or_update_mats_vbo(m_plate_mats_vbo, m_plate_trans); - } - if (m_update_unselected_plate_mats_vbo) { - m_update_unselected_plate_mats_vbo = false; - GLModel::create_or_update_mats_vbo(m_unselected_plate_mats_vbo, m_unselected_plate_trans); + if (enable_multi_instance) { + if (!only_current) { + if (m_update_plate_mats_vbo) { + m_update_plate_mats_vbo = false; + GLModel::create_or_update_mats_vbo(m_plate_mats_vbo, m_plate_trans); + } + if (m_update_unselected_plate_mats_vbo) { + m_update_unselected_plate_mats_vbo = false; + GLModel::create_or_update_mats_vbo(m_unselected_plate_mats_vbo, m_unselected_plate_trans); + } + } } const Camera &camera = wxGetApp().plater()->get_camera(); @@ -4699,34 +4703,49 @@ void PartPlateList::render_instance(bool bottom, bool only_current, bool only_bo { auto cur_shader = wxGetApp().get_current_shader(); if (cur_shader) { - cur_shader->stop_using(); - } + cur_shader->stop_using(); + } + GLShaderProgram *shader = wxGetApp().get_shader("flat"); {//for selected - GLShaderProgram *shader = wxGetApp().get_shader("flat"); shader->start_using(); shader->set_uniform("view_model_matrix", view_mat * m_plate_trans[m_current_plate].get_matrix()); shader->set_uniform("projection_matrix", proj_mat); if (!bottom) { // draw background render_exclude_area(force_background_color); // for selected_plate } - if (show_grid) - render_grid(bottom); // for selected_plate - - shader->stop_using(); - - } + if (show_grid) + render_grid(bottom); // for selected_plate + } + if (enable_multi_instance) { + shader->stop_using(); + } if (!only_current) { - GLShaderProgram *shader = wxGetApp().get_shader("flat_instance"); - shader->start_using(); - auto res =shader->set_uniform("view_matrix", view_mat); - res = shader->set_uniform("projection_matrix", proj_mat); - if (!bottom) {// draw background - render_instance_background(force_background_color);//for unselected_plate - render_instance_exclude_area(force_background_color);//for unselected_plate - } - render_instance_grid(bottom);//for unselected_plate + if (enable_multi_instance) { + GLShaderProgram *shader = wxGetApp().get_shader("flat_instance"); + shader->start_using(); + auto res = shader->set_uniform("view_matrix", view_mat); + res = shader->set_uniform("projection_matrix", proj_mat); + if (!bottom) { // draw background + render_instance_background(force_background_color); // for unselected_plate + render_instance_exclude_area(force_background_color); // for unselected_plate + } + render_instance_grid(bottom); // for unselected_plate - shader->stop_using(); + shader->stop_using(); + } + else { + for (size_t i = 0; i < m_unselected_plate_trans.size(); i++) { + shader->set_uniform("view_model_matrix", view_mat * m_unselected_plate_trans[i].get_matrix()); + if (!bottom) { // draw background + render_unselected_background(force_background_color); // for unselected_plate + render_unselected_exclude_area(force_background_color); // for unselected_plate + } + render_unselected_grid(bottom); // for unselected_plate + } + } + } + if (!enable_multi_instance) { + shader->stop_using(); } } @@ -4769,6 +4788,22 @@ void PartPlateList::render_instance_grid(bool bottom) m_gridlines_bolder.render_geometry_instance(m_unselected_plate_mats_vbo, m_unselected_plate_trans.size()); } +void PartPlateList::render_unselected_grid(bool bottom) +{ + glsafe(::glLineWidth(1.0f * m_scale_factor)); + ColorRGBA color; + if (bottom) + color = PartPlate::LINE_BOTTOM_COLOR; + else { + color = m_is_dark ? PartPlate::LINE_TOP_DARK_COLOR : PartPlate::LINE_TOP_COLOR; + } + m_gridlines.set_color(color); + m_gridlines.render_geometry(); + glsafe(::glLineWidth(2.0f * m_scale_factor)); + m_gridlines_bolder.set_color(color); + m_gridlines_bolder.render_geometry(); +} + void PartPlateList::render_instance_background(bool force_default_color) { if (m_unselected_plate_trans.size() == 0) { return; } @@ -4783,6 +4818,19 @@ void PartPlateList::render_instance_background(bool force_default_color) m_triangles.render_geometry_instance(m_unselected_plate_mats_vbo, m_unselected_plate_trans.size()); } +void PartPlateList::render_unselected_background(bool force_default_color) +{ + // draw background + ColorRGBA color; + if (!force_default_color) { + color = m_is_dark ? PartPlate::UNSELECT_DARK_COLOR : PartPlate::UNSELECT_COLOR; + } else { + color = PartPlate::DEFAULT_COLOR; + } + m_triangles.set_color(color); + m_triangles.render_geometry(); +} + void PartPlateList::render_exclude_area(bool force_default_color) { if (force_default_color || !m_exclude_triangles.is_initialized()) // for thumbnail case @@ -4804,8 +4852,18 @@ void PartPlateList::render_instance_exclude_area(bool force_default_color) m_exclude_triangles.render_geometry_instance(m_unselected_plate_mats_vbo, m_unselected_plate_trans.size()); } +void PartPlateList::render_unselected_exclude_area(bool force_default_color) +{ + if (force_default_color || !m_exclude_triangles.is_initialized()) // for thumbnail case + return; + ColorRGBA unselect_color{0.9f, 0.9f, 0.9f, 1.0f}; + // draw exclude area + m_exclude_triangles.set_color(unselect_color); + m_exclude_triangles.render_geometry(); +} + //render -void PartPlateList::render(bool bottom, bool only_current, bool only_body, int hover_id, bool render_cali, bool show_grid) +void PartPlateList::render(bool bottom, bool only_current, bool only_body, int hover_id, bool render_cali, bool show_grid, bool enable_multi_instance) { const std::lock_guard local_lock(m_plates_mutex); std::vector::iterator it = m_plate_list.begin(); @@ -4829,7 +4887,7 @@ void PartPlateList::render(bool bottom, bool only_current, bool only_body, int h glsafe(::glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)); glsafe(::glDepthMask(GL_FALSE)); - render_instance(bottom, only_current, only_body, false, m_plate_hover_action, show_grid); + render_instance(bottom, only_current, only_body, false, m_plate_hover_action, show_grid, enable_multi_instance); for (it = m_plate_list.begin(); it != m_plate_list.end(); it++) { int current_index = (*it)->get_index(); diff --git a/src/slic3r/GUI/PartPlate.hpp b/src/slic3r/GUI/PartPlate.hpp index 675e438c37..d6930eacca 100644 --- a/src/slic3r/GUI/PartPlate.hpp +++ b/src/slic3r/GUI/PartPlate.hpp @@ -816,15 +816,19 @@ class PartPlateList : public ObjectBase bool only_body = false, bool force_background_color = false, int hover_id = -1, - bool show_grid = true); + bool show_grid = true, + bool enable_multi_instance = true); void render_instance_grid(bool bottom); + void render_unselected_grid(bool bottom); void render_instance_background(bool force_default_color = false); + void render_unselected_background(bool force_default_color); void render_grid(bool bottom); void render_exclude_area(bool force_default_color); void render_instance_exclude_area(bool force_default_color); + void render_unselected_exclude_area(bool force_default_color); void on_change_color_mode(bool is_dark) { m_is_dark = is_dark; } - void render(bool bottom, bool only_current = false, bool only_body = false, int hover_id = -1, bool render_cali = false, bool show_grid = true); + void render(bool bottom, bool only_current = false, bool only_body = false, int hover_id = -1, bool render_cali = false, bool show_grid = true, bool enable_multi_instance = true); void render_for_picking_pass(); void set_render_option(bool bedtype_texture, bool plate_settings); void set_render_cali(bool value = true) { render_cali_logo = value; } diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index 5eb70f0754..a9bfb01fac 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -4021,10 +4021,12 @@ std::vector Plater::priv::load_files(const std::vector& input_ filament_ids.clear(); } }; - if (boost::algorithm::iends_with(path.string(), ".stp") || - boost::algorithm::iends_with(path.string(), ".step")) { - double linear = std::stod(wxGetApp().app_config->get("linear_defletion")); - double angle = std::stod(wxGetApp().app_config->get("angle_defletion")); + if (boost::iends_with(path.string(), ".stp") || + boost::iends_with(path.string(), ".step")) { + double linear = string_to_double_decimal_point(wxGetApp().app_config->get("linear_defletion")); + if (linear <= 0) linear = 0.003; + double angle = string_to_double_decimal_point(wxGetApp().app_config->get("angle_defletion")); + if (angle <= 0) angle = 0.5; model = Slic3r::Model:: read_from_step(path.string(), strategy, [this, &dlg, real_filename, &progress_percent, &file_percent, step_percent, INPUT_FILES_RATIO, total_files, i](int load_stage, int current, int total, bool &cancel) { @@ -4043,7 +4045,7 @@ std::vector Plater::priv::load_files(const std::vector& input_ }, [this, &path, &is_user_cancel, &linear, &angle](Slic3r::Step& file, double& linear_value, double& angle_value)-> int { if (wxGetApp().app_config->get_bool("enable_step_mesh_setting")) { - StepMeshDialog mesh_dlg(nullptr, file); + StepMeshDialog mesh_dlg(nullptr, file, linear, angle); if (mesh_dlg.ShowModal() == wxID_OK) { linear_value = mesh_dlg.get_linear_defletion(); angle_value = mesh_dlg.get_angle_defletion(); @@ -5846,8 +5848,16 @@ void Plater::priv::reload_from_disk() std::vector project_presets; // BBS: backup - new_model = Model::read_from_file(path, nullptr, nullptr, LoadStrategy::AddDefaultInstances | LoadStrategy::LoadModel, &plate_data, &project_presets, nullptr, - nullptr, nullptr, nullptr, nullptr, 0, obj_color_fun); + if (boost::iends_with(path, ".stp") || + boost::iends_with(path, ".step")) { + double linear = string_to_double_decimal_point(wxGetApp().app_config->get("linear_defletion")); + double angle = string_to_double_decimal_point(wxGetApp().app_config->get("angle_defletion")); + new_model = Model::read_from_step(path, LoadStrategy::AddDefaultInstances | LoadStrategy::LoadModel, nullptr, nullptr, nullptr, linear, angle); + }else { + new_model = Model::read_from_file(path, nullptr, nullptr, LoadStrategy::AddDefaultInstances | LoadStrategy::LoadModel, &plate_data, &project_presets, nullptr, nullptr, nullptr, nullptr, nullptr, 0, obj_color_fun); + } + + for (ModelObject* model_object : new_model.objects) { model_object->center_around_origin(); diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp index cce62bd20a..451b52c415 100644 --- a/src/slic3r/GUI/Preferences.cpp +++ b/src/slic3r/GUI/Preferences.cpp @@ -846,6 +846,27 @@ wxBoxSizer *PreferencesDialog::create_item_checkbox(wxString title, wxWindow *pa } } + if (param == "enable_opengl_multi_instance") { + if (wxGetApp().plater()->is_project_dirty()) { + auto result = MessageDialog(static_cast(this), _L("The current project has unsaved changes, save it before continuing?"), + wxString(SLIC3R_APP_FULL_NAME) + " - " + _L("Save"), wxYES_NO | wxYES_DEFAULT | wxCENTRE) + .ShowModal(); + if (result == wxID_YES) { wxGetApp().plater()->save_project(); } + } + MessageDialog msg_wingow(nullptr, + _L("Change opengl multi instance rendering requires application restart.") + "\n" + + _L("Do you want to continue?"), + _L("Enable opengl multi instance rendering"), wxYES | wxYES_DEFAULT | wxCANCEL | wxCENTRE); + if (msg_wingow.ShowModal() == wxID_YES) { + Close(); + GetParent()->RemoveChild(this); + wxGetApp().recreate_GUI(_L("Enable opengl multi instance rendering")); + } else { + checkbox->SetValue(!checkbox->GetValue()); + app_config->set_bool(param, checkbox->GetValue()); + app_config->save(); + } + } e.Skip(); }); @@ -1156,6 +1177,8 @@ wxWindow* PreferencesDialog::create_general_page() auto enable_lod_settings = create_item_checkbox(_L("Improve rendering performance by lod"), page, _L("Improved rendering performance under the scene of multiple plates and many models."), 50, "enable_lod"); + auto enable_opengl_multi_instance_rendering = create_item_checkbox(_L("enable multi instance rendering by opengl"), page, + _L("If enabled, it can improve certain rendering performance. But for some graphics cards, it may not be applicable, please turn it off."), 50, "enable_opengl_multi_instance"); float range_min = 1.0, range_max = 2.5; auto item_grabber_size_settings = create_item_range_input(_L("Grabber scale"), page, _L("Set grabber size for move,rotate,scale tool.") + _L("Value range") + ":[" + std::to_string(range_min) + "," + @@ -1241,6 +1264,7 @@ wxWindow* PreferencesDialog::create_general_page() sizer_page->Add(_3d_settings, 0, wxTOP | wxEXPAND, FromDIP(20)); sizer_page->Add(item_mouse_zoom_settings, 0, wxTOP, FromDIP(3)); sizer_page->Add(item_show_shells_in_preview_settings, 0, wxTOP, FromDIP(3)); + sizer_page->Add(enable_opengl_multi_instance_rendering, 0, wxTOP, FromDIP(3)); sizer_page->Add(enable_lod_settings, 0, wxTOP, FromDIP(3)); sizer_page->Add(item_grabber_size_settings, 0, wxTOP, FromDIP(3)); sizer_page->Add(title_presets, 0, wxTOP | wxEXPAND, FromDIP(20)); diff --git a/src/slic3r/GUI/SelectMachine.cpp b/src/slic3r/GUI/SelectMachine.cpp index 2808d95a22..fb9e25c189 100644 --- a/src/slic3r/GUI/SelectMachine.cpp +++ b/src/slic3r/GUI/SelectMachine.cpp @@ -2171,11 +2171,11 @@ void SelectMachineDialog::show_status(PrintDialogStatus status, std::vectorget_preset_printer_model_name(target_model_id)); target_print_name.Replace(wxT("Bambu Lab "), wxEmptyString); msg_text = wxString::Format(_L("The selected printer (%s) is incompatible with the chosen printer profile in the slicer (%s)."), sourcet_print_name, target_print_name); - + update_print_status_msg(msg_text, true, true); } catch (...){} - + Enable_Send_Button(false); Enable_Refresh_Button(true); }else if (status == PrintDialogStatus::PrintStatusTimelapseNoSdcard) { @@ -2260,8 +2260,8 @@ bool SelectMachineDialog::is_blocking_printing(MachineObject* obj_) if (m_print_type == PrintFromType::FROM_NORMAL) { PresetBundle* preset_bundle = wxGetApp().preset_bundle; source_model = preset_bundle->printers.get_edited_preset().get_printer_type(preset_bundle); - - + + }else if (m_print_type == PrintFromType::FROM_SDCARD_VIEW) { if (m_required_data_plate_data_list.size() > 0) { source_model = m_required_data_plate_data_list[m_print_plate_idx]->printer_model_id; @@ -2490,7 +2490,7 @@ void SelectMachineDialog::on_ok_btn(wxCommandEvent &event) wxString error_info = Plater::get_slice_warning_string(warning); if (error_info.IsEmpty()) { error_info = wxString::Format("%s\n", warning.msg); - } + } confirm_text.push_back(ConfirmBeforeSendInfo(error_info)); has_slice_warnings = true; @@ -2525,7 +2525,7 @@ void SelectMachineDialog::on_ok_btn(wxCommandEvent &event) std::string info; DeviceManager::check_filaments_in_blacklist(filament_brand, filament_type, in_blacklist, action, info); - + if (in_blacklist && action == "prohibition") { has_prohibited_filament = true; prohibited_error = wxString::FromUTF8(info); @@ -2561,26 +2561,26 @@ void SelectMachineDialog::on_ok_btn(wxCommandEvent &event) if (!is_same_nozzle_diameters(tag_nozzle_type, nozzle_diameter)) { has_slice_warnings = true; is_printing_block = true; - + wxString nozzle_in_preset = wxString::Format(_L("nozzle in preset: %s %s"),nozzle_diameter, ""); wxString nozzle_in_printer = wxString::Format(_L("nozzle memorized: %.1f %s"), obj_->nozzle_diameter, ""); - confirm_text.push_back(ConfirmBeforeSendInfo(_L("Your nozzle diameter in sliced file is not consistent with memorized nozzle. If you changed your nozzle lately, please go to Device > Printer Parts to change settings.") - + "\n " + nozzle_in_preset + confirm_text.push_back(ConfirmBeforeSendInfo(_L("Your nozzle diameter in sliced file is not consistent with memorized nozzle. If you changed your nozzle lately, please go to Device > Printer Parts to change settings.") + + "\n " + nozzle_in_preset + "\n " + nozzle_in_printer + "\n", ConfirmBeforeSendInfo::InfoLevel::Warning)); } - + if (!is_same_nozzle_type(filament_type, tag_nozzle_type)){ has_slice_warnings = true; is_printing_block = true; nozzle_diameter = wxString::Format("%.1f", obj_->nozzle_diameter).ToStdString(); - wxString nozzle_in_preset = wxString::Format(_L("Printing high temperature material(%1 material) with %2 may cause nozzle damage"), filament_type, format_steel_name(obj_->nozzle_type)); + wxString nozzle_in_preset = wxString::Format(_L("Printing %1s material with %2s nozzle may cause nozzle damage."), filament_type,format_steel_name(obj_->nozzle_type)); confirm_text.push_back(ConfirmBeforeSendInfo(nozzle_in_preset, ConfirmBeforeSendInfo::InfoLevel::Warning)); } } - + if (has_slice_warnings) { wxString confirm_title = _L("Warning"); @@ -2617,7 +2617,7 @@ void SelectMachineDialog::on_ok_btn(wxCommandEvent &event) // } // }); - + wxString info_msg = wxEmptyString; for (auto i = 0; i < confirm_text.size(); i++) { @@ -3569,7 +3569,7 @@ void SelectMachineDialog::update_show_status() else { show_status(PrintDialogStatus::PrintStatusAmsMappingByOrder); } - + } else { int mismatch_index = -1; for (int i = 0; i < m_ams_mapping_result.size(); i++) { @@ -3614,7 +3614,7 @@ void SelectMachineDialog::update_show_status() show_status(PrintDialogStatus::PrintStatusAmsMappingInvalid); return; } - } + } } bool SelectMachineDialog::has_timelapse_warning() @@ -3625,7 +3625,7 @@ bool SelectMachineDialog::has_timelapse_warning() return true; } } - + return false; } @@ -3981,7 +3981,7 @@ void SelectMachineDialog::reset_and_sync_ams_list() delete item; iter++; } - + m_sizer_material->Clear(); m_materialList.clear(); m_filaments.clear(); @@ -4394,7 +4394,7 @@ void SelectMachineDialog::set_default_from_sdcard() image = image.Rescale(FromDIP(256), FromDIP(256)); m_thumbnailPanel->set_thumbnail(image); } - + //for black list std::vector materials; std::vector brands; @@ -4818,7 +4818,7 @@ void EditDevNameDialog::on_edit_name(wxCommandEvent &e) } void ThumbnailPanel::render(wxDC& dc) { - + if (wxGetApp().dark_mode() && m_brightness_value < SHOW_BACKGROUND_BITMAP_PIXEL_THRESHOLD) { #ifdef __WXMSW__ wxMemoryDC memdc; @@ -4832,7 +4832,7 @@ void EditDevNameDialog::on_edit_name(wxCommandEvent &e) } else dc.DrawBitmap(m_bitmap, 0, 0); - + } ThumbnailPanel::~ThumbnailPanel() {} diff --git a/src/slic3r/GUI/StatusPanel.cpp b/src/slic3r/GUI/StatusPanel.cpp index da2ccd9ee8..f2979654a6 100644 --- a/src/slic3r/GUI/StatusPanel.cpp +++ b/src/slic3r/GUI/StatusPanel.cpp @@ -387,6 +387,7 @@ void PrintingTaskPanel::create_panel(wxWindow* parent) penel_text->Layout(); m_staticText_finish_time = new wxStaticText(penel_finish_time, wxID_ANY, _L("Finish Time: N/A")); + m_staticText_finish_time->Wrap(-1); m_staticText_finish_time->SetFont(wxFont(12, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("HarmonyOS Sans SC"))); m_staticText_finish_time->SetForegroundColour(wxColour(146, 146, 146)); m_staticText_finish_time->SetToolTip(_L("The estimated printing time for \nmulti-color models may be inaccurate.")); @@ -396,7 +397,7 @@ void PrintingTaskPanel::create_panel(wxWindow* parent) bSizer_finish_time->Add(0, 0, 0, wxLEFT, FromDIP(20)); bSizer_finish_time->Add(m_staticText_finish_time, 0, wxALIGN_CENTER | wxALL, 0); bSizer_finish_time->Add(m_staticText_finish_day, 0,wxLEFT | wxRIGHT , FromDIP(10)); - bSizer_finish_time->Add(0, 0, 0, wxLEFT, FromDIP(20)); + //bSizer_finish_time->Add(0, 0, 0, wxLEFT, FromDIP(20)); bSizer_finish_time->Add(panel_button_block, 0, wxALIGN_CENTER | wxALL, 0); penel_finish_time->SetMaxSize(wxSize(FromDIP(600), -1)); penel_finish_time->SetSizer(bSizer_finish_time); @@ -414,7 +415,7 @@ void PrintingTaskPanel::create_panel(wxWindow* parent) bSizer_subtask_info->Add(m_printing_stage_value, 0, wxEXPAND | wxTOP, FromDIP(5)); bSizer_subtask_info->Add(penel_bottons, 0, wxEXPAND | wxTOP, FromDIP(10)); bSizer_subtask_info->Add(m_panel_progress, 0, wxEXPAND|wxRIGHT, FromDIP(25)); - bSizer_subtask_info->Add(penel_finish_time, 0, wxEXPAND, 0); + bSizer_subtask_info->Add(penel_finish_time, 0, wxEXPAND, FromDIP(10)); m_printing_sizer = new wxBoxSizer(wxHORIZONTAL); m_printing_sizer->SetMinSize(wxSize(PAGE_MIN_WIDTH, -1)); @@ -1937,7 +1938,8 @@ void StatusPanel::on_subtask_abort(wxCommandEvent &event) } }); } - abort_dlg->update_text(_L("Are you sure you want to cancel this print?")); + abort_dlg->update_text(_L("Are you sure to stop printing?")); + abort_dlg->update_btn_label(_L("Yes"), _L("No")); abort_dlg->m_button_cancel->SetBackgroundColor(abort_dlg->btn_bg_green); abort_dlg->m_button_cancel->SetBorderColor(*wxWHITE); @@ -2154,7 +2156,7 @@ void StatusPanel::show_error_message(MachineObject *obj, bool is_exist, wxString if (is_exist && msg.IsEmpty()) { error_info_reset(); } else { - if (msg.IsEmpty()) { msg = _L("Unknow error."); } + if (msg.IsEmpty()) { msg = _L("Unknown error."); } m_project_task_panel->show_error_msg(msg); if (!used_button.empty()) { diff --git a/src/slic3r/GUI/StepMeshDialog.cpp b/src/slic3r/GUI/StepMeshDialog.cpp index 4963b7d97b..fa64b447d0 100644 --- a/src/slic3r/GUI/StepMeshDialog.cpp +++ b/src/slic3r/GUI/StepMeshDialog.cpp @@ -66,7 +66,7 @@ bool StepMeshDialog:: validate_number_range(const wxString& value, double min, d return (num >= min && num <= max); } -StepMeshDialog::StepMeshDialog(wxWindow* parent, Slic3r::Step& file) +StepMeshDialog::StepMeshDialog(wxWindow* parent, Slic3r::Step& file, double linear_init, double angle_init) : DPIDialog(parent ? parent : static_cast(wxGetApp().mainframe), wxID_ANY, _(L("Step file import parameters")), @@ -74,6 +74,9 @@ StepMeshDialog::StepMeshDialog(wxWindow* parent, Slic3r::Step& file) wxDefaultSize, wxDEFAULT_DIALOG_STYLE /* | wxRESIZE_BORDER*/), m_file(file) { + m_linear_last = wxString::Format("%.3f", linear_init); + m_angle_last = wxString::Format("%.2f", angle_init); + Bind(wxEVT_THREAD_DONE, &StepMeshDialog::on_task_done, this); std::string icon_path = (boost::format("%1%/images/BambuStudioTitle.ico") @@ -85,33 +88,46 @@ StepMeshDialog::StepMeshDialog(wxWindow* parent, Slic3r::Step& file) wxBoxSizer* bSizer = new wxBoxSizer(wxVERTICAL); bSizer->SetMinSize(wxSize(MIN_DIALOG_WIDTH, -1)); - auto image_bitmap = create_scaled_bitmap("step_mesh_info", this, FromDIP(120), false, std::string(), false, false, true); - int image_width = image_bitmap.GetWidth(); - int image_height = image_bitmap.GetHeight(); - wxPanel* overlay_panel = new wxPanel(this, wxID_ANY, wxDefaultPosition, image_bitmap.GetSize(), wxTAB_TRAVERSAL); - overlay_panel->SetBackgroundStyle(wxBG_STYLE_PAINT); - wxStaticBitmap *image = new wxStaticBitmap(overlay_panel, wxID_ANY, image_bitmap, wxDefaultPosition, wxDefaultSize, 0); - - CenteredStaticText* text_1 = new CenteredStaticText (overlay_panel, wxID_ANY, _L("Rough"), - wxPoint(overlay_panel->GetSize().GetWidth() / 6, - overlay_panel->GetSize().GetHeight() / 2)); - CenteredStaticText* text_2 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Smooth"), - wxPoint(overlay_panel->GetSize().GetWidth() * 5 / 6, - overlay_panel->GetSize().GetHeight() / 2)); - CenteredStaticText* text_3 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Reduce Linear"), - wxPoint(overlay_panel->GetSize().GetWidth() / 2, - overlay_panel->GetSize().GetHeight() * 1.3 / 3)); - CenteredStaticText* text_4 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Reduce Angle"), - wxPoint(overlay_panel->GetSize().GetWidth() / 2, - overlay_panel->GetSize().GetHeight() * 2 / 3)); - CenteredStaticText* text_5 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Fewer faces"), - wxPoint(overlay_panel->GetSize().GetWidth() / 6, - overlay_panel->GetSize().GetHeight() * 2.8 / 3)); - CenteredStaticText* text_6 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("More faces"), - wxPoint(overlay_panel->GetSize().GetWidth() * 5 / 6, - overlay_panel->GetSize().GetHeight() * 2.8 / 3)); - - bSizer->Add(overlay_panel, 0, wxALIGN_CENTER | wxALL, 10); + auto image_bitmap = create_scaled_bitmap("step_mesh_info", this, FromDIP(120)); + + // wxPanel* overlay_panel = new wxPanel(this, wxID_ANY, wxDefaultPosition, image_bitmap.GetSize(), wxTAB_TRAVERSAL); + // overlay_panel->SetBackgroundStyle(wxBG_STYLE_PAINT); + // wxStaticBitmap *image = new wxStaticBitmap(overlay_panel, wxID_ANY, image_bitmap, wxDefaultPosition, overlay_panel->GetSize(), 0); + + // CenteredStaticText* text_1 = new CenteredStaticText (overlay_panel, wxID_ANY, _L("Smooth"), + // wxPoint(overlay_panel->GetSize().GetWidth() / 6, + // overlay_panel->GetSize().GetHeight() / 2)); + // CenteredStaticText* text_2 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Rough"), + // wxPoint(overlay_panel->GetSize().GetWidth() * 5 / 6, + // overlay_panel->GetSize().GetHeight() / 2)); + // CenteredStaticText* text_3 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Reduce Linear"), + // wxPoint(overlay_panel->GetSize().GetWidth() / 2, + // overlay_panel->GetSize().GetHeight() * 1.3 / 3)); + // CenteredStaticText* text_4 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Reduce Angle"), + // wxPoint(overlay_panel->GetSize().GetWidth() / 2, + // overlay_panel->GetSize().GetHeight() * 2 / 3)); + // CenteredStaticText* text_5 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("More faces"), + // wxPoint(overlay_panel->GetSize().GetWidth() / 6, + // overlay_panel->GetSize().GetHeight() * 2.8 / 3)); + // CenteredStaticText* text_6 = new CenteredStaticText(overlay_panel, wxID_ANY, _L("Fewer faces"), + // wxPoint(overlay_panel->GetSize().GetWidth() * 5 / 6, + // overlay_panel->GetSize().GetHeight() * 2.8 / 3)); + + // bSizer->Add(overlay_panel, 0, wxALIGN_CENTER | wxALL, 10); + + wxBoxSizer* tips_sizer = new wxBoxSizer(wxVERTICAL); + wxStaticText* info = new wxStaticText(this, wxID_ANY, _L("Smaller linear and angular deflections result in higher-quality transformations but increase the processing time.")); + wxStaticText *tips = new wxStaticText(this, wxID_ANY, _L("See BambuLab Wiki")); + wxFont font(10, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false); + font.SetUnderlined(true); + tips->SetFont(font); + tips->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent& e) { + wxLaunchDefaultBrowser("https://wiki.bambulab.com/en/software/bambu-studio/step"); + }); + info->Wrap(FromDIP(400)); + tips_sizer->Add(info, 0, wxALIGN_LEFT); + tips_sizer->Add(tips, 0, wxALIGN_LEFT); + bSizer->Add(tips_sizer, 0, wxEXPAND | wxLEFT | wxRIGHT | wxTOP, LEFT_RIGHT_PADING); wxBoxSizer* linear_sizer = new wxBoxSizer(wxHORIZONTAL); //linear_sizer->SetMinSize(wxSize(MIN_DIALOG_WIDTH, -1)); @@ -251,8 +267,8 @@ StepMeshDialog::StepMeshDialog(wxWindow* parent, Slic3r::Step& file) if (m_checkbox->IsChecked()) { wxGetApp().app_config->set_bool("enable_step_mesh_setting", false); } - wxGetApp().app_config->set("linear_defletion", std::to_string(get_linear_defletion())); - wxGetApp().app_config->set("angle_defletion", std::to_string(get_angle_defletion())); + wxGetApp().app_config->set("linear_defletion", float_to_string_decimal_point(get_linear_defletion(), 3)); + wxGetApp().app_config->set("angle_defletion", float_to_string_decimal_point(get_angle_defletion(), 2)); EndModal(wxID_OK); } diff --git a/src/slic3r/GUI/StepMeshDialog.hpp b/src/slic3r/GUI/StepMeshDialog.hpp index ad342a7745..2090bcda98 100644 --- a/src/slic3r/GUI/StepMeshDialog.hpp +++ b/src/slic3r/GUI/StepMeshDialog.hpp @@ -12,20 +12,14 @@ class Button; class StepMeshDialog : public Slic3r::GUI::DPIDialog { public: - StepMeshDialog(wxWindow* parent, Slic3r::Step& file); + StepMeshDialog(wxWindow* parent, Slic3r::Step& file, double linear_init, double angle_init); void on_dpi_changed(const wxRect& suggested_rect) override; - inline double get_linear_init() { - return std::stod(Slic3r::GUI::wxGetApp().app_config->get("linear_defletion")); - } - inline double get_angle_init() { - return std::stod(Slic3r::GUI::wxGetApp().app_config->get("angle_defletion")); - } inline double get_linear_defletion() { double value; if (m_linear_last.ToDouble(&value)) { return value; }else { - return get_linear_init(); + return m_last_linear; } } inline double get_angle_defletion() { @@ -33,7 +27,7 @@ class StepMeshDialog : public Slic3r::GUI::DPIDialog if (m_angle_last.ToDouble(&value)) { return value; } else { - return get_angle_init(); + return m_last_angle; } } private: @@ -41,11 +35,11 @@ class StepMeshDialog : public Slic3r::GUI::DPIDialog Button* m_button_ok = nullptr; Button* m_button_cancel = nullptr; wxCheckBox* m_checkbox = nullptr; - wxString m_linear_last = wxString::Format("%.3f", get_linear_init()); - wxString m_angle_last = wxString::Format("%.2f", get_angle_init()); + wxString m_linear_last; + wxString m_angle_last; wxStaticText* mesh_face_number_text; - double m_last_linear; - double m_last_angle; + double m_last_linear = 0.003; + double m_last_angle = 0.5; std::future task; bool validate_number_range(const wxString& value, double min, double max); void update_mesh_number_text(); diff --git a/src/slic3r/GUI/Widgets/TempInput.cpp b/src/slic3r/GUI/Widgets/TempInput.cpp index 8faa7145c7..f8ae356600 100644 --- a/src/slic3r/GUI/Widgets/TempInput.cpp +++ b/src/slic3r/GUI/Widgets/TempInput.cpp @@ -182,16 +182,14 @@ void TempInput::SetTagTemp(wxString temp) void TempInput::SetCurrTemp(int temp) { auto tp = wxString::Format("%d", temp); - if (currentTemp != tp) { - currentTemp = tp; + if (GetLabel() != tp) { SetLabel(tp); } } void TempInput::SetCurrTemp(wxString temp) { - if (currentTemp != temp) { - currentTemp = temp; + if (GetLabel() != temp) { SetLabel(temp); } } @@ -257,18 +255,14 @@ void TempInput::Warning(bool warn, WarningType type) void TempInput::SetIconActive() { - if (!actice) { - actice = true; - Refresh(); - } + actice = true; + Refresh(); } void TempInput::SetIconNormal() { - if (actice) { - actice = false; - Refresh(); - } + actice = false; + Refresh(); } void TempInput::SetMaxTemp(int temp) { max_temp = temp; } diff --git a/src/slic3r/GUI/Widgets/TempInput.hpp b/src/slic3r/GUI/Widgets/TempInput.hpp index 426358dea8..c86d3a7121 100644 --- a/src/slic3r/GUI/Widgets/TempInput.hpp +++ b/src/slic3r/GUI/Widgets/TempInput.hpp @@ -64,7 +64,6 @@ class TempInput : public wxNavigationEnabled wxPopupTransientWindow *wdialog{nullptr}; int temp_type; bool actice = false; - wxString currentTemp; wxString erasePending(wxString &str); diff --git a/src/slic3r/Utils/bambu_networking.hpp b/src/slic3r/Utils/bambu_networking.hpp index 690f30b0fe..0c7b4fddb1 100644 --- a/src/slic3r/Utils/bambu_networking.hpp +++ b/src/slic3r/Utils/bambu_networking.hpp @@ -95,7 +95,7 @@ namespace BBL { #define BAMBU_NETWORK_LIBRARY "bambu_networking" #define BAMBU_NETWORK_AGENT_NAME "bambu_network_agent" -#define BAMBU_NETWORK_AGENT_VERSION "01.10.00.08" +#define BAMBU_NETWORK_AGENT_VERSION "01.10.01.01" //iot preset type strings #define IOT_PRINTER_TYPE_STRING "printer" diff --git a/version.inc b/version.inc index ca22e5cc81..8857b6d50e 100644 --- a/version.inc +++ b/version.inc @@ -13,7 +13,7 @@ endif() # The build_version should start from 50 in master branch -set(SLIC3R_VERSION "01.10.00.89") +set(SLIC3R_VERSION "01.10.01.50") string(REPLACE "." "," SLIC3R_COMMA_SEPARATED_VERSION ${SLIC3R_VERSION}) set(SLIC3R_COMMA_SEPARATED_VERSION "${SLIC3R_COMMA_SEPARATED_VERSION}")