ENH: refine the color painting logics

1. optimize color painting performance
2. fix the issue that painting does not show if moving fast after bucket
   fill

Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I72204aac81b14c87edb602677abeef13ee0fad8f
(cherry picked from commit 02560f31c413cb561800fca242f8ef30504d0384)
This commit is contained in:
yifan.wu 2022-08-02 20:27:45 +08:00 committed by Lane.Wei
parent 988910f986
commit 9df3e7500a
6 changed files with 30 additions and 10 deletions

View file

@ -175,6 +175,10 @@ void GLGizmoFdmSupports::on_set_state()
if (get_state() == On) {
m_support_threshold_angle = -1;
}
else if (get_state() == Off) {
ModelObject* mo = m_c->selection_info()->model_object();
if (mo) Slic3r::save_object_mesh(*mo);
}
}
static std::string into_u8(const wxString& str)
@ -552,8 +556,6 @@ void GLGizmoFdmSupports::update_model_object()
const ModelObjectPtrs& mos = wxGetApp().model().objects;
wxGetApp().obj_list()->update_info_items(std::find(mos.begin(), mos.end(), mo) - mos.begin());
// BBS: backup
Slic3r::save_object_mesh(*mo);
m_parent.post_event(SimpleEvent(EVT_GLCANVAS_SCHEDULE_BACKGROUND_PROCESS));
}