FIX: show k value when select default pa profile
jira: STUDIO-8540 Change-Id: I487e740ee7c37e5d8d4c0d9b26984d034ed70347
This commit is contained in:
parent
a0f63b9a3a
commit
21fa492d8a
|
@ -13,31 +13,6 @@ namespace Slic3r { namespace GUI {
|
|||
|
||||
wxDEFINE_EVENT(EVT_SELECTED_COLOR, wxCommandEvent);
|
||||
|
||||
static void get_default_k_n_value(const std::string &filament_id, float &k, float &n)
|
||||
{
|
||||
if (filament_id.compare("GFG00") == 0) {
|
||||
// PETG
|
||||
k = 0.04;
|
||||
n = 1.0;
|
||||
} else if (filament_id.compare("GFB00") == 0 || filament_id.compare("GFB50") == 0) {
|
||||
// ABS
|
||||
k = 0.04;
|
||||
n = 1.0;
|
||||
} else if (filament_id.compare("GFU01") == 0) {
|
||||
// TPU
|
||||
k = 0.2;
|
||||
n = 1.0;
|
||||
} else if (filament_id.compare("GFB01") == 0) {
|
||||
// ASA
|
||||
k = 0.04;
|
||||
n = 1.0;
|
||||
} else {
|
||||
// PLA , other
|
||||
k = 0.02;
|
||||
n = 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
static std::string float_to_string_with_precision(float value, int precision = 3)
|
||||
{
|
||||
std::stringstream stream;
|
||||
|
|
|
@ -54,6 +54,8 @@ bool AMSinfo::parse_ams_info(MachineObject *obj, Ams *ams, bool remain_flag, boo
|
|||
info.can_id = it->second->id;
|
||||
info.ctype = it->second->ctype;
|
||||
info.material_name = it->second->get_display_filament_type();
|
||||
info.cali_idx = it->second->cali_idx;
|
||||
info.filament_id = it->second->filament_setting_id;
|
||||
if (!it->second->color.empty()) {
|
||||
info.material_colour = AmsTray::decode_color(it->second->color);
|
||||
} else {
|
||||
|
@ -82,6 +84,8 @@ bool AMSinfo::parse_ams_info(MachineObject *obj, Ams *ams, bool remain_flag, boo
|
|||
} else {
|
||||
info.can_id = it->second->id;
|
||||
info.material_name = "";
|
||||
info.cali_idx = -1;
|
||||
info.filament_id = "";
|
||||
info.ctype = 0;
|
||||
info.material_colour = AMS_TRAY_DEFAULT_COL;
|
||||
info.material_state = AMSCanType::AMS_CAN_TYPE_THIRDBRAND;
|
||||
|
@ -853,9 +857,12 @@ void AMSLib::render_extra_text(wxDC& dc)
|
|||
void AMSLib::render_generic_text(wxDC &dc)
|
||||
{
|
||||
bool show_k_value = true;
|
||||
if (m_obj && (m_obj->cali_version >= 0) && (abs(m_info.k - 0) < 1e-3)) {
|
||||
if (m_info.material_name.empty()) {
|
||||
show_k_value = false;
|
||||
}
|
||||
else if (m_info.cali_idx == -1) {
|
||||
get_default_k_n_value(m_info.filament_id, m_info.k, m_info.n);
|
||||
}
|
||||
|
||||
auto tmp_lib_colour = m_info.material_colour;
|
||||
change_the_opacity(tmp_lib_colour);
|
||||
|
@ -3366,8 +3373,12 @@ void AMSControl::update_vams_kn_value(AmsTray tray, MachineObject* obj)
|
|||
|
||||
m_vams_info.material_name = tray.get_display_filament_type();
|
||||
m_vams_info.material_colour = tray.get_color();
|
||||
m_vams_info.cali_idx = tray.cali_idx;
|
||||
m_vams_info.filament_id = tray.filament_setting_id;
|
||||
m_vams_lib->m_info.material_name = tray.get_display_filament_type();
|
||||
m_vams_lib->m_info.material_colour = tray.get_color();
|
||||
m_vams_lib->m_info.cali_idx = tray.cali_idx;
|
||||
m_vams_lib->m_info.filament_id = tray.filament_setting_id;
|
||||
|
||||
if (last_k_value != m_vams_info.k || last_n_value != m_vams_info.n) {
|
||||
m_vams_lib->Refresh();
|
||||
|
@ -3380,8 +3391,12 @@ void AMSControl::reset_vams()
|
|||
m_vams_lib->m_info.n = 0;
|
||||
m_vams_lib->m_info.material_name = wxEmptyString;
|
||||
m_vams_lib->m_info.material_colour = AMS_CONTROL_WHITE_COLOUR;
|
||||
m_vams_lib->m_info.cali_idx = -1;
|
||||
m_vams_lib->m_info.filament_id = "";
|
||||
m_vams_info.material_name = wxEmptyString;
|
||||
m_vams_info.material_colour = AMS_CONTROL_WHITE_COLOUR;
|
||||
m_vams_info.cali_idx = -1;
|
||||
m_vams_info.filament_id = "";
|
||||
m_vams_lib->Refresh();
|
||||
}
|
||||
|
||||
|
|
|
@ -142,20 +142,24 @@ struct Caninfo
|
|||
AMSCanType material_state;
|
||||
int ctype=0;
|
||||
int material_remain = 100;
|
||||
int cali_idx = -1;
|
||||
std::string filament_id;
|
||||
float k = 0.0f;
|
||||
float n = 0.0f;
|
||||
std::vector<wxColour> material_cols;
|
||||
|
||||
bool operator==(const Caninfo &other) const
|
||||
{
|
||||
return can_id == other.can_id &&
|
||||
material_name == other.material_name &&
|
||||
material_colour == other.material_colour &&
|
||||
return can_id == other.can_id &&
|
||||
material_name == other.material_name &&
|
||||
material_colour == other.material_colour &&
|
||||
material_state == other.material_state &&
|
||||
ctype == other.ctype &&
|
||||
material_remain == other.material_remain &&
|
||||
k == other.k &&
|
||||
n == other.n &&
|
||||
ctype == other.ctype &&
|
||||
material_remain == other.material_remain &&
|
||||
cali_idx == other.cali_idx &&
|
||||
filament_id == other.filament_id &&
|
||||
k == other.k &&
|
||||
n == other.n &&
|
||||
material_cols == other.material_cols;
|
||||
}
|
||||
};
|
||||
|
|
|
@ -30,6 +30,30 @@ static std::string MachineBedTypeString[6] = {
|
|||
"pte"
|
||||
};
|
||||
|
||||
void get_default_k_n_value(const std::string &filament_id, float &k, float &n)
|
||||
{
|
||||
if (filament_id.compare("GFG00") == 0) {
|
||||
// PETG
|
||||
k = 0.04;
|
||||
n = 1.0;
|
||||
} else if (filament_id.compare("GFB00") == 0 || filament_id.compare("GFB50") == 0) {
|
||||
// ABS
|
||||
k = 0.04;
|
||||
n = 1.0;
|
||||
} else if (filament_id.compare("GFU01") == 0) {
|
||||
// TPU
|
||||
k = 0.2;
|
||||
n = 1.0;
|
||||
} else if (filament_id.compare("GFB01") == 0) {
|
||||
// ASA
|
||||
k = 0.04;
|
||||
n = 1.0;
|
||||
} else {
|
||||
// PLA , other
|
||||
k = 0.02;
|
||||
n = 1.0;
|
||||
}
|
||||
}
|
||||
|
||||
std::string get_calib_mode_name(CalibMode cali_mode, int stage)
|
||||
{
|
||||
|
|
|
@ -74,5 +74,7 @@ private:
|
|||
static void send_to_print(const CalibInfo &calib_info, wxString& error_message, int flow_ratio_mode = 0); // 0: none 1: coarse 2: fine
|
||||
};
|
||||
|
||||
extern void get_default_k_n_value(const std::string &filament_id, float &k, float &n);
|
||||
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue