Merge branch 'main' into SoftFever

# Conflicts:
#	.github/workflows/build_linux.yml
#	src/slic3r/GUI/GUI_Factories.cpp
This commit is contained in:
SoftFever 2023-04-07 11:12:04 +08:00
commit 5c9012b967
14 changed files with 9434 additions and 31 deletions

View File

@ -44,6 +44,8 @@ jobs:
- name: Download and extract deps - name: Download and extract deps
working-directory: ${{ github.workspace }} working-directory: ${{ github.workspace }}
run: | run: |
mkdir -p ${{ github.workspace }}/deps/build
mkdir -p ${{ github.workspace }}/deps/build/destdir
curl -LJO https://github.com/SoftFever/FileSharing/releases/download/OrcaSlicer_deps_Mar/OrcaSlicer_dep_ubuntu_05-04-2023.tar.gz curl -LJO https://github.com/SoftFever/FileSharing/releases/download/OrcaSlicer_deps_Mar/OrcaSlicer_dep_ubuntu_05-04-2023.tar.gz
tar -zxf OrcaSlicer_dep_ubuntu_05-04-2023.tar.gz -C ${{ github.workspace }}/deps/build tar -zxf OrcaSlicer_dep_ubuntu_05-04-2023.tar.gz -C ${{ github.workspace }}/deps/build
chown -R $(id -u):$(id -g) ${{ github.workspace }}/deps/build/destdir chown -R $(id -u):$(id -g) ${{ github.workspace }}/deps/build/destdir

View File

