Main Content

eul2quat

Convert Euler angles to quaternion

Description

example

quat = eul2quat(eul) converts a given set of Euler angles, eul, to the corresponding quaternion, quat. The default order for Euler angle rotations is "ZYX".

example

quat = eul2quat(eul,sequence) converts a set of Euler angles into a quaternion. The Euler angles are specified in the axis rotation sequence, sequence. The default order for Euler angle rotations is "ZYX".

Examples

collapse all

eul = [0 pi/2 0];
qZYX = eul2quat(eul)
qZYX = 1×4

    0.7071         0    0.7071         0

eul = [pi/2 0 0];
qZYZ = eul2quat(eul,'ZYZ')
qZYZ = 1×4

    0.7071         0         0    0.7071

Input Arguments

collapse all

Euler rotation angles in radians, specified as an n-by-3 array of Euler rotation angles. Each row represents one Euler angle set.

Example: [0 0 1.5708]

Axis rotation sequence for the Euler angles, specified as one of these string scalars:

  • "ZYX" (default) – The order of rotation angles is z-axis, y-axis, x-axis.

  • "ZYZ" – The order of rotation angles is z-axis, y-axis, z-axis.

  • "XYZ" – The order of rotation angles is x-axis, y-axis, z-axis.

Data Types: string | char

Output Arguments

collapse all

Unit quaternion, returned as an n-by-4 matrix containing n quaternions. Each quaternion, one per row, is of the form q = [w x y z], with w as the scalar number.

Example: [0.7071 0.7071 0 0]

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Introduced in R2015a