Transform Mirror:
* Make Ctrl+M key work for mirror in 3D view. * Fix mirror along global axis, was mirroring around all axes when the object was rotated, due to wrong matrix order, was also not working in 2.4. * Pressing e.g. X twice still doesn't go to local mode, would fix but don't know how the code is intended to work.
This commit is contained in:
@@ -2334,7 +2334,7 @@ static void ElementResize(TransInfo *t, TransData *td, float mat[3][3]) {
|
||||
if (t->flag & (T_OBJECT|T_TEXTURE|T_POSE)) {
|
||||
float obsizemat[3][3];
|
||||
// Reorient the size mat to fit the oriented object.
|
||||
Mat3MulMat3(obsizemat, tmat, td->axismtx);
|
||||
Mat3MulMat3(obsizemat, td->axismtx, tmat);
|
||||
//printmatrix3("obsizemat", obsizemat);
|
||||
TransMat3ToSize(obsizemat, td->axismtx, fsize);
|
||||
//printvecf("fsize", fsize);
|
||||
|
||||
@@ -767,6 +767,8 @@ void transform_keymap_for_space(struct wmWindowManager *wm, struct wmKeyMap *key
|
||||
km = WM_keymap_add_item(keymap, "TFM_OT_create_orientation", SPACEKEY, KM_PRESS, KM_CTRL|KM_ALT, 0);
|
||||
RNA_boolean_set(km->ptr, "use", 1);
|
||||
|
||||
km = WM_keymap_add_item(keymap, "TFM_OT_mirror", MKEY, KM_PRESS, KM_CTRL, 0);
|
||||
|
||||
break;
|
||||
case SPACE_ACTION:
|
||||
km= WM_keymap_add_item(keymap, "TFM_OT_transform", GKEY, KM_PRESS, 0, 0);
|
||||
@@ -837,7 +839,7 @@ void transform_keymap_for_space(struct wmWindowManager *wm, struct wmKeyMap *key
|
||||
|
||||
km = WM_keymap_add_item(keymap, "TFM_OT_resize", SKEY, KM_PRESS, 0, 0);
|
||||
|
||||
km = WM_keymap_add_item(keymap, "TFM_OT_mirror", MKEY, KM_PRESS, 0, 0);
|
||||
km = WM_keymap_add_item(keymap, "TFM_OT_mirror", MKEY, KM_PRESS, KM_CTRL, 0);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user