AABB trees for SLA gizmos are not calculated when the object is selected, but only after one of the gizmos is opened

This commit is contained in:
Lukas Matena 2020-02-20 14:28:45 +01:00
parent 487ac0423e
commit 4df6a645f2
5 changed files with 38 additions and 20 deletions

View file

@ -63,7 +63,16 @@ bool GLGizmoSlaSupports::on_init()
void GLGizmoSlaSupports::set_sla_support_data(ModelObject* model_object, const Selection& selection)
{
// Update common data for hollowing and sla support gizmos.
if (wxGetApp().preset_bundle->printers.get_edited_preset().printer_technology() == ptSLA)
m_c->update_from_backend(m_parent, model_object);
if (m_c->recent_update) {
if (m_state == On)
m_c->build_AABB_if_needed();
update_clipping_plane();
if (m_state == On) {
m_parent.toggle_model_objects_visibility(false);
m_parent.toggle_model_objects_visibility(/*! m_c->m_cavity_mesh*/ true, m_c->m_model_object, m_c->m_active_instance);
@ -1004,6 +1013,8 @@ void GLGizmoSlaSupports::on_set_state()
m_c->unstash_clipping_plane();
update_clipping_plane(m_c->m_clipping_plane_distance != 0.f);
m_c->build_AABB_if_needed();
// we'll now reload support points:
if (m_c->m_model_object)