mirror of
https://github.com/QIDITECH/QIDIStudio.git
synced 2026-01-30 16:38:41 +03:00
fix some bug
This commit is contained in:
@@ -250,7 +250,7 @@ if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMP
|
|||||||
# On GCC and Clang, no return from a non-void function is a warning only. Here, we make it an error.
|
# On GCC and Clang, no return from a non-void function is a warning only. Here, we make it an error.
|
||||||
add_compile_options(-Werror=return-type)
|
add_compile_options(-Werror=return-type)
|
||||||
|
|
||||||
add_compile_options(-Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unused-label -Wno-unused-local-typedefs)
|
# add_compile_options(-Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unused-label -Wno-unused-local-typedefs)
|
||||||
|
|
||||||
# removes LOTS of extraneous Eigen warnings (GCC only supports it since 6.1)
|
# removes LOTS of extraneous Eigen warnings (GCC only supports it since 6.1)
|
||||||
# https://eigen.tuxfamily.org/bz/show_bug.cgi?id=1221
|
# https://eigen.tuxfamily.org/bz/show_bug.cgi?id=1221
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"default_print_profile": "0.20mm Standard @XPlus4",
|
"default_print_profile": "0.20mm Standard @XPlus4",
|
||||||
"printer_settings_id": "Qidi",
|
"printer_settings_id": "Qidi",
|
||||||
"bed_exclude_area": ["0x305", "0x302", "35x302", "35x305", "305x305", "305x305", "305x305", "305x20", "293x20", "293x0", "305x0", "305x20", "305x305"],
|
"bed_exclude_area": ["0x305", "0x302", "35x302", "35x305", "305x305", "305x305", "305x305", "305x20", "293x20", "293x0", "305x0", "305x20", "305x305"],
|
||||||
"change_filament_gcode": "{if max_layer_z < 12}\nG1 Z15 F1200\n{else}\nG1 Z{max_layer_z + 3.0} F1200\n{endif}\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nDISABLE_ALL_SENSOR\n{if long_retractions_when_cut[previous_extruder]}\nMOVE_TO_TRASH\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\nM400\n{else}\nG1 E-5 F{old_filament_e_feedrate}\n{endif}\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM400\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\nM106 S0\nM106 P2 S0\nUNLOAD_T[current_extruder]\nG92 E0\nM83\nG1 E2 F50\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[current_extruder]} WAIT=1\n{else}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[next_extruder]} WAIT=1\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\nM400\nM106 S60\n; FLUSH_START\nG1 E1 F50\nG1 E{65.5 * 0.58} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{if flush_length_1 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_1 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_2 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_3 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_4 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM104 S[new_filament_temp]\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nM109 S[new_filament_temp]\nG92 E0\nM400\nCLEAR_FLUSH\nCLEAR_OOZE\nM400\nM106 S0\nTOOL_CHANGE_END\nG1 Y305 F9000\nENABLE_ALL_SENSOR",
|
"change_filament_gcode": "{if max_layer_z < 12}\nG1 Z15 F1200\n{else}\nG1 Z{max_layer_z + 3.0} F1200\n{endif}\nTOOL_CHANGE_START F=[current_extruder] T=[next_extruder]\nDISABLE_ALL_SENSOR\n{if long_retractions_when_cut[previous_extruder]}\nMOVE_TO_TRASH\nG1 E-{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\nM400\n{else}\nG1 E-5 F{old_filament_e_feedrate}\n{endif}\nCUT_FILAMENT T=[current_extruder]\nMOVE_TO_TRASH\nM400\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nM104 S{nozzle_temperature_range_high[current_extruder]}\n{else}\nM104 S{nozzle_temperature_range_high[next_extruder]}\n{endif}\nM106 S0\nM106 P2 S0\nUNLOAD_T[current_extruder]\nG92 E0\nM83\nG1 E2 F50\nT[next_extruder]\n{if nozzle_temperature_range_high[current_extruder] >= nozzle_temperature_range_high[next_extruder]}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[current_extruder]} WAIT=1\n{else}\nSET_HEATER_TEMPERATURE HEATER=extruder TARGET={nozzle_temperature_range_high[next_extruder]} WAIT=1\n{endif}\n{if long_retractions_when_cut[previous_extruder]}\nG1 E{retraction_distances_when_cut[previous_extruder]} F{old_filament_e_feedrate}\n{endif}\nM400\nM106 S60\n; FLUSH_START\nG1 E1 F50\nG1 E{65.5 * 0.58} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E{65.5 * 0.18} F{old_filament_e_feedrate}\nG1 E{65.5 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{if flush_length_1 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_1 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E{flush_length_1 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_1 * 0.02} F50\nG1 E-[old_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_2 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[old_retract_length_toolchange] F300\nG1 E{flush_length_2 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_2 * 0.02} F50\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_3 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_3 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_3 * 0.02} F50\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\n{if flush_length_4 > 1}\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nCLEAR_FLUSH\nM400\nM106 S60\n; FLUSH_START\nG1 E[new_retract_length_toolchange] F300\nG1 E{flush_length_4 * 0.58} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}\nG1 E{flush_length_4 * 0.02} F50\nG1 E-[new_retract_length_toolchange] F1800\n; FLUSH_END\n{endif}\nM104 S[new_filament_temp]\nM400\nM106 S255\nG91\nG1 X-5 F60\nG1 X5 F60\nG90\nM109 S[new_filament_temp]\nG92 E0\nM400\nCLEAR_FLUSH\nCLEAR_OOZE\nM400\nM106 S0\nTOOL_CHANGE_END\nG1 Y305 F9000\nENABLE_ALL_SENSOR",
|
||||||
"default_filament_profile": ["QIDI PLA Rapido @Qidi X-Plus 4 0.4 nozzle"],
|
"default_filament_profile": ["QIDI PLA Rapido @Qidi X-Plus 4 0.4 nozzle"],
|
||||||
"enable_long_retraction_when_cut": "2",
|
"enable_long_retraction_when_cut": "2",
|
||||||
"extruder_clearance_height_to_lid": "135",
|
"extruder_clearance_height_to_lid": "135",
|
||||||
|
|||||||
@@ -3064,13 +3064,18 @@ void SelectMachineDialog::on_set_finish_mapping(wxCommandEvent &evt)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//y69
|
||||||
|
FilamentInfo old_info;
|
||||||
|
FilamentInfo new_info;
|
||||||
for (auto i = 0; i < m_ams_mapping_result.size(); i++) {
|
for (auto i = 0; i < m_ams_mapping_result.size(); i++) {
|
||||||
if (m_ams_mapping_result[i].id == wxAtoi(selection_data_arr[5])) {
|
if (m_ams_mapping_result[i].id == wxAtoi(selection_data_arr[5])) {
|
||||||
|
|
||||||
|
old_info = m_ams_mapping_result[i];
|
||||||
|
|
||||||
m_ams_mapping_result[i].tray_id = evt.GetInt();
|
m_ams_mapping_result[i].tray_id = evt.GetInt();
|
||||||
auto ams_colour = wxColour(wxAtoi(selection_data_arr[0]), wxAtoi(selection_data_arr[1]), wxAtoi(selection_data_arr[2]), wxAtoi(selection_data_arr[3]));
|
auto ams_colour = wxColour(wxAtoi(selection_data_arr[0]), wxAtoi(selection_data_arr[1]), wxAtoi(selection_data_arr[2]), wxAtoi(selection_data_arr[3]));
|
||||||
wxString color = wxString::Format("#%02X%02X%02X%02X", ams_colour.Red(), ams_colour.Green(), ams_colour.Blue(), ams_colour.Alpha());
|
wxString color = wxString::Format("#%02X%02X%02X%02X", ams_colour.Red(), ams_colour.Green(), ams_colour.Blue(), ams_colour.Alpha());
|
||||||
m_ams_mapping_result[i].color = color.ToStdString();
|
m_ams_mapping_result[i].color = color.ToStdString().erase(0, 1);
|
||||||
m_ams_mapping_result[i].ctype = ctype;
|
m_ams_mapping_result[i].ctype = ctype;
|
||||||
m_ams_mapping_result[i].colors = tray_cols;
|
m_ams_mapping_result[i].colors = tray_cols;
|
||||||
|
|
||||||
@@ -3080,19 +3085,52 @@ void SelectMachineDialog::on_set_finish_mapping(wxCommandEvent &evt)
|
|||||||
if (m_ams_mapping_result[i].ams_id == std::to_string(VIRTUAL_TRAY_MAIN_ID) || m_ams_mapping_result[i].ams_id == std::to_string(VIRTUAL_TRAY_DEPUTY_ID)) {
|
if (m_ams_mapping_result[i].ams_id == std::to_string(VIRTUAL_TRAY_MAIN_ID) || m_ams_mapping_result[i].ams_id == std::to_string(VIRTUAL_TRAY_DEPUTY_ID)) {
|
||||||
}else if (m_ams_mapping_result[i].ams_id >= std::to_string(0)) {
|
}else if (m_ams_mapping_result[i].ams_id >= std::to_string(0)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
new_info = m_ams_mapping_result[i];
|
||||||
}
|
}
|
||||||
BOOST_LOG_TRIVIAL(trace) << "The box mapping result: id is " << m_ams_mapping_result[i].id << "tray_id is " << m_ams_mapping_result[i].tray_id;
|
BOOST_LOG_TRIVIAL(trace) << "The box mapping result: id is " << m_ams_mapping_result[i].id << "tray_id is " << m_ams_mapping_result[i].tray_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
MaterialHash::iterator iter = m_materialList.begin();
|
for (auto i = 0; i < m_ams_mapping_result.size(); i++) {
|
||||||
while (iter != m_materialList.end()) {
|
if (m_ams_mapping_result[i].slot_id == new_info.slot_id && new_info.id != m_ams_mapping_result[i].id) {
|
||||||
Material* item = iter->second;
|
int id = m_ams_mapping_result[i].id;
|
||||||
MaterialItem *m = item->item;
|
m_ams_mapping_result[i] = old_info;
|
||||||
if (item->id == m_current_filament_id) {
|
m_ams_mapping_result[i].id = id;
|
||||||
auto ams_colour = wxColour(wxAtoi(selection_data_arr[0]), wxAtoi(selection_data_arr[1]), wxAtoi(selection_data_arr[2]), wxAtoi(selection_data_arr[3]));
|
auto color_change = AmsTray::decode_color(m_ams_mapping_result[i].color);
|
||||||
m->set_ams_info(ams_colour, selection_data_arr[4], ctype, material_cols);
|
if (m_print_type == PrintFromType::FROM_NORMAL) {//todo:support sd card
|
||||||
|
change_default_normal(id, color_change);
|
||||||
|
final_deal_edge_pixels_data(m_preview_thumbnail_data);
|
||||||
|
set_default_normal(m_preview_thumbnail_data); // do't reset ams
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
for (auto f = m_ams_mapping_result.begin(); f != m_ams_mapping_result.end(); f++) {
|
||||||
|
MaterialHash::iterator iter = m_materialList.begin();
|
||||||
|
while (iter != m_materialList.end()) {
|
||||||
|
int id = iter->second->id;
|
||||||
|
Material* item = iter->second;
|
||||||
|
MaterialItem* m = item->item;
|
||||||
|
//if (item->id == m_current_filament_id) {
|
||||||
|
// auto ams_colour = wxColour(wxAtoi(selection_data_arr[0]), wxAtoi(selection_data_arr[1]), wxAtoi(selection_data_arr[2]), wxAtoi(selection_data_arr[3]));
|
||||||
|
// m->set_ams_info(ams_colour, selection_data_arr[4], ctype, material_cols);
|
||||||
|
//}
|
||||||
|
if (f->id == id) {
|
||||||
|
wxString ams_id;
|
||||||
|
wxColour ams_col;
|
||||||
|
ams_id = wxGetApp().transition_tridid(std::stoi(f->slot_id));
|
||||||
|
ams_col = AmsTray::decode_color(f->color);
|
||||||
|
std::vector<wxColour> cols;
|
||||||
|
for (auto col : f->colors) {
|
||||||
|
cols.push_back(AmsTray::decode_color(col));
|
||||||
|
}
|
||||||
|
m->set_ams_info(ams_col, ams_id, f->ctype, cols);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
iter++;
|
||||||
}
|
}
|
||||||
iter++;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3563,10 +3601,10 @@ void SelectMachineDialog::on_selection_changed(wxCommandEvent &event)
|
|||||||
has_box_machine = true;
|
has_box_machine = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//y68
|
//y68 y69
|
||||||
PresetBundle& preset_bundle = *wxGetApp().preset_bundle;
|
PresetBundle& preset_bundle = *wxGetApp().preset_bundle;
|
||||||
std::string machine_preset = preset_bundle.printers.get_edited_preset().get_printer_type(&preset_bundle);
|
std::string machine_preset = preset_bundle.printers.get_edited_preset().get_printer_type(&preset_bundle);
|
||||||
if(!machine_preset.empty() && machine_preset != select_machine_type)
|
if(!machine_preset.empty() && machine_preset != select_machine_type && !selection_name.empty())
|
||||||
{
|
{
|
||||||
show_status(PrintDialogStatus::PrintStatusUnsupportedPrinter);
|
show_status(PrintDialogStatus::PrintStatusUnsupportedPrinter);
|
||||||
has_box_machine = false;
|
has_box_machine = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user