The UR-Script documentation says that for the rotation triplet, the effect of the pose_add command is p_3.R = p_1.R * p_2.R.

But what is this supposed to mean? I suppose this isn’t meant to be a scalar multiplication, as the result has to be 3 numbers again. But what else happens? Component-wise multiplication doesn’t make sense as well. The given example suggests that the components are simply added as well, but I’m not sure that this holds in every case.

What I first thought was that the rotation vector actually represents a rotation matrix, and the two rotation matrices are then multiplied - is that the correct behaviour of the pose_add command?

As an addendum, in what regards does the pose_add command differ from the pose_trans command?

I guess the command “Pose_add” should have a clearly defined and implemented behaviour, but the script manual doesn’t go into details on this.

The multiplication is actually a 3x3 matrix multiply of two rotation matrices. The poses are first converted to matrix notation and then the translation parts are added and the rotation parts multiplied, giving a new matrix. This is then translated into a pose.