warp.quat\_from\_euler ====================== .. currentmodule:: warp._src.lang .. function:: quat_from_euler(e: vec3f, i: int, j: int, k: int) -> quatf .. wp-function-tags:: :kernel: true :python: true :differentiable: true :source: https://github.com/NVIDIA/warp/blob/release-1.19/warp/_src/math.py#L396-L462 Return the rotation quaternion for Euler angles in radians and an axis sequence. The rotations about axes ``i``, ``j``, and ``k`` are applied in that order about the fixed axes (extrinsic), which is equivalent to applying them in the order ``k``, ``j``, ``i`` about the rotating axes (intrinsic). For example, ``quat_from_euler(e, 0, 1, 2)`` equals ``quat_rpy(e[0], e[1], e[2])``. For proper Euler sequences (``i == k``), ``e[i]`` is used for both the first and the third rotation. :param e: Euler angles in radians, indexed by axis, not by sequence position: ``e[0]`` is the angle about X, ``e[1]`` about Y, and ``e[2]`` about Z. :param i: Index of the first axis, in ``{0, 1, 2}``. :param j: Index of the second axis, in ``{0, 1, 2}`` and different from ``i``. :param k: Index of the third axis, in ``{0, 1, 2}`` and different from ``j``. :returns: Unit quaternion ``qk * qj * qi``, where ``qi`` is the rotation of ``e[i]`` about axis ``i``, and similarly for ``qj`` and ``qk``. :rtype: warp.quat