mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-25 07:34:03 -06:00
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:
parent
409004d471
commit
8ccf0edbc2
35 changed files with 1506 additions and 3 deletions
|
@ -596,7 +596,7 @@ void ParamsPanel::set_active_tab(wxPanel* tab)
|
|||
}
|
||||
m_left_sizer->Layout();
|
||||
if (auto dialog = dynamic_cast<wxDialog*>(GetParent())) {
|
||||
wxString title = cur_tab->type() == Preset::TYPE_FILAMENT ? _L("Filament settings") : _L("Printer settings");
|
||||
wxString title = cur_tab->type() == Preset::TYPE_FILAMENT ? _L("Material settings") : _L("Printer settings");
|
||||
dialog->SetTitle(title);
|
||||
}
|
||||
|
||||
|
|
|
@ -1216,6 +1216,17 @@ void Sidebar::update_all_preset_comboboxes()
|
|||
|
||||
}
|
||||
|
||||
if (cfg.opt_bool("pellet_modded_printer")) {
|
||||
p->m_staticText_filament_settings->SetLabel(_L("Pellets"));
|
||||
p->m_filament_icon->SetBitmap_("pellets");
|
||||
} else {
|
||||
p->m_staticText_filament_settings->SetLabel(_L("Filament"));
|
||||
p->m_filament_icon->SetBitmap_("filament");
|
||||
}
|
||||
|
||||
//p->m_staticText_filament_settings->Update();
|
||||
|
||||
|
||||
if (is_bbl_vendor || cfg.opt_bool("support_multi_bed_types")) {
|
||||
m_bed_type_list->Enable();
|
||||
auto str_bed_type = wxGetApp().app_config->get_printer_setting(wxGetApp().preset_bundle->printers.get_selected_preset_name(),
|
||||
|
|
|
@ -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");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue