CAD-like mirror tool
A CAD-like mirror tool where you
- make a (multi-)selection (either in object or edit mode so that you can select only part of the geometry).
- press M (or what ever key is still available). This could also be part of the duplication functionality so you do shift + D first and then press M to enter mirror mode.
- then you select either one or two points (could be either a vertex, a face center-point or a edge mid-point)
- if you select one point you do point-reflection/mirroring and if you select two points you create a line for line-mirroring
The mirroring would be projected out from within the current view if that makes sense
I am aware that mirroring in general is already possible via a modifier as well as via 3D cursor magic, but is definitely a welcome addition for simple geometry duplication workflows where you would want a little more control over where you place you duplicated geometry. It is also just much faster and more straight forward this way.
For more context this is the kind of functionality that I am talking about: youtube.com/shorts/IVdUKS48JPA
Extra remarks:
- For the line mirroring it would make sense that you can set the second line-point in the air, in 45 degree snapping angles from the first point. This way you don‘t need geometry to finish the line.
- I wouldn’t worry about auto-merging of geometry. For this more intricate functionality one should use the modifier. This should really just be a straight forward and dumb geometry duplication tool.
5 Comments
4 Steps to do that mirroring in the video. I use CAD now with packaging and we have a similar tool for this there, mirron on line and mirror on point. The problem I need to solve here with trying my hand at replicating this with python is that AutoCAD doesn't work on Objects with and Edito mode - every line is a separate object ready to be selected and worked on. The Blender Object Level allows one to have many parts inside a container, and that Mirror modifier is working on Object Level and can be manipulated at Edit Level.
I tried already to see if I can just select two vertex in Edit Mode and snap the Cursor there and then define the "line" for Mirror mod - but as said, Edit Mode so that doesn't help with a complex object of many parts. This really needs to be an Edito Mode tool that works destructively like the old method of scaling -1 across the axis.
I will keep thinking on this one, but I am not the level of dev to be able to add a new tool outside of a python macro.
To reiterate I don't want any kind of CAD-like modelling or curves or anything, I really only want the same mirror-like tool for the existing Blender modelling system with vertices, edges and faces (or whole object in object mode). Basically an extension to the shift + d duplication tool with subsequent mirrored placement.
Interestingly enough, I got some pretty good basic results with snapping the cursor to selection and then selecting the geo to be duplicated while using Cursor as pivot - manually for now, Duplicate with Shift D and then scale on axis -1. This could be automated to a point, I think. Reversed steps but still the same - Select the Line/Point (snap cursor to that), Select the Geo to be Mirrored, and then automate the duplication and scale on axis.
I made a small addon bit that does 3 stages - set the Axis, then Snap the Cursor, then Duplicate the selection and Scale -1 on Axis. Cursor is the automatic pivot set, but if I use 'Normal' instead of 'Global', then the mirroring can happen on a diagonal edge as pivot center.
Looks like I only found a corner case where that 'Normal' affects it that way, but more testing shows that I still need to figure out how to align correctly when not using perpendicular to X or Y.