[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [32715] trunk/blender/source/blender/ blenkernel/intern/constraint.c: partial bugfix [#24002] Constraint " Limit rotation" doesn't work properly

Campbell Barton ideasman42 at gmail.com
Tue Oct 26 18:55:38 CEST 2010


Revision: 32715
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=32715
Author:   campbellbarton
Date:     2010-10-26 18:55:38 +0200 (Tue, 26 Oct 2010)

Log Message:
-----------
partial bugfix [#24002] Constraint "Limit rotation" doesn't work properly
this fixes the obvious problems but there are still some rotation jumping when clamping in some cases.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/constraint.c

Modified: trunk/blender/source/blender/blenkernel/intern/constraint.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/constraint.c	2010-10-26 15:44:53 UTC (rev 32714)
+++ trunk/blender/source/blender/blenkernel/intern/constraint.c	2010-10-26 16:55:38 UTC (rev 32715)
@@ -1381,6 +1381,7 @@
 static void rotlimit_evaluate (bConstraint *con, bConstraintOb *cob, ListBase *UNUSED(targets))
 {
 	bRotLimitConstraint *data = con->data;
+	float eul_zero[3]= {0.0f, 0.0f, 0.0f};
 	float loc[3];
 	float eul[3];
 	float size[3];
@@ -1388,8 +1389,9 @@
 	copy_v3_v3(loc, cob->matrix[3]);
 	mat4_to_size(size, cob->matrix);
 	
-	mat4_to_eulO(eul, cob->rotOrder, cob->matrix);
-	
+	/* use compat function because it uses the rotation without axis flipping [#24002] */
+	mat4_to_compatible_eulO(eul, eul_zero, cob->rotOrder, cob->matrix);
+
 	/* constraint data uses radians internally */
 	
 	/* limiting of euler values... */





More information about the Bf-blender-cvs mailing list