[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [32460] trunk/blender/source/blender/ editors/object/object_transform.c: bugfix [#21959] 'Apply rotation' to scaled object behaves wrong

Campbell Barton ideasman42 at gmail.com
Thu Oct 14 04:05:38 CEST 2010


Revision: 32460
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=32460
Author:   campbellbarton
Date:     2010-10-14 04:05:37 +0200 (Thu, 14 Oct 2010)

Log Message:
-----------
bugfix [#21959] 'Apply rotation' to scaled object behaves wrong

Modified Paths:
--------------
    trunk/blender/source/blender/editors/object/object_transform.c

Modified: trunk/blender/source/blender/editors/object/object_transform.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_transform.c	2010-10-14 01:22:14 UTC (rev 32459)
+++ trunk/blender/source/blender/editors/object/object_transform.c	2010-10-14 02:05:37 UTC (rev 32460)
@@ -457,8 +457,18 @@
 			object_to_mat3(ob, rsmat);
 		else if(apply_scale)
 			object_scale_to_mat3(ob, rsmat);
-		else if(apply_rot)
+		else if(apply_rot) {
+			float tmat[3][3], timat[3][3];
+
+			/* simple rotation matrix */
 			object_rot_to_mat3(ob, rsmat);
+
+			/* correct for scale, note mul_m3_m3m3 has swapped args! */
+			object_scale_to_mat3(ob, tmat);
+			invert_m3_m3(timat, tmat);
+			mul_m3_m3m3(rsmat, timat, rsmat);
+			mul_m3_m3m3(rsmat, rsmat, tmat);
+		}
 		else
 			unit_m3(rsmat);
 





More information about the Bf-blender-cvs mailing list