Below is a demonstration of the features of the DCM2euler function


clear; close all; clc;




This function is the inverse of the euler2DCM function. The Euler angles a are derived based on the input rotatin tensor Q.


Plot settings


Retrieving the Euler andles from a rotation tensor

Get example patch data


Defining sets of true Euler angles for X, Y and Z axis rotation

a_true=[0.25*pi 0.25*pi -0.25*pi]
a_true =

    0.7854    0.7854   -0.7854

Use euler2DCM function to define the rotation tensor


Use DCM2euler to retrieve the Euler angles

a_fit =

    0.7854    0.7854   -0.7854

Handling symbolic expressions

    syms a b c

    a_true=[a b c]


    warning('Symbolic toolbox likely missing')
a_true =
[ a, b, c]
a_fit =
[ -atan2(-cos(b)*sin(a), cos(a)*cos(b)), -atan2(-sin(b), (cos(a)^2*cos(b)^2 + cos(b)^2*sin(a)^2)^(1/2)), -atan2(-cos(b)*sin(c), cos(b)*cos(c))]

GIBBON www.gibboncode.org

Kevin Mattheus Moerman, gibbon.toolbox@gmail.com

GIBBON footer text

License: https://github.com/gibbonCode/GIBBON/blob/master/LICENSE

GIBBON: The Geometry and Image-based Bioengineering add-On. A toolbox for image segmentation, image-based modeling, meshing, and finite element analysis.

Copyright (C) 2019 Kevin Mattheus Moerman

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.