Adding pellet printer suppor to OrcaSlicer (#4836)

* creating settings for printer and some UI changes work

* related filament diameter and pellet flow changes to each other

* UI name change to turn Filament to Material

* updated the flow coefficient to filament diameter formula

* updated the preset for the configuration wizard

* configuration changes for the final release

* config changes and preset bundle sync removed

* start gcode change for ginger machines

* added explanation of relationship between pellet_flow_coefficient and filament_diameter

* Added tooltip. Fixed Ginger machine configuration, Added docs
This commit is contained in:
analysis230 2024-06-29 20:15:06 +05:30 committed by GitHub
parent 409004d471
commit 8ccf0edbc2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
35 changed files with 1506 additions and 3 deletions

View file

@ -1418,6 +1418,19 @@ void Tab::on_value_change(const std::string& opt_key, const boost::any& value)
}
}
if (opt_key == "pellet_flow_coefficient")
{
double double_value = Preset::convert_pellet_flow_to_filament_diameter(boost::any_cast<double>(value));
m_config->set_key_value("filament_diameter", new ConfigOptionFloats{double_value});
}
if (opt_key == "filament_diameter") {
double double_value = Preset::convert_filament_diameter_to_pellet_flow(boost::any_cast<double>(value));
m_config->set_key_value("pellet_flow_coefficient", new ConfigOptionFloats{double_value});
}
if (opt_key == "single_extruder_multi_material" || opt_key == "extruders_count" )
update_wiping_button_visibility();
@ -3204,6 +3217,7 @@ void TabFilament::build()
optgroup->append_single_option_line("required_nozzle_HRC");
optgroup->append_single_option_line("default_filament_colour");
optgroup->append_single_option_line("filament_diameter");
optgroup->append_single_option_line("pellet_flow_coefficient");
optgroup->append_single_option_line("filament_flow_ratio");
optgroup->append_single_option_line("enable_pressure_advance");
@ -3519,6 +3533,10 @@ void TabFilament::toggle_options()
toggle_line("eng_plate_temp_initial_layer", support_multi_bed_types);
toggle_line("textured_plate_temp_initial_layer", support_multi_bed_types);
bool is_pellet_printer = cfg.opt_bool("pellet_modded_printer");
toggle_line("pellet_flow_coefficient", is_pellet_printer);
toggle_line("filament_diameter", !is_pellet_printer);
}
if (m_active_page->title() == L("Setting Overrides"))
update_filament_overrides_page();
@ -3630,6 +3648,7 @@ void TabPrinter::build_fff()
optgroup->append_single_option_line(option);
// optgroup->append_single_option_line("printable_area");
optgroup->append_single_option_line("printable_height");
optgroup->append_single_option_line("pellet_modded_printer");
optgroup->append_single_option_line("support_multi_bed_types","bed-types");
optgroup->append_single_option_line("nozzle_volume");
optgroup->append_single_option_line("best_object_pos");