@ -59,6 +59,17 @@ Prebuilt binaries are available through the [github releases page](https://githu
- run `BuildLinux.sh -udisr` - run `BuildLinux.sh -udisr`
# Note:
If you're running Klipper, it's recommended to add the following configuration to your `printer.cfg` file.
```
# Enable object exclusion
[exclude_object]
# Enable arcs support
[gcode_arcs]
resolution: 0.1
```
# License # License
Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab. Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab.

9315
bbl/i18n/cs/OrcaSlicer_cs.po Executable file

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@ -1,7 +1,7 @@
{ {
"name": "Bambulab", "name": "Bambulab",
"url": "http://www.bambulab.com/Parameters/vendor/BBL.json", "url": "http://www.bambulab.com/Parameters/vendor/BBL.json",
"version": "01.06.00.01", "version": "01.06.00.02",
"force_update": "0", "force_update": "0",
"description": "the initial version of BBL configurations", "description": "the initial version of BBL configurations",
"machine_model_list": [ "machine_model_list": [

View File

@ -30,7 +30,7 @@
"machine_unload_filament_time": "28", "machine_unload_filament_time": "28",
"nozzle_type": "stainless_steel", "nozzle_type": "stainless_steel",
"nozzle_hrc": "20", "nozzle_hrc": "20",
"auxiliary_fan": "0", "auxiliary_fan": "1",
"upward_compatible_machine":[ "upward_compatible_machine":[
"Bambu Lab X1 0.4 nozzle", "Bambu Lab X1 0.4 nozzle",
"Bambu Lab X1 Carbon 0.4 nozzle" "Bambu Lab X1 Carbon 0.4 nozzle"

View File

@ -173,6 +173,93 @@ var LangText={
"t91": "3D-Modelle herunterladen", "t91": "3D-Modelle herunterladen",
"t92": "Bambu Weihnachtshütte" "t92": "Bambu Weihnachtshütte"
}, },
"cs_CZ":{
"t1":"Vítejte v Orca Slicer",
"t2":"Orca Slicer bude nastaven v několika krocích. Začněme!",
"t3":"Uživatelská smlouva",
"t4":"Nesouhlasím",
"t5":"Souhlasím",
"t6":"Prosíme o vaši pomoc se zlepšením všech tisků",
"t7":"Povolit odesílání anonymních dat",
"t8":"Zpět",
"t9":"Další",
"t10":"Výběr tiskárny",
"t11":"Všechny",
"t12":"Vymazat vše",
"t13":"Tryska mm",
"t14":"Výběr Filamentu",
"t15":"Tiskárna",
"t16":"Typ Filamentu",
"t17":"Dodavatel",
"t18":"Chyba",
"t19":"Musí být vybraný alespoň jeden Filament.",
"t20":"Chcete použít výchozí Filament?",
"t21":"Ano",
"t22":"Ne",
"t23":"Poznámka k vydání",
"t24":"Začínáme",
"t25":"Dokončit",
"t26":"Přihlásit",
"t27":"Registrovat",
"t28":"Poslední",
"t29":"Obchodní centrum",
"t30":"Manuální",
"t31":"Nový projekt",
"t32":"Vytvořit nový projekt",
"t33":"Otevřít projekt",
"t34":"Hotspot",
"t35":"Nedávno otevřeno",
"t36":"OK",
"t37":"Musí být vybrána alespoň jedna tiskárna.",
"t38":"Zrušit",
"t39":"Potvrdit",
"t40":"Síť je odpojena, prosím zkontrolujte a zkuste to znovu později.",
"t47":"Vyberte prosím svou oblast přihlášení",
"t48":"Asie-Pacifik",
"t49":"Čína",
"t50":"Odhlásit se",
"t52":"Přeskočit",
"t53":"Připojit se",
"t54":"V komunitě 3D tisku se ze vzájemných úspěchů a neúspěchů učíme upravovat vlastní parametry a nastavení krájení. Orca Slicer se řídí stejným principem a využívá strojové učení ke zlepšení svého výkonu na základě úspěchů a neúspěchů počet výtisků našimi uživateli. Orca Slicer školíme, aby byl chytřejší tím, že jim poskytuje data z reálného světa. Pokud budete chtít, bude tato služba přistupovat k informacím z vašich protokolů chyb a protokolů použití, které mohou zahrnovat informace popsané v ",
"t55":"Zásady ochrany osobních údajů",
"t56": ". Nebudeme shromažďovat žádné osobní údaje, pomocí kterých lze přímo nebo nepřímo identifikovat jednotlivce, včetně jmen, adres, platebních údajů nebo telefonních čísel. Povolením této služby souhlasíte s těmito podmínkami a prohlášení o zásadách ochrany osobních údajů.",
"t57": "",
"t58": "",
"t59": ".",
"t60": "Evropa",
"t61": "Severní Amerika",
"t62": "Ostatní",
"t63": "Po změně regionu bude váš účet odhlášen. Přihlaste se prosím znovu později.",
"t64": "Bambu Network plug-in",
"t65": "Odesílání tiskové úlohy přes WLAN",
"t66": "Plné dálkové ovládání",
"t67": "Streamování v přímém přenosu",
"t68": "Synchronizace uživatelských dat",
"t69": "Instalovat Bambu Network plug-in",
"t70": "",
"t71": "Stahování",
"t72": "Stahování se nezdařilo",
"t73": "Instalace úspěšná.",
"t74": "Restartovat",
"t75": "Síťový plug-in Bambu poskytuje následující funkce:",
"t76": "Síťový plug-in Bambu nebyl zjištěn. Klikněte na ",
"t77": "zde",
"t78": " k instalaci.",
"t79": "Nepodařilo se nainstalovat plugin.",
"t80": "Zkuste následující kroky:",
"t81": "1, klikněte",
"t82": "otevřete adresář plug-in",
"t83": "2, Zavřete všechny otevřené Orca Slicer",
"t84": "3, Smažte všechny soubory v adresáři plug-in",
"t85": "4, znovu otevřete Orca Slicer a znovu nainstalujte zásuvný modul",
"t86": "Zavřít",
"t87": "Uživatelská příručka",
"t88": "Odstranit",
"t89": "Otevřít složku obsahující",
"t90": "3D model",
"t91": "Stáhnout 3D modely",
"t92": "Vánoční kabina Bambu"
},
"fr_FR":{ "fr_FR":{
"t1":"Bienvenue dans Orca Slicer", "t1":"Bienvenue dans Orca Slicer",
"t2":"L'installation de Orca Slicer se fera en plusieurs étapes. C'est parti !", "t2":"L'installation de Orca Slicer se fera en plusieurs étapes. C'est parti !",

View File

@ -2662,12 +2662,16 @@ namespace Skirt {
} // namespace Skirt } // namespace Skirt
inline std::string get_instance_name(const PrintObject *object, const PrintInstance &inst) { inline std::string get_instance_name(const PrintObject *object, size_t inst_id) {
return (boost::format("%1%_id_%2%_copy_%3%") % object->model_object()->name % object->get_id() % inst.id).str(); auto obj_name = object->model_object()->name;
// replace space in obj_name with '-'
std::replace(obj_name.begin(), obj_name.end(), ' ', '_');
return (boost::format("%1%_id_%2%_copy_%3%") % obj_name % object->get_id() % inst_id).str();
} }
inline std::string get_instance_name(const PrintObject *object, size_t inst_id) { inline std::string get_instance_name(const PrintObject *object, const PrintInstance &inst) {
return (boost::format("%1%_id_%2%_copy_%3%") % object->model_object()->name % object->get_id() % inst_id).str(); return get_instance_name(object, inst.id);
} }
// In sequential mode, process_layer is called once per each object and its copy, // In sequential mode, process_layer is called once per each object and its copy,

View File

@ -4618,6 +4618,7 @@ bool GUI_App::load_language(wxString language, bool initial)
{"zh_CN", wxString::FromUTF8("\xE4\xB8\xAD\xE6\x96\x87\x28\xE7\xAE\x80\xE4\xBD\x93\x29")}, {"zh_CN", wxString::FromUTF8("\xE4\xB8\xAD\xE6\x96\x87\x28\xE7\xAE\x80\xE4\xBD\x93\x29")},
{"zh_TW", wxString::FromUTF8("\xE4\xB8\xAD\xE6\x96\x87\x28\xE7\xB9\x81\xE9\xAB\x94\x29")}, {"zh_TW", wxString::FromUTF8("\xE4\xB8\xAD\xE6\x96\x87\x28\xE7\xB9\x81\xE9\xAB\x94\x29")},
{"de", wxString::FromUTF8("Deutsch")}, {"de", wxString::FromUTF8("Deutsch")},
{"cs", wxString::FromUTF8("Czech")},
{"nl", wxString::FromUTF8("Nederlands")}, {"nl", wxString::FromUTF8("Nederlands")},
{"sv", wxString::FromUTF8("\x53\x76\x65\x6e\x73\x6b\x61")}, //Svenska {"sv", wxString::FromUTF8("\x53\x76\x65\x6e\x73\x6b\x61")}, //Svenska
{"en", wxString::FromUTF8("English")}, {"en", wxString::FromUTF8("English")},

View File

@ -488,7 +488,7 @@ wxMenu* MenuFactory::append_submenu_add_generic(wxMenu* menu, ModelVolumeType ty
std::vector<boost::filesystem::path> input_files; std::vector<boost::filesystem::path> input_files;
std::string file_name = item; std::string file_name = item;
if (file_name == "Orca Cube") if (file_name == "Orca Cube")
file_name = "OrcaCube_v1.3mf"; file_name = "OrcaCube_v2.3mf";
else if (file_name == "3DBenchy") else if (file_name == "3DBenchy")
file_name = "3DBenchy.stl"; file_name = "3DBenchy.stl";
else if (file_name == "Autodesk FDM Test") else if (file_name == "Autodesk FDM Test")
@ -514,27 +514,6 @@ wxMenu* MenuFactory::append_submenu_add_generic(wxMenu* menu, ModelVolumeType ty
"", menu); "", menu);
} }
for (auto &item : {L("3DBenchy"), L("Autodesk FDM Test"), L("Voron Cube")}) {
append_menu_item(
sub_menu, wxID_ANY, _(item), "",
[type, item](wxCommandEvent &) {
std::vector<boost::filesystem::path> input_files;
std::string file_name = item;
if (file_name == "3DBenchy")
file_name = "3DBenchy.stl";
else if (file_name == "Autodesk FDM Test")
file_name = "ksr_fdmtest_v4.stl";
else if (file_name == "Voron Cube")
file_name = "Voron_Design_Cube_v7.stl";
else
return;
input_files.push_back(
(boost::filesystem::path(Slic3r::resources_dir()) / "handy_models" / file_name));
plater()->load_files(input_files, LoadStrategy::LoadModel);
},
"", menu);
}
return sub_menu; return sub_menu;
} }

View File

@ -444,7 +444,7 @@ public:
std::vector<std::pair<int, int>> objects_and_instances; std::vector<std::pair<int, int>> objects_and_instances;
std::vector<std::pair<int, int>> instances_outside; std::vector<std::pair<int, int>> instances_outside;
ar(m_plate_index, m_print_index, m_origin, m_width, m_depth, m_height, m_locked, m_selected, m_ready_for_slice, m_slice_result_valid, m_apply_invalid, m_printable, m_tmp_gcode_path, objects_and_instances, instances_outside, m_config); ar(m_plate_index, m_name, m_print_index, m_origin, m_width, m_depth, m_height, m_locked, m_selected, m_ready_for_slice, m_slice_result_valid, m_apply_invalid, m_printable, m_tmp_gcode_path, objects_and_instances, instances_outside, m_config);
for (std::vector<std::pair<int, int>>::iterator it = objects_and_instances.begin(); it != objects_and_instances.end(); ++it) for (std::vector<std::pair<int, int>>::iterator it = objects_and_instances.begin(); it != objects_and_instances.end(); ++it)
obj_to_instance_set.insert(std::pair(it->first, it->second)); obj_to_instance_set.insert(std::pair(it->first, it->second));
@ -462,7 +462,7 @@ public:
for (std::set<std::pair<int, int>>::iterator it = obj_to_instance_set.begin(); it != obj_to_instance_set.end(); ++it) for (std::set<std::pair<int, int>>::iterator it = obj_to_instance_set.begin(); it != obj_to_instance_set.end(); ++it)
objects_and_instances.emplace_back(it->first, it->second); objects_and_instances.emplace_back(it->first, it->second);
ar(m_plate_index, m_print_index, m_origin, m_width, m_depth, m_height, m_locked, m_selected, m_ready_for_slice, m_slice_result_valid, m_apply_invalid, m_printable, m_tmp_gcode_path, objects_and_instances, instances_outside, m_config); ar(m_plate_index, m_name, m_print_index, m_origin, m_width, m_depth, m_height, m_locked, m_selected, m_ready_for_slice, m_slice_result_valid, m_apply_invalid, m_printable, m_tmp_gcode_path, objects_and_instances, instances_outside, m_config);
} }
/*template<class Archive> void serialize(Archive& ar) /*template<class Archive> void serialize(Archive& ar)
{ {

View File

@ -118,6 +118,9 @@ wxBoxSizer *PreferencesDialog::create_item_language_combobox(
else if (vlist[i] == wxLocale::GetLanguageInfo(wxLANGUAGE_GERMAN)) { else if (vlist[i] == wxLocale::GetLanguageInfo(wxLANGUAGE_GERMAN)) {
language_name = wxString::FromUTF8("Deutsch"); language_name = wxString::FromUTF8("Deutsch");
} }
else if (vlist[i] == wxLocale::GetLanguageInfo(wxLANGUAGE_CZECH)) {
language_name = wxString::FromUTF8("Czech");
}
else if (vlist[i] == wxLocale::GetLanguageInfo(wxLANGUAGE_SWEDISH)) { else if (vlist[i] == wxLocale::GetLanguageInfo(wxLANGUAGE_SWEDISH)) {
language_name = wxString::FromUTF8("\x53\x76\x65\x6e\x73\x6b\x61"); //Svenska language_name = wxString::FromUTF8("\x53\x76\x65\x6e\x73\x6b\x61"); //Svenska
} }
@ -792,6 +795,7 @@ wxWindow* PreferencesDialog::create_general_page()
wxLANGUAGE_ENGLISH, wxLANGUAGE_ENGLISH,
wxLANGUAGE_CHINESE_SIMPLIFIED, wxLANGUAGE_CHINESE_SIMPLIFIED,
wxLANGUAGE_GERMAN, wxLANGUAGE_GERMAN,
wxLANGUAGE_CZECH,
wxLANGUAGE_FRENCH, wxLANGUAGE_FRENCH,
wxLANGUAGE_SPANISH, wxLANGUAGE_SPANISH,
wxLANGUAGE_SWEDISH, wxLANGUAGE_SWEDISH,

View File

@ -10,5 +10,5 @@ endif()
if(NOT DEFINED BBL_INTERNAL_TESTING) if(NOT DEFINED BBL_INTERNAL_TESTING)
set(BBL_INTERNAL_TESTING "1") set(BBL_INTERNAL_TESTING "1")
endif() endif()
set(SoftFever_VERSION "1.6.0") set(SoftFever_VERSION "1.6.1")
set(SLIC3R_VERSION "01.05.00.61") set(SLIC3R_VERSION "01.05.00.61")