mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-30 20:21:12 -06:00 
			
		
		
		
	Merge branch 'master-remote' 01.06.00.66
# Conflicts: # .github/workflows/build_ubuntu.yml # bbl/i18n/OrcaSlicer.pot # bbl/i18n/de/OrcaSlicer_de.po # bbl/i18n/en/OrcaSlicer_en.po # bbl/i18n/es/OrcaSlicer_es.po # bbl/i18n/fr/OrcaSlicer_fr.po # bbl/i18n/hu/OrcaSlicer_hu.po # bbl/i18n/it/OrcaSlicer_it.po # bbl/i18n/ja/OrcaSlicer_ja.po # bbl/i18n/nl/OrcaSlicer_nl.po # bbl/i18n/sv/OrcaSlicer_sv.po # bbl/i18n/zh_cn/OrcaSlicer_zh_CN.po # resources/i18n/zh_cn/BambuStudio.mo # version.inc
This commit is contained in:
		
						commit
						54c02521d4
					
				
					 10 changed files with 108 additions and 23 deletions
				
			
		|  | @ -8,6 +8,8 @@ set -x | |||
| docker run \ | ||||
|   `# Use the hosts networking.  Printer wifi and also dbus communication` \ | ||||
|   --net=host \ | ||||
|   `# Some X installs will not have permissions to talk to sockets for shared memory` \ | ||||
|   --ipc host \ | ||||
|   `# Run as your workstations username to keep permissions the same` \ | ||||
|   -u $USER \ | ||||
|   `# Bind mount your home directory into the container for loading/saving files` \ | ||||
|  |  | |||
|  | @ -18,6 +18,8 @@ RUN apt-get update && apt-get install  -y \ | |||
|     extra-cmake-modules \ | ||||
|     file \ | ||||
|     git \ | ||||
|     gstreamer1.0-plugins-bad \ | ||||
|     gstreamer1.0-libav \ | ||||
|     libcairo2-dev \ | ||||
|     libcurl4-openssl-dev \ | ||||
|     libdbus-1-dev \ | ||||
|  |  | |||
|  | @ -5373,10 +5373,10 @@ msgid "" | |||
| "by right-click the empty position of build plate and choose \"Add Primitive" | ||||
| "\"->\"Timelapse Wipe Tower\"." | ||||
| msgstr "" | ||||
| "Wenn Sie eine Zeitrafferaufnahme ohne Werkzeugkopf aufnehmen, wird " | ||||
| "empfohlen, einen „Timelapse Wipe Tower“ hinzuzufügen,\n" | ||||
| "indem Sie auf die leere Position der Bauplatte rechtsklicken und „Primitiv " | ||||
| "hinzufügen“ -> „Timelapse Wipe Tower“ auswählen." | ||||
| "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." | ||||
| 
 | ||||
| msgid "Line width" | ||||
| msgstr "Breite der Linie" | ||||
|  |  | |||
|  | @ -5084,6 +5084,10 @@ msgid "" | |||
| "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\"." | ||||
| 
 | ||||
| msgid "Line width" | ||||
| msgstr "Line width" | ||||
|  |  | |||
|  | @ -1540,8 +1540,8 @@ msgid "" | |||
| "Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " | ||||
| "load or unload filiament." | ||||
| msgstr "" | ||||
| "Choisissez un emplacement de l’AMS puis appuyez sur le bouton \"Charger\" ou " | ||||
| "\"Décharger\" pour charger ou décharger automatiquement le filament." | ||||
| "Choisissez un slot AMS puis appuyez sur le bouton \"charger\" ou\"Décharger" | ||||
| "\" pour charger ou décharger automatiquement le filament." | ||||
| 
 | ||||
| msgid "Edit" | ||||
| msgstr "Éditer" | ||||
|  | @ -5517,9 +5517,9 @@ msgid "" | |||
| "Bed temperature when cool plate is installed. Value 0 means the filament " | ||||
| "does not support to print on the Cool Plate" | ||||
| msgstr "" | ||||
| "Température du plateau lorsque le plateau Bambu Cool Plate est installé. Une " | ||||
| "valeur à 0 signifie que le filament ne prend pas en charge l'impression sur " | ||||
| "le plateau Bambu Cool Plate" | ||||
| "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 "Bambu Engineering Plate" | ||||
|  | @ -6628,8 +6628,8 @@ msgstr "" | |||
| 
 | ||||
