mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-05-17 02:22:17 +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:
BIN
resources/calib/cornering/SCV-V2.drc
Normal file
BIN
resources/calib/cornering/SCV-V2.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/calib/input_shaping/fast_tower_test.drc
Normal file
BIN
resources/calib/input_shaping/fast_tower_test.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/calib/input_shaping/ringing_tower.drc
Normal file
BIN
resources/calib/input_shaping/ringing_tower.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/calib/pressure_advance/pressure_advance_test.drc
Normal file
BIN
resources/calib/pressure_advance/pressure_advance_test.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/calib/pressure_advance/tower_with_seam.drc
Normal file
BIN
resources/calib/pressure_advance/tower_with_seam.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/calib/retraction/retraction_tower.drc
Normal file
BIN
resources/calib/retraction/retraction_tower.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/calib/vfa/VFA.drc
Normal file
BIN
resources/calib/vfa/VFA.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/calib/volumetric_speed/SpeedTestStructure.drc
Normal file
BIN
resources/calib/volumetric_speed/SpeedTestStructure.drc
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
resources/handy_models/3DBenchy.drc
Normal file
BIN
resources/handy_models/3DBenchy.drc
Normal file
Binary file not shown.
BIN
resources/handy_models/OrcaToleranceTest.drc
Normal file
BIN
resources/handy_models/OrcaToleranceTest.drc
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
resources/handy_models/Orca_stringhell.drc
Normal file
BIN
resources/handy_models/Orca_stringhell.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/handy_models/Stanford_Bunny.drc
Normal file
BIN
resources/handy_models/Stanford_Bunny.drc
Normal file
Binary file not shown.
Binary file not shown.
BIN
resources/handy_models/Voron_Design_Cube_v7.drc
Normal file
BIN
resources/handy_models/Voron_Design_Cube_v7.drc
Normal file
Binary file not shown.
BIN
resources/handy_models/calicat.drc
Normal file
BIN
resources/handy_models/calicat.drc
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
resources/handy_models/ksr_fdmtest_v4.drc
Normal file
BIN
resources/handy_models/ksr_fdmtest_v4.drc
Normal file
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