• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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&#160;</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> *&#160;</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> *&#160;</td>
68          <td class="paramname"><em>rhs</em>&#160;</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> *&#160;</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> *&#160;</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> *&#160;</td>
131          <td class="paramname"><em>q1</em>&#160;</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> *&#160;</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> *&#160;</td>
169          <td class="paramname"><em>q</em>&#160;</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> *&#160;</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&#160;</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&#160;</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&#160;</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&#160;</td>
224          <td class="paramname"><em>z</em>&#160;</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> *&#160;</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&#160;</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&#160;</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&#160;</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&#160;</td>
282          <td class="paramname"><em>z</em>&#160;</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> *&#160;</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&#160;</td>
322          <td class="paramname"><em>s</em>&#160;</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> *&#160;</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> *&#160;</td>
359          <td class="paramname"><em>rhs</em>&#160;</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> *&#160;</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> *&#160;</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&#160;</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&#160;</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&#160;</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&#160;</td>
440          <td class="paramname"><em>z</em>&#160;</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> *&#160;</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> *&#160;</td>
479          <td class="paramname"><em>rhs</em>&#160;</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> *&#160;</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> *&#160;</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> *&#160;</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&#160;</td>
528          <td class="paramname"><em>t</em>&#160;</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