| msgid "The prime tower is not supported in \"By object\" print." | ||||
| msgstr "" | ||||
| "La tour de purge n'est pas prise en charge avec la séquence d’impression " | ||||
| "\"Par objet\"." | ||||
| "La tour de nettoyage n'est pas prise en charge dans l'impression \"Par objet" | ||||
| "\"." | ||||
| 
 | ||||
| msgid "" | ||||
| "The prime tower is not supported when adaptive layer height is on. It " | ||||
|  | @ -7275,8 +7275,9 @@ msgid "" | |||
| "Add solid infill near sloping surfaces to guarantee the vertical shell " | ||||
| "thickness (top+bottom solid layers)" | ||||
| msgstr "" | ||||
| "Ajouter un remplissage solide près des surfaces en pente pour garantir " | ||||
| "l'épaisseur verticale de la coque (couches solides supérieures + inférieures)" | ||||
| "Ajoutez du remplissage solide à proximité des surfaces inclinées pour " | ||||
| "garantir l'épaisseur verticale de la coque (couches solides supérieure" | ||||
| "+inférieure)." | ||||
| 
 | ||||
| msgid "Internal bridge support thickness" | ||||
| msgstr "Épaisseur des supports de ponts internes" | ||||
|  |  | |||
|  | @ -5951,6 +5951,10 @@ msgid "" | |||
| "continue. Do you want to update now? You can also update later from 'Upgrade " | ||||
| "firmware'." | ||||
| msgstr "" | ||||
| "È stato rilevato un aggiornamento importante che deve essere eseguito prima " | ||||
| "che la stampa possa continuare. Si desidera aggiornare ora? È possibile " | ||||
| "effettuare l'aggiornamento anche in un secondo momento da \"Aggiorna firmware" | ||||
| "\"." | ||||
| 
 | ||||
| msgid "" | ||||
| "The firmware version is abnormal. Repairing and updating are required before " | ||||
|  | @ -9845,7 +9849,43 @@ msgstr "" | |||
| #~ "\"Timelapse Wipe Tower\" \n" | ||||
| #~ "by right-click the empty position of build plate and choose \"Add " | ||||
| #~ "Primitive\"->\"Timelapse Wipe Tower\".\n" | ||||
| #~ msgstr "\n" | ||||
| #~ 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" | ||||
| 
 | ||||
| #~ msgid "" | ||||
| #~ "When sparse infill density is low, the internal solid infill or internal " | ||||
| #~ "bridge may have no archor at the end of line. This cause falling and bad " | ||||
| #~ "quality when printing internal solid infill. When enable this feature, " | ||||
| #~ "loop paths will be added to the sparse fill of the lower layers for " | ||||
| #~ "specific thickness, so that better archor can be provided for internal " | ||||
| #~ "bridge. 0 means disable this feature" | ||||
| #~ msgstr "" | ||||
| #~ "Quando la densità riempimento è bassa, il riempimento solido interno o il " | ||||
| #~ "ponte interno potrebbero non avere alcun ancoraggio alla fine della " | ||||
| #~ "linea. Ciò causa cadute e cattiva qualità durante la stampa del " | ||||
| #~ "riempimento solido interno. Quando si abilita questa funzione, i percorsi " | ||||
| #~ "ad anello verranno aggiunti al riempimento dei layer inferiori per uno " | ||||
| #~ "spessore specifico, in modo da poter fornire ancoraggi migliori per i " | ||||
| #~ "ponti interni. 0 significa disabilitare questa funzione" | ||||
| 
 | ||||
| #~ msgid "" | ||||
| #~ "When using support material for the support interface, We recommend the " | ||||
| #~ "following settings:\n" | ||||
| #~ "0 top z distance, 0 interface spacing, concentric pattern." | ||||
| #~ msgstr "" | ||||
| #~ "Quando si utilizza materiale di supporto per l'interfaccia supporto, si " | ||||
| #~ "consigliano le seguenti impostazioni:\n" | ||||
| #~ "0 distanza superiore, 0 distanza tra interfacce, trama concentrica." | ||||
| 
 | ||||
| #~ msgid "" | ||||
| #~ "X1 General Settings - Network Settings in the side bar of X1 main screen" | ||||
| #~ msgstr "" | ||||
| #~ "Impostazioni generali X1 - Impostazioni rete nella barra laterale della " | ||||
| #~ "schermata principale X1." | ||||
| 
 | ||||
