Need feedback: Snap selection to cursor/active (consider rotation)

Hi,

since we now have a 3D cursor in Blender 2.8, considering rotation when snapping seems reasonable. However, the behavior of Snap Selected To 3D Cursor can be implemented in different ways, so which one of the following possibilities do you prefer?

  • Option 1: Add cursor rotation to rotation of selected object
  • Option 2: Copy cursor rotation to object rotation.

This is an example:



In option 1, the cube’s x-rotation was 30 and after snapping it became 90, because the curser’s rotation is 60.
Option 2 doesn’t care about the previous object’s rotation, instead the cursor’s rotation is taken as the new rotation, so it’s simply align to cursor. One potential problem with this, is that relative rotation between two selected objects would be lost, which wouldn’t happen in edit mode.

  • Option 1
  • Option 2
  • Both (with ability to choose)
  • Other

0 voters

Currently, only for location, Snap menu has two items.
Snap Selected to Cursor and Snap Selected to Cursor (Keep Offset).

IMHO, option 1 corresponds to (Keep Offset) item and option 2 corresponds to default item but for rotation.

User would probably want to be able to deactivate rotation snapping in case of a Keep Offset use.
So probably, the Snap Selected to Cursor operator should have 3 options.
Snap Rotation, Keep Rotation Offset, Keep Location Offset

1 Like

Actually the operator supports location/rotation constraints, so your suggested option 3 can be achieved by locking the object’s location/rotation for x/y/z/w etc…

Currently, operator only supports location offset.
Your question is about how it should handle rotation.

I mean copying rotation of 3D Cursor should be an option. And as a consequence, as for location, a secondary option should be to handle an offset of rotation above 3D Cursor rotation.

So by enabling only Snap Rotation checkbox, case 2 would be satisfied.
By enabling both checkboxes about rotation, case 1 would be satisfied.
Yes, I mean that both cases could be handled. Plus current behavior that does imply changes of objects rotation.
Because new ability to rotate 3D Cursor does not mean that current behavior becomes obsolete.
That is still useful to move objects without messing up their rotation.

Here’s how the current implementation looks like. Is this what you meant?

I would rather look at this functionality from some real-case scenario.
Like for example, projecting 3D cursor onto some surface (with rotation)
and then snapping that object origin to position and rotation of a 3D cursor, but without actually moving geometry with respect to the world space.
That way ‘snapping’ would affect only “virtual” object origin position.

That would be useful for misplaced 3D scans.
…like an 3’rd option “don’t move geometry data” or “affect only origin point”.

What do you think?