Click or drag to resize
Accord.NET (logo)

Matrix4x4ExtractYawPitchRoll Method

Extract rotation angles from the rotation matrix.

Namespace:  Accord.Math
Assembly:  Accord.Math (in Accord.Math.dll) Version: 3.8.0
public void ExtractYawPitchRoll(
	out float yaw,
	out float pitch,
	out float roll
Request Example View Source


Type: SystemSingle
Extracted rotation angle around Y axis in radians.
Type: SystemSingle
Extracted rotation angle around X axis in radians.
Type: SystemSingle
Extracted rotation angle around Z axis in radians.

Note Note
The routine assumes roll-pitch-yaw rotation order when extracting rotation angle. Using extracted angles with the CreateFromYawPitchRoll(Single, Single, Single) should provide same rotation matrix.

Note Note
The method assumes the provided matrix represent valid rotation matrix.

Sample usage:

// assume we have a rotation matrix created like this
float yaw   = 10.0f / 180 * Math.PI;
float pitch = 30.0f / 180 * Math.PI;
float roll  = 45.0f / 180 * Math.PI;

Matrix4x4 rotationMatrix = Matrix3x3.CreateFromYawPitchRoll( yaw, pitch, roll );
// ...

// now somewhere in the code you may want to get rotation
// angles back from a matrix assuming same rotation order
float extractedYaw;
float extractedPitch;
float extractedRoll;

rotation.ExtractYawPitchRoll( out extractedYaw, out extractedPitch, out extractedRoll );
See Also