| #~ msgid "" | ||||
| #~ "You have changed some preset settings. \n" | ||||
|  |  | |||
|  | @ -8719,6 +8719,21 @@ msgstr "支撑:正在生成多边形" | |||
| msgid "Support: generate toolpath" | ||||
| msgstr "支撑:正在生成走线路径" | ||||
| 
 | ||||
| msgid "Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." | ||||
| msgstr "未知的文件格式。输入文件的扩展名必须为.stl、.obj 或 .amf(.xml)。" | ||||
| 
 | ||||
| msgid "Loading of a model file failed." | ||||
| msgstr "加载模型文件失败。" | ||||
| 
 | ||||
| msgid "The supplied file couldn't be read because it's empty" | ||||
| msgstr "无法读取提供的文件,因为该文件为空。" | ||||
| 
 | ||||
| msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." | ||||
| msgstr "未知的文件格式。输入文件的扩展名必须为.3mf或.zip .amf。" | ||||
| 
 | ||||
| msgid "Canceled" | ||||
| msgstr "已取消" | ||||
| 
 | ||||
| #, c-format, boost-format | ||||
| msgid "Support: generate polygons at layer %d" | ||||
| msgstr "支撑:正在生成层%d的多边形" | ||||
|  |  | |||
							
								
								
									
										16
									
								
								resources/images/param_rectilinear_interlaced.svg
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								resources/images/param_rectilinear_interlaced.svg
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,16 @@ | |||
| <svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||||
| <g clip-path="url(#clip0_10579_34940)"> | ||||
| <path fill-rule="evenodd" clip-rule="evenodd" d="M9 1H1V9H9V1ZM1 0.5C0.723858 0.5 0.5 0.723858 0.5 1V9C0.5 9.27614 0.723858 9.5 1 9.5H9C9.27614 9.5 9.5 9.27614 9.5 9V1C9.5 0.723858 9.27614 0.5 9 0.5H1Z" fill="#262E30"/> | ||||
| <path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M4.75 9.5V0.5H5.25V9.5H4.75Z" fill="#262E30"/> | ||||
| <path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M2.5498 9.5V0.5H3.0498V9.5H2.5498Z" fill="#262E30"/> | ||||
| <path opacity="0.4" fill-rule="evenodd" clip-rule="evenodd" d="M6.9502 9.5V0.5H7.4502V9.5H6.9502Z" fill="#262E30"/> | ||||
| <path fill-rule="evenodd" clip-rule="evenodd" d="M0.5 4.75L9.5 4.75L9.5 5.25L0.5 5.25L0.5 4.75Z" fill="#262E30"/> | ||||
| <path fill-rule="evenodd" clip-rule="evenodd" d="M0.5 2.5498L9.5 2.5498L9.5 3.0498L0.5 3.0498L0.5 2.5498Z" fill="#262E30"/> | ||||
| <path fill-rule="evenodd" clip-rule="evenodd" d="M0.5 6.95019L9.5 6.9502L9.5 7.4502L0.5 7.45019L0.5 6.95019Z" fill="#262E30"/> | ||||
| </g> | ||||
| <defs> | ||||
| <clipPath id="clip0_10579_34940"> | ||||
| <rect width="10" height="10" fill="white"/> | ||||
| </clipPath> | ||||
| </defs> | ||||
| </svg> | ||||
| After Width: | Height: | Size: 1.2 KiB | 
|  | @ -37,6 +37,11 @@ | |||
| #include "MeshBoolean.hpp" | ||||
| #include "Format/3mf.hpp" | ||||
| 
 | ||||
| // Transtltion
 | ||||
| #include "I18N.hpp" | ||||
| 
 | ||||
| #define _L(s) Slic3r::I18N::translate(s) | ||||
| 
 | ||||
