[Bf-blender-cvs] [33571be2af5] master: Fix T65632: Connected Proportional Editing is affected by Curve Object's Local Scale

Sebastian Parborg noreply at git.blender.org
Fri Jun 14 17:27:46 CEST 2019


Commit: 33571be2af590d6f13f91bd2f3c292a8690a7bdc
Author: Sebastian Parborg
Date:   Fri Jun 14 17:17:15 2019 +0200
Branches: master
https://developer.blender.org/rB33571be2af590d6f13f91bd2f3c292a8690a7bdc

Fix T65632: Connected Proportional Editing is affected by Curve Object's Local Scale

Make curve vertex distance take into account the object scale.

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

M	source/blender/editors/transform/transform_conversions.c

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

diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index b90e89019d7..a9acdcd001c 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -1835,7 +1835,12 @@ static void calc_distanceCurveVerts(TransData *head, TransData *tail)
     }
     else if (td_near) {
       float dist;
-      dist = len_v3v3(td_near->center, td->center);
+      float vec[3];
+
+      sub_v3_v3v3(vec, td_near->center, td->center);
+      mul_m3_v3(head->mtx, vec);
+      dist = len_v3(vec);
+
       if (dist < (td - 1)->dist) {
         td->dist = (td - 1)->dist;
       }
@@ -1856,7 +1861,12 @@ static void calc_distanceCurveVerts(TransData *head, TransData *tail)
     }
     else if (td_near) {
       float dist;
-      dist = len_v3v3(td_near->center, td->center);
+      float vec[3];
+
+      sub_v3_v3v3(vec, td_near->center, td->center);
+      mul_m3_v3(head->mtx, vec);
+      dist = len_v3(vec);
+
       if (td->flag & TD_NOTCONNECTED || dist < td->dist || (td + 1)->dist < td->dist) {
         td->flag &= ~TD_NOTCONNECTED;
         if (dist < (td + 1)->dist) {



More information about the Bf-blender-cvs mailing list