From 2e426c8f9646fb8d15b42afbbb9c14b290a03957 Mon Sep 17 00:00:00 2001 From: "zhimin.zeng" Date: Wed, 27 Mar 2024 12:02:11 +0800 Subject: [PATCH] FIX: Can't edit text github: 3750 Change-Id: I1caecaa968e60cadcdbe9f7aa67cba141bb88230 --- src/slic3r/GUI/Gizmos/GLGizmoText.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/slic3r/GUI/Gizmos/GLGizmoText.cpp b/src/slic3r/GUI/Gizmos/GLGizmoText.cpp index c42b38c81..7fcc88433 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoText.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoText.cpp @@ -1117,10 +1117,8 @@ bool GLGizmoText::update_text_positions(const std::vector& texts) Polygons polys = union_(temp_polys); auto point_in_line_rectange = [](const Line &line, const Point &point, double& distance) { - distance = abs((point.x() - line.a.x()) * (line.b.y() - line.a.y()) - (line.b.x() - line.a.x()) * (point.y() - line.a.y())); - bool in_rectange = (std::min(line.a.x(), line.b.x()) - 1000) <= point.x() && point.x() <= (std::max(line.a.x(), line.b.x()) + 1000) && - (std::min(line.a.y(), line.b.y()) - 1000) <= point.y() && point.y() <= (std::max(line.a.y(), line.b.y()) + 1000); - return in_rectange; + distance = line.distance_to(point); + return distance < line.length() / 2; }; int index = 0;