From 574a59dfb02b40d369d3b02b17de3f2dbd598bec Mon Sep 17 00:00:00 2001 From: mano-wii Date: Tue, 3 Dec 2019 12:20:27 -0300 Subject: Fix T72112: Perpendicular snapping with closest not working The closest target is calculated only after a snap point is found. So use `center_global` while the target is not calculated. --- source/blender/editors/transform/transform_snap.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'source') diff --git a/source/blender/editors/transform/transform_snap.c b/source/blender/editors/transform/transform_snap.c index 99429db6af7..4b6ab2045c0 100644 --- a/source/blender/editors/transform/transform_snap.c +++ b/source/blender/editors/transform/transform_snap.c @@ -1362,6 +1362,7 @@ static void TargetSnapClosest(TransInfo *t) short snapObjectsTransform( TransInfo *t, const float mval[2], float *dist_px, float r_loc[3], float r_no[3]) { + float *target = (t->tsnap.status & TARGET_INIT) ? t->tsnap.snapTarget : t->center_global; return ED_transform_snap_object_project_view3d_ex( t->tsnap.object_context, t->scene->toolsettings->snap_mode, @@ -1373,7 +1374,7 @@ short snapObjectsTransform( SCE_SNAP_BACKFACE_CULLING) != 0, }, mval, - t->tsnap.snapTarget, + target, dist_px, r_loc, r_no, -- cgit v1.2.3