[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12242] trunk/blender/source/blender/src/ transform.c: Bugfix #7482:
Joshua Leung
aligorith at gmail.com
Tue Oct 9 08:21:27 CEST 2007
Revision: 12242
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12242
Author: aligorith
Date: 2007-10-09 08:21:26 +0200 (Tue, 09 Oct 2007)
Log Message:
-----------
Bugfix #7482:
Trackball transform did not work correctly for "individual centers" pivot mode in face-select mode. It was missing a case that would allow this happen.
Modified Paths:
--------------
trunk/blender/source/blender/src/transform.c
Modified: trunk/blender/source/blender/src/transform.c
===================================================================
--- trunk/blender/source/blender/src/transform.c 2007-10-09 05:54:31 UTC (rev 12241)
+++ trunk/blender/source/blender/src/transform.c 2007-10-09 06:21:26 UTC (rev 12242)
@@ -2242,6 +2242,7 @@
{
TransData *td = t->data;
float mat[3][3], smat[3][3], totmat[3][3];
+ float center[3];
int i;
VecRotToMat3(axis1, angles[0], smat);
@@ -2253,9 +2254,18 @@
if (td->flag & TD_NOACTION)
break;
+ VECCOPY(center, t->center);
+
if (t->around == V3D_LOCAL) {
- if (t->flag & T_OBJECT)
- VECCOPY(t->center, td->center); // not supported in editmode yet
+ /* local-mode shouldn't change center */
+ if (t->flag & (T_OBJECT|T_POSE)) {
+ VECCOPY(t->center, td->center);
+ }
+ else {
+ if(G.vd->around==V3D_LOCAL && (G.scene->selectmode & SCE_SELECT_FACE)) {
+ VECCOPY(t->center, td->center);
+ }
+ }
}
if (t->flag & T_PROP_EDIT) {
@@ -2264,8 +2274,10 @@
Mat3MulMat3(mat, smat, totmat);
}
-
+
ElementRotation(t, td, mat);
+
+ VECCOPY(t->center, center);
}
}
More information about the Bf-blender-cvs
mailing list