mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-16 05:27:50 +00:00
Reduce Orca weight: Resources to Draco (#12194)
# Description Transforming internal 3D Files to DRC to reduce orca size ## Calibs (Not counting temperature_tower) Original 6,01 MB Converted 1,57 MB - Mesh (STL/3MF) to LossLess DRC - SCV-V2 116kb -> 15kb - fast_tower_test 66kb -> 9kb - ringing_tower 172kb -> 22kb - pressure_advance_test 124kb -> 16kb - tower_with_seam 2kb -> 1kb - retraction_tower 1.726kb -> 97kb (done at 25, if 0 = 212kb) - ~~temperature_tower~~ Updated, fixed, wider range and Draco in: #12103 5.075kb -> 485kb - vfa 1.453kb -> 179kb - Step - SpeedTestStructure 1.312kb -> 86kb - Imported: - Linear Deflection: 0.002 - Angle Deflection: 0.25 - Exported as LossLess DRC ## Handy Models Original 4,66 MB Converted 1,53 MB - STL/3MF to LossLess DRC (Maybe reduce the bit depth???) - 3DBenchy 2.417kb -> 570kb (done at 25, if 0 = 1.340kb) - calicat 43kb -> 6kb - ksr_fdmtest_v4 128kb -> 74kb - Orca_stringhell 63kb -> 37kb - OrcaToleranceTest 758kb -> 94kb - Stanford_Bunny 755kb -> 187kb (done at 25, if 0 = 316kb) - Voron_Design_Cube_v7 34kb -> 21kb ## Bit used After some test with a lot of models and all possible combinations it's safe to say that >20 is BondingBox and mm3 volume the best it can. So i used 25 just as a safe value in: - Stanford_Bunny - 3DBenchy - retraction_tower <img width="324" height="499" alt="imagen" src="https://github.com/user-attachments/assets/bb5000cf-c1fa-4153-af2f-691ea59bc254" /> <img width="324" height="499" alt="imagen" src="https://github.com/user-attachments/assets/f38e3528-0d05-4621-984e-f107a0eec91e" /> ## MultiPart 3MF Didint change them, too much trouble for small changes.
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -544,19 +544,19 @@ wxMenu* MenuFactory::append_submenu_add_handy_model(wxMenu* menu, ModelVolumeTyp
|
|||||||
if (file_name == L("Orca Cube"))
|
if (file_name == L("Orca Cube"))
|
||||||
file_name = "OrcaCube_v2.3mf";
|
file_name = "OrcaCube_v2.3mf";
|
||||||
else if (file_name == L("Orca Tolerance Test"))
|
else if (file_name == L("Orca Tolerance Test"))
|
||||||
file_name = "OrcaToleranceTest.stl";
|
file_name = "OrcaToleranceTest.drc";
|
||||||
else if (file_name == L("3DBenchy"))
|
else if (file_name == L("3DBenchy"))
|
||||||
file_name = "3DBenchy.3mf";
|
file_name = "3DBenchy.drc";
|
||||||
else if (file_name == L("Cali Cat"))
|
else if (file_name == L("Cali Cat"))
|
||||||
file_name = "calicat.stl";
|
file_name = "calicat.drc";
|
||||||
else if (file_name == L("Autodesk FDM Test"))
|
else if (file_name == L("Autodesk FDM Test"))
|
||||||
file_name = "ksr_fdmtest_v4.3mf";
|
file_name = "ksr_fdmtest_v4.drc";
|
||||||
else if (file_name == L("Voron Cube"))
|
else if (file_name == L("Voron Cube"))
|
||||||
file_name = "Voron_Design_Cube_v7.3mf";
|
file_name = "Voron_Design_Cube_v7.drc";
|
||||||
else if (file_name == L("Stanford Bunny"))
|
else if (file_name == L("Stanford Bunny"))
|
||||||
file_name = "Stanford_Bunny.3mf";
|
file_name = "Stanford_Bunny.drc";
|
||||||
else if (file_name == L("Orca String Hell")) {
|
else if (file_name == L("Orca String Hell")) {
|
||||||
file_name = "Orca_stringhell.3mf";
|
file_name = "Orca_stringhell.drc";
|
||||||
is_stringhell = true;
|
is_stringhell = true;
|
||||||
} else
|
} else
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -12170,7 +12170,7 @@ void Plater::calib_pa(const Calib_Params& params)
|
|||||||
printer_config->set_key_value("resonance_avoidance", new ConfigOptionBool{false});
|
printer_config->set_key_value("resonance_avoidance", new ConfigOptionBool{false});
|
||||||
switch (params.mode) {
|
switch (params.mode) {
|
||||||
case CalibMode::Calib_PA_Line:
|
case CalibMode::Calib_PA_Line:
|
||||||
add_model(false, Slic3r::resources_dir() + "/calib/pressure_advance/pressure_advance_test.stl");
|
add_model(false, Slic3r::resources_dir() + "/calib/pressure_advance/pressure_advance_test.drc");
|
||||||
break;
|
break;
|
||||||
case CalibMode::Calib_PA_Pattern:
|
case CalibMode::Calib_PA_Pattern:
|
||||||
_calib_pa_pattern(params);
|
_calib_pa_pattern(params);
|
||||||
@@ -12444,7 +12444,7 @@ void Plater::cut_horizontal(size_t obj_idx, size_t instance_idx, double z, Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
void Plater::_calib_pa_tower(const Calib_Params& params) {
|
void Plater::_calib_pa_tower(const Calib_Params& params) {
|
||||||
add_model(false, Slic3r::resources_dir() + "/calib/pressure_advance/tower_with_seam.stl");
|
add_model(false, Slic3r::resources_dir() + "/calib/pressure_advance/tower_with_seam.drc");
|
||||||
|
|
||||||
auto& print_config = wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
auto& print_config = wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
||||||
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
||||||
@@ -12731,7 +12731,7 @@ void Plater::calib_max_vol_speed(const Calib_Params& params)
|
|||||||
wxGetApp().mainframe->select_tab(size_t(MainFrame::tp3DEditor));
|
wxGetApp().mainframe->select_tab(size_t(MainFrame::tp3DEditor));
|
||||||
if (params.mode != CalibMode::Calib_Vol_speed_Tower)
|
if (params.mode != CalibMode::Calib_Vol_speed_Tower)
|
||||||
return;
|
return;
|
||||||
add_model(false, Slic3r::resources_dir() + "/calib/volumetric_speed/SpeedTestStructure.step");
|
add_model(false, Slic3r::resources_dir() + "/calib/volumetric_speed/SpeedTestStructure.drc");
|
||||||
|
|
||||||
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
||||||
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
||||||
@@ -12806,7 +12806,7 @@ void Plater::calib_retraction(const Calib_Params& params)
|
|||||||
if (params.mode != CalibMode::Calib_Retraction_tower)
|
if (params.mode != CalibMode::Calib_Retraction_tower)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
add_model(false, Slic3r::resources_dir() + "/calib/retraction/retraction_tower.stl");
|
add_model(false, Slic3r::resources_dir() + "/calib/retraction/retraction_tower.drc");
|
||||||
|
|
||||||
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
||||||
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
||||||
@@ -12863,7 +12863,7 @@ void Plater::calib_VFA(const Calib_Params& params)
|
|||||||
if (params.mode != CalibMode::Calib_VFA_Tower)
|
if (params.mode != CalibMode::Calib_VFA_Tower)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
add_model(false, Slic3r::resources_dir() + "/calib/vfa/VFA.stl");
|
add_model(false, Slic3r::resources_dir() + "/calib/vfa/vfa.drc");
|
||||||
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
||||||
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
||||||
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
||||||
@@ -12907,7 +12907,7 @@ void Plater::calib_input_shaping_freq(const Calib_Params& params)
|
|||||||
if (params.mode != CalibMode::Calib_Input_shaping_freq)
|
if (params.mode != CalibMode::Calib_Input_shaping_freq)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
add_model(false, Slic3r::resources_dir() + (params.test_model < 1 ? "/calib/input_shaping/ringing_tower.stl" : "/calib/input_shaping/fast_tower_test.stl"));
|
add_model(false, Slic3r::resources_dir() + (params.test_model < 1 ? "/calib/input_shaping/ringing_tower.drc" : "/calib/input_shaping/fast_tower_test.drc"));
|
||||||
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
||||||
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
||||||
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
||||||
@@ -12967,7 +12967,7 @@ void Plater::calib_input_shaping_damp(const Calib_Params& params)
|
|||||||
if (params.mode != CalibMode::Calib_Input_shaping_damp)
|
if (params.mode != CalibMode::Calib_Input_shaping_damp)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
add_model(false, Slic3r::resources_dir() + (params.test_model < 1 ? "/calib/input_shaping/ringing_tower.stl" : "/calib/input_shaping/fast_tower_test.stl"));
|
add_model(false, Slic3r::resources_dir() + (params.test_model < 1 ? "/calib/input_shaping/ringing_tower.drc" : "/calib/input_shaping/fast_tower_test.drc"));
|
||||||
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
||||||
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
||||||
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
auto printer_config = &wxGetApp().preset_bundle->printers.get_edited_preset().config;
|
||||||
@@ -13028,8 +13028,8 @@ void Plater::Calib_Cornering(const Calib_Params& params)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
const std::string cornering_model_path = params.test_model == 0
|
const std::string cornering_model_path = params.test_model == 0
|
||||||
? "/calib/input_shaping/ringing_tower.stl"
|
? "/calib/input_shaping/ringing_tower.drc"
|
||||||
: (params.test_model == 1 ? "/calib/input_shaping/fast_tower_test.stl" : "/calib/cornering/SCV-V2.stl");
|
: (params.test_model == 1 ? "/calib/input_shaping/fast_tower_test.drc" : "/calib/cornering/SCV-V2.drc");
|
||||||
add_model(false, Slic3r::resources_dir() + cornering_model_path);
|
add_model(false, Slic3r::resources_dir() + cornering_model_path);
|
||||||
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
auto print_config = &wxGetApp().preset_bundle->prints.get_edited_preset().config;
|
||||||
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
auto filament_config = &wxGetApp().preset_bundle->filaments.get_edited_preset().config;
|
||||||
|
|||||||
@@ -1037,7 +1037,7 @@ bool CalibUtils::calib_generic_PA(const CalibInfo &calib_info, wxString &error_m
|
|||||||
Model model;
|
Model model;
|
||||||
std::string input_file;
|
std::string input_file;
|
||||||
if (params.mode == CalibMode::Calib_PA_Line)
|
if (params.mode == CalibMode::Calib_PA_Line)
|
||||||
input_file = Slic3r::resources_dir() + "/calib/pressure_advance/pressure_advance_test.stl";
|
input_file = Slic3r::resources_dir() + "/calib/pressure_advance/pressure_advance_test.drc";
|
||||||
else if (params.mode == CalibMode::Calib_PA_Pattern)
|
else if (params.mode == CalibMode::Calib_PA_Pattern)
|
||||||
input_file = Slic3r::resources_dir() + "/calib/pressure_advance/pa_pattern.3mf";
|
input_file = Slic3r::resources_dir() + "/calib/pressure_advance/pa_pattern.3mf";
|
||||||
|
|
||||||
@@ -1139,7 +1139,7 @@ void CalibUtils::calib_max_vol_speed(const CalibInfo &calib_info, wxString &erro
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
Model model;
|
Model model;
|
||||||
std::string input_file = Slic3r::resources_dir() + "/calib/volumetric_speed/SpeedTestStructure.step";
|
std::string input_file = Slic3r::resources_dir() + "/calib/volumetric_speed/SpeedTestStructure.drc";
|
||||||
read_model_from_file(input_file, model);
|
read_model_from_file(input_file, model);
|
||||||
|
|
||||||
DynamicPrintConfig print_config = calib_info.print_prest->config;
|
DynamicPrintConfig print_config = calib_info.print_prest->config;
|
||||||
@@ -1217,7 +1217,7 @@ void CalibUtils::calib_VFA(const CalibInfo &calib_info, wxString &error_message)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
Model model;
|
Model model;
|
||||||
std::string input_file = Slic3r::resources_dir() + "/calib/vfa/VFA.stl";
|
std::string input_file = Slic3r::resources_dir() + "/calib/vfa/vfa.drc";
|
||||||
read_model_from_file(input_file, model);
|
read_model_from_file(input_file, model);
|
||||||
|
|
||||||
DynamicPrintConfig print_config = calib_info.print_prest->config;
|
DynamicPrintConfig print_config = calib_info.print_prest->config;
|
||||||
@@ -1276,7 +1276,7 @@ void CalibUtils::calib_retraction(const CalibInfo &calib_info, wxString &error_m
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
Model model;
|
Model model;
|
||||||
std::string input_file = Slic3r::resources_dir() + "/calib/retraction/retraction_tower.stl";
|
std::string input_file = Slic3r::resources_dir() + "/calib/retraction/retraction_tower.drc";
|
||||||
read_model_from_file(input_file, model);
|
read_model_from_file(input_file, model);
|
||||||
|
|
||||||
DynamicPrintConfig print_config = calib_info.print_prest->config;
|
DynamicPrintConfig print_config = calib_info.print_prest->config;
|
||||||
|
|||||||
Reference in New Issue
Block a user