legends2k

2 answers · asked @ video mark 0:41 · Lesson: World Space and Local Space · Course: Fundamentals of Animation in Blender

Local coordinate system does change direction and position!

waylow Please let me know if my understanding is correct or if I'm missing something here.

> When we add rotation to an object, we're just changing direction of the object, we're NOT changing the rotation of the coordinate system

This is wrong. We do change the direction of local coordinate system. I agree that when the rotated object is moved along local-Z, we see all location channels changing. But that’s  because an object’s location is the offset of its origin relative  world's origin. How the object (and thereby its origin) was moved -- either using world space axes or local space axes -- doesn't matter. When you manipulate the gizmo, the active Transform orientation is set to Local hence it's using that, while when you're manipulating an object's localtion in the Transform panel, you're directly manipulating its origin's offset relative to its parent's offset; hence the move along world-Z. The change in all three axes is because local-Z isn’t aligned with world-Z.

In the parented scenario, after the parent is translated and rotated, when you translate the small monkey along its Z, only its location-Z is changing because the child object doesn't have any rotation! The axes of the parent and the child, although offset by a distance, has no difference/changes in scale or orientation. However, if you do what you did for the unparented case -- rotate the child monkey -- and then move along local-Z, you'd see all of location-{X,Y,Z} changing.

Basically both parented and unparented cases are the same with one having the parent and another the world as parent.  In both cases we do change/transform the local coordinate system (origin and axes) relative to the parent's coordinate system.
_________________________
An object's local space/coordinate system is made up of two entities:

Origin (position)
Axes (direction)

When an object is moved, irrespective of how the object's axes are oriented, location is going to be its origin's offset from the world's/parent's origin.

Likewise when an object is scaled or rotated, it's relative to the parent/world axes' scale and orientation I.e. how much it’s rotated/scaled relative to the parent’s.