1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml"> 3<head> 4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 5 6<title>rs_quaternion.rsh File Reference</title> 7<link href="tabs.css" rel="stylesheet" type="text/css"/> 8<link href="doxygen.css" rel="stylesheet" type="text/css" /> 9 10 11 12</head> 13<body> 14<div id="top"><!-- do not remove this div! --> 15 16 17<!-- Generated by Doxygen 1.7.5.1 --> 18 <div id="navrow1" class="tabs"> 19 <ul class="tablist"> 20 <li><a href="index.html"><span>Overview</span></a></li> 21 <li class="current"><a href="globals.html"><span>Globals</span></a></li> 22 <li><a href="annotated.html"><span>Structs</span></a></li> 23 </ul> 24 </div> 25</div> 26<div class="header"> 27 <div class="summary"> 28<a href="#func-members">Functions</a> </div> 29 <div class="headertitle"> 30<div class="title">rs_quaternion.rsh File Reference</div> </div> 31</div> 32<div class="contents"> 33<table class="memberdecls"> 34<tr><td colspan="2"><h2><a name="func-members"></a> 35Functions</h2></td></tr> 36<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#a5ff868dbc33e710a666a102fdcc6670a">rsQuaternionSet</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, float w, float x, float y, float z)</td></tr> 37<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#a249782133e54f13a8096d1fbe295714d">rsQuaternionSet</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *rhs)</td></tr> 38<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#a4f3d214912facf72f6a6d57e95aa3c3b">rsQuaternionMultiply</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, float s)</td></tr> 39<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#a5e6e493b9917336b0d9118fdd4e91444">rsQuaternionAdd</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *rhs)</td></tr> 40<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#aa72a43cf3d7b5924de1ddfaa5766db09">rsQuaternionLoadRotateUnit</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, float rot, float x, float y, float z)</td></tr> 41<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#adf4423c521e34f3cf29d5dd5b5a93de0">rsQuaternionLoadRotate</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, float rot, float x, float y, float z)</td></tr> 42<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#acd670264e49743d35f38028b8e2a8800">rsQuaternionConjugate</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q)</td></tr> 43<tr><td class="memItemLeft" align="right" valign="top">static float </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#aa810f8857439564e7b3be771f47b40ca">rsQuaternionDot</a> (const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q0, const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q1)</td></tr> 44<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#abb31aad2416044ad5bbf44ee7c838e2a">rsQuaternionNormalize</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q)</td></tr> 45<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#a8bbbb286a2e2cb71b416c053f44844c3">rsQuaternionMultiply</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *rhs)</td></tr> 46<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#a7da94a30e287cbb8148771a5cd768dbd">rsQuaternionSlerp</a> (<a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q, const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q0, const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q1, float t)</td></tr> 47<tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="rs__quaternion_8rsh.html#a7726c524868c49892976fec53ea0693b">rsQuaternionGetMatrixUnit</a> (<a class="el" href="structrs__matrix4x4.html">rs_matrix4x4</a> *m, const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> *q)</td></tr> 48</table> 49<hr/><a name="details" id="details"></a><h2>Detailed Description</h2> 50<div class="textblock"><p>Quaternion routines. </p> 51 52<p>Definition in file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 53</div><hr/><h2>Function Documentation</h2> 54<a class="anchor" id="a5e6e493b9917336b0d9118fdd4e91444"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionAdd" ref="a5e6e493b9917336b0d9118fdd4e91444" args="(rs_quaternion *q, const rs_quaternion *rhs)" --> 55<div class="memitem"> 56<div class="memproto"> 57 <table class="memname"> 58 <tr> 59 <td class="memname">static void rsQuaternionAdd </td> 60 <td>(</td> 61 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 62 <td class="paramname"><em>q</em>, </td> 63 </tr> 64 <tr> 65 <td class="paramkey"></td> 66 <td></td> 67 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 68 <td class="paramname"><em>rhs</em> </td> 69 </tr> 70 <tr> 71 <td></td> 72 <td>)</td> 73 <td></td><td><code> [static]</code></td> 74 </tr> 75 </table> 76</div> 77<div class="memdoc"> 78<p>Add two quaternions </p> 79<dl><dt><b>Parameters:</b></dt><dd> 80 <table class="params"> 81 <tr><td class="paramname">q</td><td>destination quaternion to add to </td></tr> 82 <tr><td class="paramname">rsh</td><td>right hand side quaternion to add </td></tr> 83 </table> 84 </dd> 85</dl> 86 87<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00074">74</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 88 89</div> 90</div> 91<a class="anchor" id="acd670264e49743d35f38028b8e2a8800"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionConjugate" ref="acd670264e49743d35f38028b8e2a8800" args="(rs_quaternion *q)" --> 92<div class="memitem"> 93<div class="memproto"> 94 <table class="memname"> 95 <tr> 96 <td class="memname">static void rsQuaternionConjugate </td> 97 <td>(</td> 98 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 99 <td class="paramname"><em>q</em></td><td>)</td> 100 <td><code> [static]</code></td> 101 </tr> 102 </table> 103</div> 104<div class="memdoc"> 105<p>Conjugates the quaternion </p> 106<dl><dt><b>Parameters:</b></dt><dd> 107 <table class="params"> 108 <tr><td class="paramname">q</td><td>quaternion to conjugate </td></tr> 109 </table> 110 </dd> 111</dl> 112 113<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00127">127</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 114 115</div> 116</div> 117<a class="anchor" id="aa810f8857439564e7b3be771f47b40ca"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionDot" ref="aa810f8857439564e7b3be771f47b40ca" args="(const rs_quaternion *q0, const rs_quaternion *q1)" --> 118<div class="memitem"> 119<div class="memproto"> 120 <table class="memname"> 121 <tr> 122 <td class="memname">static float rsQuaternionDot </td> 123 <td>(</td> 124 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 125 <td class="paramname"><em>q0</em>, </td> 126 </tr> 127 <tr> 128 <td class="paramkey"></td> 129 <td></td> 130 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 131 <td class="paramname"><em>q1</em> </td> 132 </tr> 133 <tr> 134 <td></td> 135 <td>)</td> 136 <td></td><td><code> [static]</code></td> 137 </tr> 138 </table> 139</div> 140<div class="memdoc"> 141<p>Dot product of two quaternions </p> 142<dl><dt><b>Parameters:</b></dt><dd> 143 <table class="params"> 144 <tr><td class="paramname">q0</td><td>first quaternion </td></tr> 145 <tr><td class="paramname">q1</td><td>second quaternion </td></tr> 146 </table> 147 </dd> 148</dl> 149<dl class="return"><dt><b>Returns:</b></dt><dd>dot product between q0 and q1 </dd></dl> 150 151<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00140">140</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 152 153</div> 154</div> 155<a class="anchor" id="a7726c524868c49892976fec53ea0693b"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionGetMatrixUnit" ref="a7726c524868c49892976fec53ea0693b" args="(rs_matrix4x4 *m, const rs_quaternion *q)" --> 156<div class="memitem"> 157<div class="memproto"> 158 <table class="memname"> 159 <tr> 160 <td class="memname">static void rsQuaternionGetMatrixUnit </td> 161 <td>(</td> 162 <td class="paramtype"><a class="el" href="structrs__matrix4x4.html">rs_matrix4x4</a> * </td> 163 <td class="paramname"><em>m</em>, </td> 164 </tr> 165 <tr> 166 <td class="paramkey"></td> 167 <td></td> 168 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 169 <td class="paramname"><em>q</em> </td> 170 </tr> 171 <tr> 172 <td></td> 173 <td>)</td> 174 <td></td><td><code> [static]</code></td> 175 </tr> 176 </table> 177</div> 178<div class="memdoc"> 179<p>Computes rotation matrix from the normalized quaternion </p> 180<dl><dt><b>Parameters:</b></dt><dd> 181 <table class="params"> 182 <tr><td class="paramname">m</td><td>resulting matrix </td></tr> 183 <tr><td class="paramname">p</td><td>normalized quaternion </td></tr> 184 </table> 185 </dd> 186</dl> 187 188<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00228">228</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 189 190</div> 191</div> 192<a class="anchor" id="adf4423c521e34f3cf29d5dd5b5a93de0"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionLoadRotate" ref="adf4423c521e34f3cf29d5dd5b5a93de0" args="(rs_quaternion *q, float rot, float x, float y, float z)" --> 193<div class="memitem"> 194<div class="memproto"> 195 <table class="memname"> 196 <tr> 197 <td class="memname">static void rsQuaternionLoadRotate </td> 198 <td>(</td> 199 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 200 <td class="paramname"><em>q</em>, </td> 201 </tr> 202 <tr> 203 <td class="paramkey"></td> 204 <td></td> 205 <td class="paramtype">float </td> 206 <td class="paramname"><em>rot</em>, </td> 207 </tr> 208 <tr> 209 <td class="paramkey"></td> 210 <td></td> 211 <td class="paramtype">float </td> 212 <td class="paramname"><em>x</em>, </td> 213 </tr> 214 <tr> 215 <td class="paramkey"></td> 216 <td></td> 217 <td class="paramtype">float </td> 218 <td class="paramname"><em>y</em>, </td> 219 </tr> 220 <tr> 221 <td class="paramkey"></td> 222 <td></td> 223 <td class="paramtype">float </td> 224 <td class="paramname"><em>z</em> </td> 225 </tr> 226 <tr> 227 <td></td> 228 <td>)</td> 229 <td></td><td><code> [static]</code></td> 230 </tr> 231 </table> 232</div> 233<div class="memdoc"> 234<p>Loads a quaternion that represents a rotation about an arbitrary vector (doesn't have to be unit) </p> 235<dl><dt><b>Parameters:</b></dt><dd> 236 <table class="params"> 237 <tr><td class="paramname">q</td><td>quaternion to set </td></tr> 238 <tr><td class="paramname">rot</td><td>angle to rotate by </td></tr> 239 <tr><td class="paramname">x</td><td>component of a vector </td></tr> 240 <tr><td class="paramname">y</td><td>component of a vector </td></tr> 241 <tr><td class="paramname">x</td><td>component of a vector </td></tr> 242 </table> 243 </dd> 244</dl> 245 246<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00111">111</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 247 248</div> 249</div> 250<a class="anchor" id="aa72a43cf3d7b5924de1ddfaa5766db09"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionLoadRotateUnit" ref="aa72a43cf3d7b5924de1ddfaa5766db09" args="(rs_quaternion *q, float rot, float x, float y, float z)" --> 251<div class="memitem"> 252<div class="memproto"> 253 <table class="memname"> 254 <tr> 255 <td class="memname">static void rsQuaternionLoadRotateUnit </td> 256 <td>(</td> 257 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 258 <td class="paramname"><em>q</em>, </td> 259 </tr> 260 <tr> 261 <td class="paramkey"></td> 262 <td></td> 263 <td class="paramtype">float </td> 264 <td class="paramname"><em>rot</em>, </td> 265 </tr> 266 <tr> 267 <td class="paramkey"></td> 268 <td></td> 269 <td class="paramtype">float </td> 270 <td class="paramname"><em>x</em>, </td> 271 </tr> 272 <tr> 273 <td class="paramkey"></td> 274 <td></td> 275 <td class="paramtype">float </td> 276 <td class="paramname"><em>y</em>, </td> 277 </tr> 278 <tr> 279 <td class="paramkey"></td> 280 <td></td> 281 <td class="paramtype">float </td> 282 <td class="paramname"><em>z</em> </td> 283 </tr> 284 <tr> 285 <td></td> 286 <td>)</td> 287 <td></td><td><code> [static]</code></td> 288 </tr> 289 </table> 290</div> 291<div class="memdoc"> 292<p>Loads a quaternion that represents a rotation about an arbitrary unit vector </p> 293<dl><dt><b>Parameters:</b></dt><dd> 294 <table class="params"> 295 <tr><td class="paramname">q</td><td>quaternion to set </td></tr> 296 <tr><td class="paramname">rot</td><td>angle to rotate by </td></tr> 297 <tr><td class="paramname">x</td><td>component of a vector </td></tr> 298 <tr><td class="paramname">y</td><td>component of a vector </td></tr> 299 <tr><td class="paramname">x</td><td>component of a vector </td></tr> 300 </table> 301 </dd> 302</dl> 303 304<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00090">90</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 305 306</div> 307</div> 308<a class="anchor" id="a4f3d214912facf72f6a6d57e95aa3c3b"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionMultiply" ref="a4f3d214912facf72f6a6d57e95aa3c3b" args="(rs_quaternion *q, float s)" --> 309<div class="memitem"> 310<div class="memproto"> 311 <table class="memname"> 312 <tr> 313 <td class="memname">static void rsQuaternionMultiply </td> 314 <td>(</td> 315 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 316 <td class="paramname"><em>q</em>, </td> 317 </tr> 318 <tr> 319 <td class="paramkey"></td> 320 <td></td> 321 <td class="paramtype">float </td> 322 <td class="paramname"><em>s</em> </td> 323 </tr> 324 <tr> 325 <td></td> 326 <td>)</td> 327 <td></td><td><code> [static]</code></td> 328 </tr> 329 </table> 330</div> 331<div class="memdoc"> 332<p>Multiply quaternion by a scalar </p> 333<dl><dt><b>Parameters:</b></dt><dd> 334 <table class="params"> 335 <tr><td class="paramname">q</td><td>quaternion to multiply </td></tr> 336 <tr><td class="paramname">s</td><td>scalar </td></tr> 337 </table> 338 </dd> 339</dl> 340 341<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00061">61</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 342 343</div> 344</div> 345<a class="anchor" id="a8bbbb286a2e2cb71b416c053f44844c3"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionMultiply" ref="a8bbbb286a2e2cb71b416c053f44844c3" args="(rs_quaternion *q, const rs_quaternion *rhs)" --> 346<div class="memitem"> 347<div class="memproto"> 348 <table class="memname"> 349 <tr> 350 <td class="memname">static void rsQuaternionMultiply </td> 351 <td>(</td> 352 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 353 <td class="paramname"><em>q</em>, </td> 354 </tr> 355 <tr> 356 <td class="paramkey"></td> 357 <td></td> 358 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 359 <td class="paramname"><em>rhs</em> </td> 360 </tr> 361 <tr> 362 <td></td> 363 <td>)</td> 364 <td></td><td><code> [static]</code></td> 365 </tr> 366 </table> 367</div> 368<div class="memdoc"> 369<p>Multiply quaternion by another quaternion </p> 370<dl><dt><b>Parameters:</b></dt><dd> 371 <table class="params"> 372 <tr><td class="paramname">q</td><td>destination quaternion </td></tr> 373 <tr><td class="paramname">rhs</td><td>right hand side quaternion to multiply by </td></tr> 374 </table> 375 </dd> 376</dl> 377 378<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00163">163</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 379 380</div> 381</div> 382<a class="anchor" id="abb31aad2416044ad5bbf44ee7c838e2a"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionNormalize" ref="abb31aad2416044ad5bbf44ee7c838e2a" args="(rs_quaternion *q)" --> 383<div class="memitem"> 384<div class="memproto"> 385 <table class="memname"> 386 <tr> 387 <td class="memname">static void rsQuaternionNormalize </td> 388 <td>(</td> 389 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 390 <td class="paramname"><em>q</em></td><td>)</td> 391 <td><code> [static]</code></td> 392 </tr> 393 </table> 394</div> 395<div class="memdoc"> 396<p>Normalizes the quaternion </p> 397<dl><dt><b>Parameters:</b></dt><dd> 398 <table class="params"> 399 <tr><td class="paramname">q</td><td>quaternion to normalize </td></tr> 400 </table> 401 </dd> 402</dl> 403 404<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00149">149</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 405 406</div> 407</div> 408<a class="anchor" id="a5ff868dbc33e710a666a102fdcc6670a"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionSet" ref="a5ff868dbc33e710a666a102fdcc6670a" args="(rs_quaternion *q, float w, float x, float y, float z)" --> 409<div class="memitem"> 410<div class="memproto"> 411 <table class="memname"> 412 <tr> 413 <td class="memname">static void rsQuaternionSet </td> 414 <td>(</td> 415 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 416 <td class="paramname"><em>q</em>, </td> 417 </tr> 418 <tr> 419 <td class="paramkey"></td> 420 <td></td> 421 <td class="paramtype">float </td> 422 <td class="paramname"><em>w</em>, </td> 423 </tr> 424 <tr> 425 <td class="paramkey"></td> 426 <td></td> 427 <td class="paramtype">float </td> 428 <td class="paramname"><em>x</em>, </td> 429 </tr> 430 <tr> 431 <td class="paramkey"></td> 432 <td></td> 433 <td class="paramtype">float </td> 434 <td class="paramname"><em>y</em>, </td> 435 </tr> 436 <tr> 437 <td class="paramkey"></td> 438 <td></td> 439 <td class="paramtype">float </td> 440 <td class="paramname"><em>z</em> </td> 441 </tr> 442 <tr> 443 <td></td> 444 <td>)</td> 445 <td></td><td><code> [static]</code></td> 446 </tr> 447 </table> 448</div> 449<div class="memdoc"> 450<p>Set the quaternion components </p> 451<dl><dt><b>Parameters:</b></dt><dd> 452 <table class="params"> 453 <tr><td class="paramname">w</td><td>component </td></tr> 454 <tr><td class="paramname">x</td><td>component </td></tr> 455 <tr><td class="paramname">y</td><td>component </td></tr> 456 <tr><td class="paramname">z</td><td>component </td></tr> 457 </table> 458 </dd> 459</dl> 460 461<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00035">35</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 462 463</div> 464</div> 465<a class="anchor" id="a249782133e54f13a8096d1fbe295714d"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionSet" ref="a249782133e54f13a8096d1fbe295714d" args="(rs_quaternion *q, const rs_quaternion *rhs)" --> 466<div class="memitem"> 467<div class="memproto"> 468 <table class="memname"> 469 <tr> 470 <td class="memname">static void rsQuaternionSet </td> 471 <td>(</td> 472 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 473 <td class="paramname"><em>q</em>, </td> 474 </tr> 475 <tr> 476 <td class="paramkey"></td> 477 <td></td> 478 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 479 <td class="paramname"><em>rhs</em> </td> 480 </tr> 481 <tr> 482 <td></td> 483 <td>)</td> 484 <td></td><td><code> [static]</code></td> 485 </tr> 486 </table> 487</div> 488<div class="memdoc"> 489<p>Set the quaternion from another quaternion </p> 490<dl><dt><b>Parameters:</b></dt><dd> 491 <table class="params"> 492 <tr><td class="paramname">q</td><td>destination quaternion </td></tr> 493 <tr><td class="paramname">rhs</td><td>source quaternion </td></tr> 494 </table> 495 </dd> 496</dl> 497 498<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00048">48</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 499 500</div> 501</div> 502<a class="anchor" id="a7da94a30e287cbb8148771a5cd768dbd"></a><!-- doxytag: member="rs_quaternion.rsh::rsQuaternionSlerp" ref="a7da94a30e287cbb8148771a5cd768dbd" args="(rs_quaternion *q, const rs_quaternion *q0, const rs_quaternion *q1, float t)" --> 503<div class="memitem"> 504<div class="memproto"> 505 <table class="memname"> 506 <tr> 507 <td class="memname">static void rsQuaternionSlerp </td> 508 <td>(</td> 509 <td class="paramtype"><a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 510 <td class="paramname"><em>q</em>, </td> 511 </tr> 512 <tr> 513 <td class="paramkey"></td> 514 <td></td> 515 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 516 <td class="paramname"><em>q0</em>, </td> 517 </tr> 518 <tr> 519 <td class="paramkey"></td> 520 <td></td> 521 <td class="paramtype">const <a class="el" href="rs__types_8rsh.html#a86f99f382dc35fc8ad98b524fe6d5447">rs_quaternion</a> * </td> 522 <td class="paramname"><em>q1</em>, </td> 523 </tr> 524 <tr> 525 <td class="paramkey"></td> 526 <td></td> 527 <td class="paramtype">float </td> 528 <td class="paramname"><em>t</em> </td> 529 </tr> 530 <tr> 531 <td></td> 532 <td>)</td> 533 <td></td><td><code> [static]</code></td> 534 </tr> 535 </table> 536</div> 537<div class="memdoc"> 538<p>Performs spherical linear interpolation between two quaternions </p> 539<dl><dt><b>Parameters:</b></dt><dd> 540 <table class="params"> 541 <tr><td class="paramname">q</td><td>result quaternion from interpolation </td></tr> 542 <tr><td class="paramname">q0</td><td>first param </td></tr> 543 <tr><td class="paramname">q1</td><td>second param </td></tr> 544 <tr><td class="paramname">t</td><td>how much to interpolate by </td></tr> 545 </table> 546 </dd> 547</dl> 548 549<p>Definition at line <a class="el" href="rs__quaternion_8rsh_source.html#l00182">182</a> of file <a class="el" href="rs__quaternion_8rsh_source.html">rs_quaternion.rsh</a>.</p> 550 551</div> 552</div> 553</div> 554 555</body> 556</html> 557