# given current position and Quaternion and target local rotations (α, β, γ, in radians), how to calculate the new Quaternion

Say we have an object (e.g., end-effector of a robot) that is defined in a general coordinate system by a Cartesian position and Quaternion.

since the Quaternion is with respect to a general and fixed coordinate system, it is rather not intuitive for me how to calculate this Quaternion if the object is rotated locally.

That is, assuming a local coordinate system on this object, while keeping the position of it also fixed, I want to calculate a new Quaternion vector if the object is rotated by small angles (α, β, γ, or pitch, yaw, and roll) with respect to this local frame/coordinate-system.

It is often useful to create a 2D example and use rigid-body transforms (i.e., $$T\in\text{SE}(2)$$, where $${\small T=\begin{bmatrix}R&t\\0&1\end{bmatrix}}$$, $$R\in\text{SO}(2),t\in\mathbb{R}^2$$). In this way, the position and rotation are compactly encoded in a single element.

When working through these types of problems, it is important to clearly define notation and coordinate frames. For example, here we will write $$T^a_b$$ to describe the coordinate frame $$\mathcal{F}^b$$ with respect to $$\mathcal{F}^a$$. In other words, $$T^a_b$$ transforms data in $$b$$ and expresses it in $$a$$ (e.g., see more here).

In the following diagram, I have drawn the world frame axis $$\mathcal{F}^W$$ and an object that has a position and orientation with respect to that world frame (i.e., $$T^W_b$$). This object has its own coordinate frame $$\mathcal{F}^b$$. Now, a further transformation $$T^b_{b'}$$ occurs, where it just so happens that there was no translation. This final coordinate body position and orientation can be expressed in terms of the world frame by composition as

$$T^W_{b'} = T^W_b T^b_{b'}.$$

Now, to answer your question more concretely, we can consider just the unit quaternion encoding the orientation of $$\mathcal{F}^{b'}$$ w.r.t $$\mathcal{F}^W$$, that is, for $$q\in S^3$$,

$$q^W_{b'} = q^W_b q^b_{b'}.$$

In your setup, it sounds like you have $$q^W_b$$ and some Euler angles describing the rotation $$q^b_{b'}$$. Given everything above, your question seems to become "how do I convert Euler angles to a quaternion," for which many answers and software packages exist (Wikipedia). Please take care to know if your Euler angles are expressed as intrinsic or extrinsic and the correct rotation order. I recommend using something like MATLAB's eul2quat or, in Python, transformations.py (embedded in ROS as tf.transformations) to verify.