From 4230ca837253473fcc0ac5413757257897ab94e2 Mon Sep 17 00:00:00 2001 From: "zhou.xu" Date: Thu, 7 Mar 2024 19:17:58 +0800 Subject: [PATCH] FIX:fix "Shift+pick point" bug Jira: STUDIO-6433 Change-Id: Ib333e9c4d27e65968cfc5fc0136c18b1e18254bf --- src/libslic3r/Measure.cpp | 3 +++ src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp | 6 +----- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/libslic3r/Measure.cpp b/src/libslic3r/Measure.cpp index f1305f8a1..804a0e7d9 100644 --- a/src/libslic3r/Measure.cpp +++ b/src/libslic3r/Measure.cpp @@ -1220,6 +1220,9 @@ MeasurementResult get_measurement(const SurfaceFeature& a, const SurfaceFeature& result.distance_infinite = std::make_optional(DistAndPoints{ it->dist, it->from, it->to }); } } + else { + result.distance_strict = std::make_optional(DistAndPoints{0, center, origin2}); + } } /////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// diff --git a/src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp b/src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp index 1f689b10f..8ff30dbfc 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp @@ -649,9 +649,7 @@ void GLGizmoMeasure::on_render() Vec3f hit = Vec3f::Zero(); double closest_hit_squared_distance = std::numeric_limits::max(); for (auto item : m_gripper_id_raycast_map) { - if (!item.second->is_active()) { - continue; - } + auto world_tran = item.second->world_tran; Vec3f normal_on_gripper; if (item.second->mesh_raycaster->closest_hit(mouse_position, item.second->world_tran.get_matrix(), camera, hit, normal_on_gripper)) { @@ -2234,8 +2232,6 @@ void GLGizmoMeasure::reset_gripper_pick(GripperType id, bool is_all) reset_gripper_pick(GripperType::CIRCLE); reset_gripper_pick(GripperType::CIRCLE_1); reset_gripper_pick(GripperType::CIRCLE_2); - reset_gripper_pick(GripperType::SPHERE_1); - reset_gripper_pick(GripperType::SPHERE_1); } }