| namespace Slic3r { | ||||
|     // BBS initialization of static variables
 | ||||
|     std::map<size_t, ExtruderParams> Model::extruderParamsMap = { {0,{"",0,0}}}; | ||||
|  | @ -191,7 +196,7 @@ Model Model::read_from_file(const std::string& input_file, DynamicPrintConfig* c | |||
|         //BBS: is_xxx is used for is_bbs_3mf when load 3mf
 | ||||
|         result = load_bbs_3mf(input_file.c_str(), config, config_substitutions, &model, plate_data, project_presets, is_xxx, file_version, proFn, options, project, plate_id); | ||||
|     else | ||||
|         throw Slic3r::RuntimeError("Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension."); | ||||
|         throw Slic3r::RuntimeError(_L("Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension.")); | ||||
| 
 | ||||
|     if (is_cb_cancel) { | ||||
|         Model empty_model; | ||||
|  | @ -200,13 +205,13 @@ Model Model::read_from_file(const std::string& input_file, DynamicPrintConfig* c | |||
| 
 | ||||
|     if (!result) { | ||||
|         if (message.empty()) | ||||
|             throw Slic3r::RuntimeError("Loading of a model file failed."); | ||||
|             throw Slic3r::RuntimeError(_L("Loading of a model file failed.")); | ||||
|         else | ||||
|             throw Slic3r::RuntimeError(message); | ||||
|     } | ||||
| 
 | ||||
|     if (model.objects.empty()) | ||||
|         throw Slic3r::RuntimeError("The supplied file couldn't be read because it's empty"); | ||||
|         throw Slic3r::RuntimeError(_L("The supplied file couldn't be read because it's empty")); | ||||
| 
 | ||||
|     for (ModelObject *o : model.objects) | ||||
|         o->input_file = input_file; | ||||
|  | @ -252,14 +257,14 @@ Model Model::read_from_archive(const std::string& input_file, DynamicPrintConfig | |||
|     else if (boost::algorithm::iends_with(input_file, ".zip.amf")) | ||||
|         result = load_amf(input_file.c_str(), config, config_substitutions, &model, &is_bbl_3mf); | ||||
|     else | ||||
|         throw Slic3r::RuntimeError("Unknown file format. Input file must have .3mf or .zip.amf extension."); | ||||
|         throw Slic3r::RuntimeError(_L("Unknown file format. Input file must have .3mf or .zip.amf extension.")); | ||||
| 
 | ||||
|     if (out_file_type != En3mfType::From_Prusa) { | ||||
|         out_file_type = is_bbl_3mf ? En3mfType::From_BBS : En3mfType::From_Other; | ||||
|     } | ||||
| 
 | ||||
|     if (!result) | ||||
|         throw Slic3r::RuntimeError("Loading of a model file failed."); | ||||
|         throw Slic3r::RuntimeError(_L("Loading of a model file failed.")); | ||||
| 
 | ||||
|     for (ModelObject *o : model.objects) { | ||||
| //        if (boost::algorithm::iends_with(input_file, ".zip.amf"))
 | ||||
|  | @ -278,7 +283,7 @@ Model Model::read_from_archive(const std::string& input_file, DynamicPrintConfig | |||
|         if (proFn) { | ||||
|             proFn(IMPORT_STAGE_ADD_INSTANCE, 0, 1, cb_cancel); | ||||
|             if (cb_cancel) | ||||
|                 throw Slic3r::RuntimeError("Canceled"); | ||||
|                 throw Slic3r::RuntimeError(_L("Canceled")); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|  | @ -289,7 +294,7 @@ Model Model::read_from_archive(const std::string& input_file, DynamicPrintConfig | |||
|     if (proFn) { | ||||
|         proFn(IMPORT_STAGE_UPDATE_GCODE, 0, 1, cb_cancel); | ||||
|         if (cb_cancel) | ||||
|             throw Slic3r::RuntimeError("Canceled"); | ||||
|             throw Slic3r::RuntimeError(_L("Canceled")); | ||||
|     } | ||||
| 
 | ||||
|     //BBS
 | ||||
|  | @ -300,7 +305,7 @@ Model Model::read_from_archive(const std::string& input_file, DynamicPrintConfig | |||
|     if (proFn) { | ||||
|         proFn(IMPORT_STAGE_CHECK_MODE_GCODE, 0, 1, cb_cancel); | ||||
|         if (cb_cancel) | ||||
|             throw Slic3r::RuntimeError("Canceled"); | ||||
|             throw Slic3r::RuntimeError(_L("Canceled")); | ||||
|     } | ||||
| 
 | ||||
|     handle_legacy_sla(*config); | ||||
|  |  | |||
|  | @ -11,4 +11,4 @@ if(NOT DEFINED BBL_INTERNAL_TESTING) | |||
| set(BBL_INTERNAL_TESTING "1") | ||||
| endif() | ||||
| set(SoftFever_VERSION "1.6.3-beta") | ||||
| set(SLIC3R_VERSION "01.06.00.65") | ||||
| set(SLIC3R_VERSION "01.06.00.66") | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 SoftFever
						SoftFever