[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53102] trunk/blender/source/blender/ editors/transform/transform_manipulator.c: fix [#33575] Manipulator showing incorrect local axes in armature pose mode.

Campbell Barton ideasman42 at gmail.com
Tue Dec 18 06:30:03 CET 2012


Revision: 53102
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53102
Author:   campbellbarton
Date:     2012-12-18 05:29:56 +0000 (Tue, 18 Dec 2012)
Log Message:
-----------
fix [#33575] Manipulator showing incorrect local axes in armature pose mode.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/transform/transform_manipulator.c

Modified: trunk/blender/source/blender/editors/transform/transform_manipulator.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_manipulator.c	2012-12-18 01:52:18 UTC (rev 53101)
+++ trunk/blender/source/blender/editors/transform/transform_manipulator.c	2012-12-18 05:29:56 UTC (rev 53102)
@@ -572,6 +572,16 @@
 				}
 			/* no break we define 'normal' as 'local' in Object mode */
 			case V3D_MANIP_LOCAL:
+				if (ob->mode & OB_MODE_POSE) {
+					/* each bone moves on its own local axis, but  to avoid confusion,
+					 * use the active pones axis for display [#33575], this works as expected on a single bone
+					 * and users who select many bones will understand whats going on and what local means
+					 * when they start transforming */
+					float mat[3][3];
+					ED_getTransformOrientationMatrix(C, mat, (v3d->around == V3D_ACTIVE));
+					copy_m4_m3(rv3d->twmat, mat);
+					break;
+				}
 				copy_m4_m4(rv3d->twmat, ob->obmat);
 				normalize_m4(rv3d->twmat);
 				break;




More information about the Bf-blender-cvs mailing list