Page MenuHome

shear5.txt

shear5.txt

Index: source/blender/include/transform.h
===================================================================
RCS file: /cvsroot/bf-blender/blender/source/blender/include/transform.h,v
retrieving revision 1.36
diff -u -p -u -r1.36 transform.h
--- source/blender/include/transform.h 28 Dec 2006 22:42:58 -0000 1.36
+++ source/blender/include/transform.h 9 Jan 2007 09:00:59 -0000
@@ -222,6 +222,7 @@ typedef struct TransInfo {
#define T_POINTS 64
// for manipulator exceptions, like scaling using center point, drawing help lines
#define T_USES_MANIPULATOR 128
+#define T_SHEAR_X 256
/* restrictions flags */
#define T_ALL_RESTRICTIONS (256|512|1024)
@@ -421,4 +422,3 @@ void applyNumInput(NumInput *n, float *v
char handleNumInput(NumInput *n, unsigned short event);
#endif
-
Index: source/blender/src/transform.c
===================================================================
RCS file: /cvsroot/bf-blender/blender/source/blender/src/transform.c,v
retrieving revision 1.151
diff -u -p -u -r1.151 transform.c
--- source/blender/src/transform.c 28 Dec 2006 03:11:21 -0000 1.151
+++ source/blender/src/transform.c 9 Jan 2007 09:01:00 -0000
@@ -601,7 +601,9 @@ static void transformEvent(unsigned shor
}
break;
case XKEY:
- if ((Trans.flag & T_NO_CONSTRAINT)==0) {
+ if(Trans.transform == Shear)
+ Trans.flag |= T_SHEAR_X;
+ else if ((Trans.flag & T_NO_CONSTRAINT)==0) {
if (cmode == 'X') {
if (Trans.con.mode & CON_USER) {
stopConstraint(&Trans);
@@ -623,7 +625,9 @@ static void transformEvent(unsigned shor
}
break;
case YKEY:
- if ((Trans.flag & T_NO_CONSTRAINT)==0) {
+ if(Trans.transform == Shear)
+ Trans.flag &= ~T_SHEAR_X;
+ else if ((Trans.flag & T_NO_CONSTRAINT)==0) {
if (cmode == 'Y') {
if (Trans.con.mode & CON_USER) {
stopConstraint(&Trans);
@@ -1295,7 +1299,12 @@ int Shear(TransInfo *t, short mval[2])
}
Mat3One(smat);
- smat[1][0] = value;
+
+ if(t->flag & T_SHEAR_X)
+ smat[1][0] = value;
+ else
+ smat[0][1] = value;
+
Mat3MulMat3(tmat, smat, persmat);
Mat3MulMat3(totmat, persinv, tmat);
@@ -2993,5 +3002,3 @@ void BIF_TransformSetUndo(char *str)
{
Trans.undostr= str;
}
-
-

File Metadata

Mime Type
text/x-diff
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
d2/80/66b4ee2098ceea724853f8c19358

Event Timeline