From 0d5de5fdf2e9c64613b774a0b60ec5eba3d5a0b8 Mon Sep 17 00:00:00 2001 From: enricoturri1966 Date: Tue, 19 Jul 2022 10:03:46 +0200 Subject: [PATCH] Tech ENABLE_WORLD_COORDINATE - Removed unneeded parameter from GLGizmoRotate::mouse_position_in_local_plane() declaration --- src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp | 9 ++++++++- src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp | 4 ++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp b/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp index e877fa9f3d..1dce052b14 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp @@ -117,7 +117,11 @@ void GLGizmoRotate::on_start_dragging() void GLGizmoRotate::on_dragging(const UpdateData &data) { +#if ENABLE_WORLD_COORDINATE + const Vec2d mouse_pos = to_2d(mouse_position_in_local_plane(data.mouse_ray)); +#else const Vec2d mouse_pos = to_2d(mouse_position_in_local_plane(data.mouse_ray, m_parent.get_selection())); +#endif // ENABLE_WORLD_COORDINATE const Vec2d orig_dir = Vec2d::UnitX(); const Vec2d new_dir = mouse_pos.normalized(); @@ -808,7 +812,11 @@ void GLGizmoRotate::transform_to_local(const Selection& selection) const } #endif // ENABLE_GL_SHADERS_ATTRIBUTES +#if ENABLE_WORLD_COORDINATE +Vec3d GLGizmoRotate::mouse_position_in_local_plane(const Linef3& mouse_ray) const +#else Vec3d GLGizmoRotate::mouse_position_in_local_plane(const Linef3& mouse_ray, const Selection& selection) const +#endif // ENABLE_WORLD_COORDINATE { double half_pi = 0.5 * double(PI); @@ -844,7 +852,6 @@ Vec3d GLGizmoRotate::mouse_position_in_local_plane(const Linef3& mouse_ray, cons #endif // ENABLE_WORLD_COORDINATE m.translate(-m_center); - return transform(mouse_ray, m).intersect_plane(0.0); } diff --git a/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp b/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp index 9b0417aafe..47431b6260 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp @@ -122,7 +122,11 @@ private: #endif // ENABLE_GL_SHADERS_ATTRIBUTES // returns the intersection of the mouse ray with the plane perpendicular to the gizmo axis, in local coordinate +#if ENABLE_WORLD_COORDINATE + Vec3d mouse_position_in_local_plane(const Linef3& mouse_ray) const; +#else Vec3d mouse_position_in_local_plane(const Linef3& mouse_ray, const Selection& selection) const; +#endif // ENABLE_WORLD_COORDINATE #if ENABLE_WORLD_COORDINATE void init_data_from_selection(const Selection& selection);