Rotation and Translation --> Orientation and Position


First, realize that what I am about to say is pretty picky, so don't be upset if I am too direct.

Why the variable in the Spatial class are named {local/world}{Rotation/Translation} instead of {local/world}{Orientation/Position} ?

IMVVHRO (In My Very Very Humble Ridiculous Opinion), that's not appropriate, the programmers were thinking about how to compute the orientation and position using a rotation and a translation, and used the wrong term in the source code.

IMVVHRO, rotation and translation sound more like a process while orientation and position sound more like a state.

This is a deceptively simple questions. In order to find the answer we have to look at the precise mathematical terms.

If you want to define position you have to define the position for a particular point. Whenever you talk or think about the position you always imply the position of some point of an object. For example: the center of an object can have position. Similarly two distinct points of an object will have two different positions.

As you have pointed out, the position is a state. Moreover the position is a unique state for each point of an object.

Again, as you have pointed out, the translation is a process. It's a process in which all the points of an object are moving with the same velocity along parallel lines. So all the points of an object share the same translation.

So when you assign translation to an object - you assign a displacement of every point of that object. If you were to assign position instead, you would have to assign position of a particular point. However assigning a position for one point does not prevent the object from being rotated around that point. So whenever you only define the position for a single point of an object - the position of every other point of that object is undefined.

Similar arguments apply to Orientation vs Rotation.

To summarize: Rotation and Translation have mathematically precise definitions when applied to the whole object. Position and Orientation only have mathematically precise definitions when pplied to a single point of an object.

Theoretically you could define position and orientation for several points and then use equations to compute rotation and translation for the object. However that is much less practical than simply using Rotation and Translation to begin with.