diff options
author | Joseph Eagar <joeedh@gmail.com> | 2009-09-15 23:36:10 +0400 |
---|---|---|
committer | Joseph Eagar <joeedh@gmail.com> | 2009-09-15 23:36:10 +0400 |
commit | 6b0679a3999d8e5abc60730f523879eadbedcd8f (patch) | |
tree | af47d2e7fc9de5421784f9a300cbd8a868cfd614 /source/blender/blenkernel/intern/modifiers_bmesh.c | |
parent | 7c80ca02bc7967ad39d6161c6bdb03d8553fb772 (diff) |
mirror fix attempt 2
Diffstat (limited to 'source/blender/blenkernel/intern/modifiers_bmesh.c')
-rw-r--r-- | source/blender/blenkernel/intern/modifiers_bmesh.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/source/blender/blenkernel/intern/modifiers_bmesh.c b/source/blender/blenkernel/intern/modifiers_bmesh.c index d1a94ca7e6a..3cf1785f3ef 100644 --- a/source/blender/blenkernel/intern/modifiers_bmesh.c +++ b/source/blender/blenkernel/intern/modifiers_bmesh.c @@ -545,24 +545,9 @@ DerivedMesh *doMirrorOnAxis(MirrorModifierData *mmd, float mtx2[4][4], vec[3]; Mat4Invert(mtx2, mmd->mirror_ob->obmat); - Mat4Ortho(mtx2); - Mat4MulMat4(imtx, ob->obmat, mtx2); - Mat4Invert(mtx, imtx); - - /*this math here is probably stupid beyond all reason*/ - VECCOPY(vec, mtx[3]); - VecMulf(vec, -1.0f); - - Mat4One(imtx); - imtx[axis][axis] = -1.0f; - Mat4MulMat4(mtx2, imtx, mtx); - - Mat4One(imtx); - VECCOPY(imtx[3], vec); - Mat4MulMat4(mtx, imtx, mtx2); + Mat4MulMat4(mtx, ob->obmat, mtx2); } else { Mat4One(mtx); - mtx[axis][axis] = -1.0f; } BMO_InitOpf(bm, &op, "mirror geom=%avef mat=%m4 mergedist=%f axis=%d", |