Global Mirroring Option

Here’s a feature I’d love to see in Rhino:

A property of each object describing object mirroring about one of the global axes, if any (none, X, Y, or Z). This would be a display-only mirroring; geometry manipulation occurs only on the side actually modeled. The mirrored side would be dimmed to show the differentiation. A global variable tells whether such mirroring where defined, is visible at all.

In ship design, there is a strong symmetry port & starboard. It’s usually only necessary to model one side. While we could select everything and mirror it, subsequent changes would have to be made twice. Seeing the other side without actually modeling it is the goal.

5 Likes

This would be very useful wherever there is model symmetry, which goes far beyond just ship design.

On the surface, to non-programmers, it certainly doesn’t seem like it would be tough to do. Maybe it’s something that could be a display mode, especially if it could be applied by object like other display modes.

I suppose that what you really meant was mirroring about one of the principle planes: x-y, y-z, z-x?

1 Like

Yes precisely, the principle planes is what I meant.

+1 on this, I was just going to make a wish for the exact same thing. Pretty much everything I design in Rhino has bilateral symmetry.

I suspect that it’s something that could be done by the graphics hardware. @jeff, is this possible?

I’d be cool with a global mirror image of one or both sides of the y-z plane, that could be toggled on or off.

Hi Robert- thanks- this has come up before, and while it has not made it to the top of the very-big-pile-for-too-few-people, it is on there and a perfectly reasonable request, whatever the actual implementation might eventually be. I’ll add your comments.

thanks,

-Pascal

Thanks, Pascal. The proposal as described is a great place to start on this, but if that’s all that can be done for a start, I hope that whoever works it can keep in mind that future enhancements would include mirroring on any defined plane and more than one symmetry plane in 2D so that, for instance a gear or turbine blade could be modeled by one tooth or blade. The feature should also allow one-click joining to convert the model and it’s virtual reflection(s) into one real object (and with history, back again). Finally, it should eventually allow the same thing in 3D by modeling an octant or other various combinations of pie slices.

As far as I understand, this feature will not be added in the upcoming Rhino 8 WIP, so maybe in Rhino 9?

2 Likes

This grasshopper definition mirrors all, or selected, visible objects. You can customize it to make the mirrored objects look how you’d like, but otherwise it does some work to attempt to make them look the same as their original. The success of that seems to depend upon tuning viewport modes to match grasshopper preview geometry, or vice-versa.

MagicMirror.gh (16.8 KB)

1 Like