Page MenuHome

Mirroring in Object Mode is inconsistent
Closed, ArchivedPublic

Description

Blender Version
Broken: (example: 2.74 000dfc0)

Short description of error
When mirroring in Object Mode, either by using the mirror operator or by scaling, the result is sometimes wrong.
But when the object is mirrored by parenting it to an empty, which is then scaled and the transformation is applied (so the empty can be deleted), the result is right.

Exact steps for others to reproduce the error
mirror operator:
Select both arrows. (Make sure not to move to move the 3D-Cursor, which is centered and serves as pivot center)
Press Ctrl+M to mirror, select the 'X'-Axis.
Now the arrows are pointing in different directions.

empty mirroring:
Add an empty. Parent both arrows to the empty.
Select (only) the empty. Press Ctrl+M to mirror, select the 'X'-Axis.
Press Ctrl+A to apply the empty's transform, select 'Scale'. Now delete the empty.
Now the arrows are pointing in the same direction. Which I had expected for the mirror operator as well.

Details

Type
Bug

Event Timeline

Philip Holzmann (Foaly) raised the priority of this task from to Needs Triage by Developer.
Philip Holzmann (Foaly) updated the task description. (Show Details)
Philip Holzmann (Foaly) set Type to Bug.
Julian Eisel (Severin) closed this task as Archived.Apr 16 2015, 5:54 PM
Julian Eisel (Severin) claimed this task.

Hey @Philip Holzmann (Foaly),
they don't behave the same because one arrow's rotation is different than the other's. If you apply it's rotation so that both have a rotation of 0 and repeat the mirroring, everything should work fine.

So thanks for the report, but for now I don't see a bug here (luckily ;) )

I did not know that this behaviour was intended.
But I think there is no point in having a mirror operator, if it can't mirror rotated objects.
I sometimes create objects wich are linked copies (so I can't just apply the rotation) and having to parent them to an empty to mirror them correctly is a bit weird.

Well I bet there are artist around using this behaviour to do crazy things, sometimes things just aren't that obvious ;) But in this case I guess this is mostly due to the internal handling of the data.