[Bf-blender-cvs] [234f346c2f9] master: Fix T70601: Lasso select not functioning correctly in Armature Edit Mode

mano-wii noreply at git.blender.org
Tue Oct 8 21:45:42 CEST 2019


Commit: 234f346c2f938ebb11f0f1e9b2c2a040f3ea5572
Author: mano-wii
Date:   Tue Oct 8 16:45:24 2019 -0300
Branches: master
https://developer.blender.org/rB234f346c2f938ebb11f0f1e9b2c2a040f3ea5572

Fix T70601: Lasso select not functioning correctly in Armature Edit Mode

This solution mimics the one used for pose by ignoring the bone line if either end is clipped.

===================================================================

M	source/blender/editors/space_view3d/view3d_select.c

===================================================================

diff --git a/source/blender/editors/space_view3d/view3d_select.c b/source/blender/editors/space_view3d/view3d_select.c
index 198b5d05540..3eee76277e8 100644
--- a/source/blender/editors/space_view3d/view3d_select.c
+++ b/source/blender/editors/space_view3d/view3d_select.c
@@ -1020,10 +1020,12 @@ static void do_lasso_select_armature__doSelectBone(void *userData,
       is_ignore_flag |= BONESEL_TIP;
     }
 
-    if (is_inside_flag == (BONE_ROOTSEL | BONE_TIPSEL) ||
-        BLI_lasso_is_edge_inside(
-            data->mcords, data->moves, UNPACK2(screen_co_a), UNPACK2(screen_co_b), INT_MAX)) {
-      is_inside_flag |= BONESEL_BONE;
+    if (is_ignore_flag == 0) {
+      if (is_inside_flag == (BONE_ROOTSEL | BONE_TIPSEL) ||
+          BLI_lasso_is_edge_inside(
+              data->mcords, data->moves, UNPACK2(screen_co_a), UNPACK2(screen_co_b), INT_MAX)) {
+        is_inside_flag |= BONESEL_BONE;
+      }
     }
 
     ebone->temp.i = is_inside_flag | (is_ignore_flag >> 16);



More information about the Bf-blender-cvs mailing list