FIX:fixed failure in updating nozzle type
jira:[STUDIO-5248] Change-Id: Iad37b5d5b76d37cb1723ef21d7c39b1e3fcaf8d7
This commit is contained in:
parent
3858dfe3d1
commit
661e12eb1f
|
@ -2291,7 +2291,7 @@ bool SelectMachineDialog::is_same_nozzle_diameters(std::string& nozzle_type, std
|
||||||
return is_same_nozzle_diameters;
|
return is_same_nozzle_diameters;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool SelectMachineDialog::is_same_nozzle_type(std::string& filament_type)
|
bool SelectMachineDialog::is_same_nozzle_type(std::string& filament_type, std::string& tag_nozzle_type)
|
||||||
{
|
{
|
||||||
bool is_same_nozzle_type = true;
|
bool is_same_nozzle_type = true;
|
||||||
|
|
||||||
|
@ -2324,6 +2324,10 @@ bool SelectMachineDialog::is_same_nozzle_type(std::string& filament_type)
|
||||||
filament_type = m->m_material_name.ToStdString();
|
filament_type = m->m_material_name.ToStdString();
|
||||||
BOOST_LOG_TRIVIAL(info) << "filaments hardness mismatch: filament = " << filament_type << " printer_nozzle_hrc = " << printer_nozzle_hrc;
|
BOOST_LOG_TRIVIAL(info) << "filaments hardness mismatch: filament = " << filament_type << " printer_nozzle_hrc = " << printer_nozzle_hrc;
|
||||||
is_same_nozzle_type = false;
|
is_same_nozzle_type = false;
|
||||||
|
tag_nozzle_type = "hardened_steel";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
tag_nozzle_type = obj_->nozzle_type;
|
||||||
}
|
}
|
||||||
|
|
||||||
iter++;
|
iter++;
|
||||||
|
@ -2502,6 +2506,7 @@ void SelectMachineDialog::on_ok_btn(wxCommandEvent &event)
|
||||||
std::string nozzle_type;
|
std::string nozzle_type;
|
||||||
std::string nozzle_diameter;
|
std::string nozzle_diameter;
|
||||||
std::string filament_type;
|
std::string filament_type;
|
||||||
|
std::string tag_nozzle_type;
|
||||||
|
|
||||||
if (!obj_->nozzle_type.empty() && (m_print_type == PrintFromType::FROM_NORMAL)) {
|
if (!obj_->nozzle_type.empty() && (m_print_type == PrintFromType::FROM_NORMAL)) {
|
||||||
if (!is_same_nozzle_diameters(nozzle_type, nozzle_diameter)) {
|
if (!is_same_nozzle_diameters(nozzle_type, nozzle_diameter)) {
|
||||||
|
@ -2516,7 +2521,7 @@ void SelectMachineDialog::on_ok_btn(wxCommandEvent &event)
|
||||||
+ "\n " + nozzle_in_printer
|
+ "\n " + nozzle_in_printer
|
||||||
+ "\n");
|
+ "\n");
|
||||||
}
|
}
|
||||||
else if (!is_same_nozzle_type(filament_type)){
|
else if (!is_same_nozzle_type(filament_type, tag_nozzle_type)){
|
||||||
has_slice_warnings = true;
|
has_slice_warnings = true;
|
||||||
has_update_nozzle = true;
|
has_update_nozzle = true;
|
||||||
nozzle_diameter = wxString::Format("%.1f", obj_->nozzle_diameter).ToStdString();
|
nozzle_diameter = wxString::Format("%.1f", obj_->nozzle_diameter).ToStdString();
|
||||||
|
@ -2543,13 +2548,13 @@ void SelectMachineDialog::on_ok_btn(wxCommandEvent &event)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
confirm_dlg.Bind(EVT_UPDATE_NOZZLE, [this, obj_, nozzle_type, nozzle_diameter, &confirm_dlg](wxCommandEvent& e) {
|
confirm_dlg.Bind(EVT_UPDATE_NOZZLE, [this, obj_, tag_nozzle_type, nozzle_diameter, &confirm_dlg](wxCommandEvent& e) {
|
||||||
if (obj_ && !nozzle_type.empty() && !nozzle_diameter.empty()) {
|
if (obj_ && !tag_nozzle_type.empty() && !nozzle_diameter.empty()) {
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
float diameter = std::stof(nozzle_diameter);
|
float diameter = std::stof(nozzle_diameter);
|
||||||
diameter = round(diameter * 10) / 10;
|
diameter = round(diameter * 10) / 10;
|
||||||
obj_->command_set_printer_nozzle(nozzle_type, diameter);
|
obj_->command_set_printer_nozzle(tag_nozzle_type, diameter);
|
||||||
}
|
}
|
||||||
catch (...) {}
|
catch (...) {}
|
||||||
}
|
}
|
||||||
|
|
|
@ -452,7 +452,7 @@ public:
|
||||||
bool is_same_printer_model();
|
bool is_same_printer_model();
|
||||||
bool is_blocking_printing();
|
bool is_blocking_printing();
|
||||||
bool is_same_nozzle_diameters(std::string& nozzle_type, std::string& nozzle_diameter);
|
bool is_same_nozzle_diameters(std::string& nozzle_type, std::string& nozzle_diameter);
|
||||||
bool is_same_nozzle_type(std::string& filament_type);
|
bool is_same_nozzle_type(std::string& filament_type, std::string& tag_nozzle_type);
|
||||||
bool has_tips(MachineObject* obj);
|
bool has_tips(MachineObject* obj);
|
||||||
bool is_timeout();
|
bool is_timeout();
|
||||||
int update_print_required_data(Slic3r::DynamicPrintConfig config, Slic3r::Model model, Slic3r::PlateDataPtrs plate_data_list, std::string file_name, std::string file_path);
|
int update_print_required_data(Slic3r::DynamicPrintConfig config, Slic3r::Model model, Slic3r::PlateDataPtrs plate_data_list, std::string file_name, std::string file_path);
|
||||||
|
|
Loading…
Reference in New Issue