From fb4ad5290f34119bbb0d942de6ddf97c5e93911c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bruno=20Perdig=C3=A3o?= Date: Thu, 13 Feb 2025 17:20:10 -0300 Subject: [PATCH] Fix `mix_snap_and_axis()` to ignore intersection too close from polyline. Follows 5fe87bf5aa6c0be7f2f14a29669d3fe4cd3677f9 --- src/bonsai/bonsai/tool/snap.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/bonsai/bonsai/tool/snap.py b/src/bonsai/bonsai/tool/snap.py index 125c234caf..05ad119960 100644 --- a/src/bonsai/bonsai/tool/snap.py +++ b/src/bonsai/bonsai/tool/snap.py @@ -241,7 +241,14 @@ class Snap(bonsai.core.tool.Snap): else: last_point = Vector(0, 0, 0) - sorted_intersections = sorted((i for i in intersections if i is not None), key=lambda x: (x - last_point).length, reverse=True) + valid_intersections = [] + for i in intersections: + if i is not None: + distance = (i-last_point).length + if not math.isclose(distance, 0.0, abs_tol=1e-4): + valid_intersections.append(i) + + sorted_intersections = sorted(valid_intersections, key=lambda x: (x - last_point).length, reverse=True) return sorted_intersections @classmethod