1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>euler_angles.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.8.0 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File List</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="headertitle">
<div class="title">euler_angles.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="a00019.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001
<a name="l00002"></a>00002
<a name="l00003"></a>00003
<a name="l00004"></a>00004
<a name="l00005"></a>00005
<a name="l00006"></a>00006
<a name="l00007"></a>00007
<a name="l00008"></a>00008
<a name="l00009"></a>00009
<a name="l00010"></a>00010
<a name="l00011"></a>00011
<a name="l00012"></a>00012
<a name="l00013"></a>00013
<a name="l00014"></a>00014
<a name="l00015"></a>00015
<a name="l00016"></a>00016
<a name="l00017"></a>00017
<a name="l00018"></a>00018
<a name="l00019"></a>00019
<a name="l00020"></a>00020
<a name="l00021"></a>00021
<a name="l00022"></a>00022
<a name="l00023"></a>00023
<a name="l00024"></a>00024
<a name="l00025"></a>00025
<a name="l00026"></a>00026
<a name="l00027"></a>00027
<a name="l00028"></a>00028
<a name="l00029"></a>00029
<a name="l00030"></a>00030
<a name="l00031"></a>00031
<a name="l00032"></a>00032
<a name="l00033"></a>00033
<a name="l00034"></a>00034
<a name="l00035"></a>00035
<a name="l00036"></a>00036
<a name="l00037"></a>00037
<a name="l00038"></a>00038
<a name="l00039"></a>00039 <span class="preprocessor">#ifndef GLM_GTX_euler_angles</span>
<a name="l00040"></a>00040 <span class="preprocessor"></span><span class="preprocessor">#define GLM_GTX_euler_angles GLM_VERSION</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span>
<a name="l00042"></a>00042 <span class="comment">// Dependency:</span>
<a name="l00043"></a>00043 <span class="preprocessor">#include "../glm.hpp"</span>
<a name="l00044"></a>00044 <span class="preprocessor">#include "../gtc/half_float.hpp"</span>
<a name="l00045"></a>00045
<a name="l00046"></a>00046 <span class="preprocessor">#if(defined(GLM_MESSAGES) && !defined(glm_ext))</span>
<a name="l00047"></a>00047 <span class="preprocessor"></span><span class="preprocessor"># pragma message("GLM: GLM_GTX_euler_angles extension included")</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00049"></a>00049 <span class="preprocessor"></span>
<a name="l00050"></a>00050 <span class="keyword">namespace </span>glm
<a name="l00051"></a>00051 {
<a name="l00054"></a>00054
<a name="l00057"></a>00057 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00058"></a>00058 detail::tmat4x4<valType> <a class="code" href="a00164.html#gaac45eaecc2f40ecdda03a7112693dabf" title="Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle X.">eulerAngleX</a>(
<a name="l00059"></a>00059 valType <span class="keyword">const</span> & angleX);
<a name="l00060"></a>00060
<a name="l00063"></a>00063 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00064"></a>00064 detail::tmat4x4<valType> <a class="code" href="a00164.html#gae31b378f18fb01ed6d44c3f92f76eba5" title="Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Y.">eulerAngleY</a>(
<a name="l00065"></a>00065 valType <span class="keyword">const</span> & angleY);
<a name="l00066"></a>00066
<a name="l00069"></a>00069 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00070"></a>00070 detail::tmat4x4<valType> <a class="code" href="a00164.html#gaa309eabf292cab65cde623f398910685" title="Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Z.">eulerAngleZ</a>(
<a name="l00071"></a>00071 valType <span class="keyword">const</span> & angleZ);
<a name="l00072"></a>00072
<a name="l00075"></a>00075 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00076"></a>00076 detail::tmat4x4<valType> <a class="code" href="a00164.html#ga943a94f69965d594efde254c139aaae8" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y).">eulerAngleXY</a>(
<a name="l00077"></a>00077 valType <span class="keyword">const</span> & angleX,
<a name="l00078"></a>00078 valType <span class="keyword">const</span> & angleY);
<a name="l00079"></a>00079
<a name="l00082"></a>00082 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00083"></a>00083 detail::tmat4x4<valType> <a class="code" href="a00164.html#gaac8d93a4b3ae4014ff8f1c5a5a793236" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X).">eulerAngleYX</a>(
<a name="l00084"></a>00084 valType <span class="keyword">const</span> & angleY,
<a name="l00085"></a>00085 valType <span class="keyword">const</span> & angleX);
<a name="l00086"></a>00086
<a name="l00089"></a>00089 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00090"></a>00090 detail::tmat4x4<valType> <a class="code" href="a00164.html#gafc6f582fa044bcece3506ffd6d31ef59" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z).">eulerAngleXZ</a>(
<a name="l00091"></a>00091 valType <span class="keyword">const</span> & angleX,
<a name="l00092"></a>00092 valType <span class="keyword">const</span> & angleZ);
<a name="l00093"></a>00093
<a name="l00096"></a>00096 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00097"></a>00097 detail::tmat4x4<valType> <a class="code" href="a00164.html#ga630d8b3aadde3c890251deba896c9946" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X).">eulerAngleZX</a>(
<a name="l00098"></a>00098 valType <span class="keyword">const</span> & angleZ,
<a name="l00099"></a>00099 valType <span class="keyword">const</span> & angleX);
<a name="l00100"></a>00100
<a name="l00103"></a>00103 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00104"></a>00104 detail::tmat4x4<valType> <a class="code" href="a00164.html#ga99f4bb03efd91aac95be4ce38a5f44ce" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z).">eulerAngleYZ</a>(
<a name="l00105"></a>00105 valType <span class="keyword">const</span> & angleY,
<a name="l00106"></a>00106 valType <span class="keyword">const</span> & angleZ);
<a name="l00107"></a>00107
<a name="l00110"></a>00110 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00111"></a>00111 detail::tmat4x4<valType> <a class="code" href="a00164.html#ga6fb1d08bf5eb9320eb6520e9c27f0e80" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y).">eulerAngleZY</a>(
<a name="l00112"></a>00112 valType <span class="keyword">const</span> & angleZ,
<a name="l00113"></a>00113 valType <span class="keyword">const</span> & angleY);
<a name="l00114"></a>00114
<a name="l00117"></a>00117 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00118"></a>00118 detail::tmat4x4<valType> <a class="code" href="a00164.html#gab2c29b80a86caa83f6b550de31e6889f" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).">eulerAngleYXZ</a>(
<a name="l00119"></a>00119 valType <span class="keyword">const</span> & <a class="code" href="a00195.html#gaac012c1a6bc37ce07a87745d9c596eed" title="Returns yaw value of euler angles in degrees.">yaw</a>,
<a name="l00120"></a>00120 valType <span class="keyword">const</span> & <a class="code" href="a00195.html#gaf2a0323dbf6c6fb3f37b445aa899c1c7" title="Returns pitch value of euler angles in degrees.">pitch</a>,
<a name="l00121"></a>00121 valType <span class="keyword">const</span> & <a class="code" href="a00195.html#ga7ef4c8c1ce1ca988add2f73392db0a06" title="Returns roll value of euler angles in degrees.">roll</a>);
<a name="l00122"></a>00122
<a name="l00125"></a>00125 <span class="keyword">template</span> <<span class="keyword">typename</span> valType>
<a name="l00126"></a>00126 detail::tmat4x4<valType> <a class="code" href="a00164.html#ga4c297724e663cb77cc2cf7e4ab89b77e" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).">yawPitchRoll</a>(
<a name="l00127"></a>00127 valType <span class="keyword">const</span> & <a class="code" href="a00195.html#gaac012c1a6bc37ce07a87745d9c596eed" title="Returns yaw value of euler angles in degrees.">yaw</a>,
<a name="l00128"></a>00128 valType <span class="keyword">const</span> & <a class="code" href="a00195.html#gaf2a0323dbf6c6fb3f37b445aa899c1c7" title="Returns pitch value of euler angles in degrees.">pitch</a>,
<a name="l00129"></a>00129 valType <span class="keyword">const</span> & <a class="code" href="a00195.html#ga7ef4c8c1ce1ca988add2f73392db0a06" title="Returns roll value of euler angles in degrees.">roll</a>);
<a name="l00130"></a>00130
<a name="l00133"></a>00133 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00134"></a>00134 detail::tmat2x2<T> <a class="code" href="a00164.html#ga381a4208b916cabe7244b1b77b0ea6c2" title="Creates a 2D 2 * 2 rotation matrix from an euler angle.">orientate2</a>(T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00135"></a>00135
<a name="l00138"></a>00138 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00139"></a>00139 detail::tmat3x3<T> <a class="code" href="a00164.html#ga745f26f19b9c0e35c22e634e7f0c1721" title="Creates a 2D 4 * 4 homogeneous rotation matrix from an euler angle.">orientate3</a>(T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00140"></a>00140
<a name="l00143"></a>00143 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00144"></a>00144 detail::tmat3x3<T> <a class="code" href="a00164.html#ga745f26f19b9c0e35c22e634e7f0c1721" title="Creates a 2D 4 * 4 homogeneous rotation matrix from an euler angle.">orientate3</a>(detail::tvec3<T> <span class="keyword">const</span> & angles);
<a name="l00145"></a>00145
<a name="l00148"></a>00148 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00149"></a>00149 detail::tmat4x4<T> <a class="code" href="a00164.html#gabbba69e91bb14442bb1b4d330235c550" title="Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).">orientate4</a>(detail::tvec3<T> <span class="keyword">const</span> & angles);
<a name="l00150"></a>00150
<a name="l00152"></a>00152 }<span class="comment">//namespace glm</span>
<a name="l00153"></a>00153
<a name="l00154"></a>00154 <span class="preprocessor">#include "euler_angles.inl"</span>
<a name="l00155"></a>00155
<a name="l00156"></a>00156 <span class="preprocessor">#endif//GLM_GTX_euler_angles</span>
</pre></div></div><!-- contents -->
<hr class="footer"/><address class="footer"><small>
Generated by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.0
</small></address>
</body>
</html>
|