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
|
<!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>rotate_vector.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">rotate_vector.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="a00082.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_rotate_vector</span>
<a name="l00040"></a>00040 <span class="preprocessor"></span><span class="preprocessor">#define GLM_GTX_rotate_vector 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 "../gtx/transform.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_rotate_vector 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> T>
<a name="l00058"></a>00058 detail::tvec2<T> <a class="code" href="a00147.html#gaacb9cbe8f93a8fef9dc3e25559df19c0" title="Builds a rotation 4 * 4 matrix created from an axis vector and an angle expressed in degrees...">rotate</a>(
<a name="l00059"></a>00059 detail::tvec2<T> <span class="keyword">const</span> & v,
<a name="l00060"></a>00060 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00061"></a>00061
<a name="l00064"></a>00064 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00065"></a>00065 detail::tvec3<T> <a class="code" href="a00147.html#gaacb9cbe8f93a8fef9dc3e25559df19c0" title="Builds a rotation 4 * 4 matrix created from an axis vector and an angle expressed in degrees...">rotate</a>(
<a name="l00066"></a>00066 detail::tvec3<T> <span class="keyword">const</span> & v,
<a name="l00067"></a>00067 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>,
<a name="l00068"></a>00068 detail::tvec3<T> <span class="keyword">const</span> & normal);
<a name="l00069"></a>00069
<a name="l00072"></a>00072 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00073"></a>00073 detail::tvec4<T> <a class="code" href="a00147.html#gaacb9cbe8f93a8fef9dc3e25559df19c0" title="Builds a rotation 4 * 4 matrix created from an axis vector and an angle expressed in degrees...">rotate</a>(
<a name="l00074"></a>00074 detail::tvec4<T> <span class="keyword">const</span> & v,
<a name="l00075"></a>00075 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>,
<a name="l00076"></a>00076 detail::tvec3<T> <span class="keyword">const</span> & normal);
<a name="l00077"></a>00077
<a name="l00080"></a>00080 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00081"></a>00081 detail::tvec3<T> <a class="code" href="a00199.html#gaaadca0c077515d56955f3c662a3a3c7f" title="Rotate a three dimensional vector around the X axis.">rotateX</a>(
<a name="l00082"></a>00082 detail::tvec3<T> <span class="keyword">const</span> & v,
<a name="l00083"></a>00083 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00084"></a>00084
<a name="l00087"></a>00087 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00088"></a>00088 detail::tvec3<T> <a class="code" href="a00199.html#gacffa0ae7f32f4e2ee7bc1dc0ed290d45" title="Rotate a three dimensional vector around the Y axis.">rotateY</a>(
<a name="l00089"></a>00089 detail::tvec3<T> <span class="keyword">const</span> & v,
<a name="l00090"></a>00090 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00091"></a>00091
<a name="l00094"></a>00094 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00095"></a>00095 detail::tvec3<T> <a class="code" href="a00199.html#ga105c77751b4ab56c491334655751e0af" title="Rotate a three dimensional vector around the Z axis.">rotateZ</a>(
<a name="l00096"></a>00096 detail::tvec3<T> <span class="keyword">const</span> & v,
<a name="l00097"></a>00097 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00098"></a>00098
<a name="l00101"></a>00101 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00102"></a>00102 detail::tvec4<T> <a class="code" href="a00199.html#gaaadca0c077515d56955f3c662a3a3c7f" title="Rotate a three dimensional vector around the X axis.">rotateX</a>(
<a name="l00103"></a>00103 detail::tvec4<T> <span class="keyword">const</span> & v,
<a name="l00104"></a>00104 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00105"></a>00105
<a name="l00108"></a>00108 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00109"></a>00109 detail::tvec4<T> <a class="code" href="a00199.html#gacffa0ae7f32f4e2ee7bc1dc0ed290d45" title="Rotate a three dimensional vector around the Y axis.">rotateY</a>(
<a name="l00110"></a>00110 detail::tvec4<T> <span class="keyword">const</span> & v,
<a name="l00111"></a>00111 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00112"></a>00112
<a name="l00115"></a>00115 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00116"></a>00116 detail::tvec4<T> <a class="code" href="a00199.html#ga105c77751b4ab56c491334655751e0af" title="Rotate a three dimensional vector around the Z axis.">rotateZ</a>(
<a name="l00117"></a>00117 detail::tvec4<T> <span class="keyword">const</span> & v,
<a name="l00118"></a>00118 T <span class="keyword">const</span> & <a class="code" href="a00195.html#ga69041d18bd8539fe82d6170932d28362" title="Returns the quaternion rotation angle.">angle</a>);
<a name="l00119"></a>00119
<a name="l00122"></a>00122 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
<a name="l00123"></a>00123 detail::tmat4x4<T> <a class="code" href="a00199.html#ga4da5fddb2f1aa679fdb45abd344efffb" title="Build a rotation matrix from a normal and a up vector.">orientation</a>(
<a name="l00124"></a>00124 detail::tvec3<T> <span class="keyword">const</span> & Normal,
<a name="l00125"></a>00125 detail::tvec3<T> <span class="keyword">const</span> & Up);
<a name="l00126"></a>00126
<a name="l00128"></a>00128 }<span class="comment">//namespace glm</span>
<a name="l00129"></a>00129
<a name="l00130"></a>00130 <span class="preprocessor">#include "rotate_vector.inl"</span>
<a name="l00131"></a>00131
<a name="l00132"></a>00132 <span class="preprocessor">#endif//GLM_GTX_rotate_vector</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>
|