Description
Is your feature request related to a problem? Please describe.
Sometimes when adding parts or modifiers to objects (like for sacrificial bridging or beefing up strength around through holes) it would be useful to center the parts or modifiers or snap edges/corners to each other for precise lining up.
Also, poorly designed multi-color/multi-material downloads may not import into PrusaSlicer with all the parts arranged correctly for printing on MMUs or on multi-tool machines like the XL.
Describe the solution you'd like
I'd like to see another moving/arranging tool to allow snapping a feature of one part of an object to a feature of another part of the same object.
Describe how it would work
Leverage the feature selection routines of the measurement tool to select features of two parts of an object (the parts can be either solid geometry parts or modifier parts). Have different snapping modes (for consistency the part that is moved (translation and/or rotation) should either always be the second or the first selected part):
- Coincident: Coincident faces (translation with rotation), coincident lines (translation with rotation), coincident points (translation only w/o rotation), points coincident with lines or faces (translation only w/o rotation)
- Tangent: Snap a feature tangent to a circle or arc, colinear to a line/edge.
- Center/middle: Snap a feature to the center of a circle or arc, middle of an edge/line, or the geometric center of a face.
- Other snapping modes that I'm not thinking about now. (See CAD packages for ideas.)
Describe alternatives you've considered
Ideally this should be able to be done in the CAD package when originally designing a part. But this isn't always possible, especially when downloading someone else's design.
Additional context
A stretch goal would be to allow select snaps to be locked, similar to FreeCAD assembly workbench (or similar features in other CAD packages). This would allow multiple snaps to be used to fully constrain one part to another within an object.