[Bf-blender-cvs] [52b125a790e] master: Fix alignment test when snap to edge while in vert or edge slide

Germano Cavalcante noreply at git.blender.org
Wed Jul 1 22:17:27 CEST 2020


Commit: 52b125a790e389b463e0d9947bab8747534f9cb5
Author: Germano Cavalcante
Date:   Wed Jul 1 17:17:05 2020 -0300
Branches: master
https://developer.blender.org/rB52b125a790e389b463e0d9947bab8747534f9cb5

Fix alignment test when snap to edge while in vert or edge slide

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

M	source/blender/editors/transform/transform_mode_edge_slide.c
M	source/blender/editors/transform/transform_mode_vert_slide.c

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

diff --git a/source/blender/editors/transform/transform_mode_edge_slide.c b/source/blender/editors/transform/transform_mode_edge_slide.c
index ed22afc404e..750962047db 100644
--- a/source/blender/editors/transform/transform_mode_edge_slide.c
+++ b/source/blender/editors/transform/transform_mode_edge_slide.c
@@ -1316,6 +1316,7 @@ static void edge_slide_snap_apply(TransInfo *t, float *value)
   if (t->tsnap.snapElem & (SCE_SNAP_MODE_EDGE | SCE_SNAP_MODE_FACE)) {
     float co_dir[3];
     sub_v3_v3v3(co_dir, co_dest[side_index], co_orig);
+    normalize_v3(co_dir);
     if (t->tsnap.snapElem & SCE_SNAP_MODE_EDGE) {
       transform_constraint_snap_axis_to_edge(t, co_dir, dvec);
     }
diff --git a/source/blender/editors/transform/transform_mode_vert_slide.c b/source/blender/editors/transform/transform_mode_vert_slide.c
index 4b75c362da9..9e810b9c629 100644
--- a/source/blender/editors/transform/transform_mode_vert_slide.c
+++ b/source/blender/editors/transform/transform_mode_vert_slide.c
@@ -556,13 +556,14 @@ static void vert_slide_snap_apply(TransInfo *t, float *value)
   getSnapPoint(t, dvec);
   sub_v3_v3(dvec, t->tsnap.snapTarget);
   if (t->tsnap.snapElem & (SCE_SNAP_MODE_EDGE | SCE_SNAP_MODE_FACE)) {
-    float co_dir_3d[3];
-    sub_v3_v3v3(co_dir_3d, co_curr_3d, co_orig_3d);
+    float co_dir[3];
+    sub_v3_v3v3(co_dir, co_curr_3d, co_orig_3d);
+    normalize_v3(co_dir);
     if (t->tsnap.snapElem & SCE_SNAP_MODE_EDGE) {
-      transform_constraint_snap_axis_to_edge(t, co_dir_3d, dvec);
+      transform_constraint_snap_axis_to_edge(t, co_dir, dvec);
     }
     else {
-      transform_constraint_snap_axis_to_face(t, co_dir_3d, dvec);
+      transform_constraint_snap_axis_to_face(t, co_dir, dvec);
     }
   }



More information about the Bf-blender-cvs mailing list