aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/others/mimesh/libg3d-0.0.8/doc/api/html/libg3d-matrix.html
diff options
context:
space:
mode:
Diffstat (limited to 'src/others/mimesh/libg3d-0.0.8/doc/api/html/libg3d-matrix.html')
-rw-r--r--src/others/mimesh/libg3d-0.0.8/doc/api/html/libg3d-matrix.html450
1 files changed, 450 insertions, 0 deletions
diff --git a/src/others/mimesh/libg3d-0.0.8/doc/api/html/libg3d-matrix.html b/src/others/mimesh/libg3d-0.0.8/doc/api/html/libg3d-matrix.html
new file mode 100644
index 0000000..2ffe686
--- /dev/null
+++ b/src/others/mimesh/libg3d-0.0.8/doc/api/html/libg3d-matrix.html
@@ -0,0 +1,450 @@
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5<title>matrix</title>
6<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
7<link rel="start" href="index.html" title="libg3d Reference Manual">
8<link rel="up" href="ch02.html" title="Plugin interface">
9<link rel="prev" href="libg3d-primitive.html" title="primitive">
10<link rel="next" href="libg3d-vector.html" title="vector">
11<meta name="generator" content="GTK-Doc V1.10 (XML mode)">
12<link rel="stylesheet" href="style.css" type="text/css">
13<link rel="chapter" href="ch01.html" title="Application interface">
14<link rel="chapter" href="ch02.html" title="Plugin interface">
15</head>
16<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
17<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
18<tr valign="middle">
19<td><a accesskey="p" href="libg3d-primitive.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
20<td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
21<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
22<th width="100%" align="center">libg3d Reference Manual</th>
23<td><a accesskey="n" href="libg3d-vector.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
24</tr>
25<tr><td colspan="5" class="shortcuts"><nobr><a href="#libg3d-matrix.synopsis" class="shortcut">Top</a>
26  | 
27 <a href="#libg3d-matrix.description" class="shortcut">Description</a></nobr></td></tr>
28</table>
29<div class="refentry" lang="en">
30<a name="libg3d-matrix"></a><div class="titlepage"></div>
31<div class="refnamediv"><table width="100%"><tr>
32<td valign="top">
33<h2><span class="refentrytitle"><a name="libg3d-matrix.top_of_page"></a>matrix</span></h2>
34<p>matrix — Matrix manipulation and calculation</p>
35</td>
36<td valign="top" align="right"></td>
37</tr></table></div>
38<div class="refsynopsisdiv">
39<a name="libg3d-matrix.synopsis"></a><h2>Synopsis</h2>
40<pre class="synopsis">
41
42#include &lt;g3d/matrix.h&gt;
43
44typedef <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a>;
45<a
46href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
47>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-identity" title="g3d_matrix_identity ()">g3d_matrix_identity</a> (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);
48<a
49href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
50>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-multiply" title="g3d_matrix_multiply ()">g3d_matrix_multiply</a> (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *m1,
51 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *m2,
52 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);
53<a
54href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
55>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-translate" title="g3d_matrix_translate ()">g3d_matrix_translate</a> (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> x,
56 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> y,
57 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> z,
58 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);
59<a
60href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
61>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-rotate" title="g3d_matrix_rotate ()">g3d_matrix_rotate</a> (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> angle,
62 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> ax,
63 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> ay,
64 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> az,
65 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);
66<a
67href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
68>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-rotate-xyz" title="g3d_matrix_rotate_xyz ()">g3d_matrix_rotate_xyz</a> (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> rx,
69 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> ry,
70 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> rz,
71 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);
72<a
73href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
74>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-scale" title="g3d_matrix_scale ()">g3d_matrix_scale</a> (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> x,
75 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> y,
76 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> z,
77 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);
78<a
79href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
80>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-transpose" title="g3d_matrix_transpose ()">g3d_matrix_transpose</a> (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);
81<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-determinant" title="g3d_matrix_determinant ()">g3d_matrix_determinant</a> (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);
82<a
83href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
84>gboolean</a> <a class="link" href="libg3d-matrix.html#g3d-matrix-dump" title="g3d_matrix_dump ()">g3d_matrix_dump</a> (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);
85</pre>
86</div>
87<div class="refsect1" lang="en">
88<a name="libg3d-matrix.description"></a><h2>Description</h2>
89<p>
90Matrices in libg3d have the following layout:
91</p>
92<p>
93G3DMatrix matrix[16]:
94</p>
95<p>
96matrix[col * 4 + row] = f;</p>
97<p>
98
99</p>
100</div>
101<div class="refsect1" lang="en">
102<a name="libg3d-matrix.details"></a><h2>Details</h2>
103<div class="refsect2" lang="en">
104<a name="G3DMatrix"></a><h3>G3DMatrix</h3>
105<pre class="programlisting">typedef G3DFloat G3DMatrix;
106</pre>
107<p>
108Matrix element type.</p>
109<p>
110
111</p>
112</div>
113<hr>
114<div class="refsect2" lang="en">
115<a name="g3d-matrix-identity"></a><h3>g3d_matrix_identity ()</h3>
116<pre class="programlisting"><a
117href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
118>gboolean</a> g3d_matrix_identity (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);</pre>
119<p>
120Sets the given matrix to the identity matrix.</p>
121<p>
122
123</p>
124<div class="variablelist"><table border="0">
125<col align="left" valign="top">
126<tbody>
127<tr>
128<td><p><span class="term"><em class="parameter"><code>matrix</code></em> :</span></p></td>
129<td> 4x4 matrix (float[16])
130</td>
131</tr>
132<tr>
133<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
134<td> TRUE on success, FALSE else
135</td>
136</tr>
137</tbody>
138</table></div>
139</div>
140<hr>
141<div class="refsect2" lang="en">
142<a name="g3d-matrix-multiply"></a><h3>g3d_matrix_multiply ()</h3>
143<pre class="programlisting"><a
144href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
145>gboolean</a> g3d_matrix_multiply (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *m1,
146 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *m2,
147 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);</pre>
148<p>
149Multiplies the matrixes.</p>
150<p>
151
152</p>
153<div class="variablelist"><table border="0">
154<col align="left" valign="top">
155<tbody>
156<tr>
157<td><p><span class="term"><em class="parameter"><code>m1</code></em> :</span></p></td>
158<td> first matrix
159</td>
160</tr>
161<tr>
162<td><p><span class="term"><em class="parameter"><code>m2</code></em> :</span></p></td>
163<td> second matrix
164</td>
165</tr>
166<tr>
167<td><p><span class="term"><em class="parameter"><code>rm</code></em> :</span></p></td>
168<td> resulting matrix
169</td>
170</tr>
171<tr>
172<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
173<td> TRUE on success, FALSE else
174</td>
175</tr>
176</tbody>
177</table></div>
178</div>
179<hr>
180<div class="refsect2" lang="en">
181<a name="g3d-matrix-translate"></a><h3>g3d_matrix_translate ()</h3>
182<pre class="programlisting"><a
183href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
184>gboolean</a> g3d_matrix_translate (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> x,
185 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> y,
186 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> z,
187 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);</pre>
188<p>
189Adds a translation to the the matrix.</p>
190<p>
191
192</p>
193<div class="variablelist"><table border="0">
194<col align="left" valign="top">
195<tbody>
196<tr>
197<td><p><span class="term"><em class="parameter"><code>x</code></em> :</span></p></td>
198<td> x translation
199</td>
200</tr>
201<tr>
202<td><p><span class="term"><em class="parameter"><code>y</code></em> :</span></p></td>
203<td> y translation
204</td>
205</tr>
206<tr>
207<td><p><span class="term"><em class="parameter"><code>z</code></em> :</span></p></td>
208<td> z translation
209</td>
210</tr>
211<tr>
212<td><p><span class="term"><em class="parameter"><code>rm</code></em> :</span></p></td>
213<td> resulting matrix
214</td>
215</tr>
216<tr>
217<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
218<td> TRUE on success, FALSE else
219</td>
220</tr>
221</tbody>
222</table></div>
223</div>
224<hr>
225<div class="refsect2" lang="en">
226<a name="g3d-matrix-rotate"></a><h3>g3d_matrix_rotate ()</h3>
227<pre class="programlisting"><a
228href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
229>gboolean</a> g3d_matrix_rotate (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> angle,
230 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> ax,
231 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> ay,
232 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> az,
233 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);</pre>
234<p>
235Adds a rotation to the matrix.</p>
236<p>
237
238</p>
239<div class="variablelist"><table border="0">
240<col align="left" valign="top">
241<tbody>
242<tr>
243<td><p><span class="term"><em class="parameter"><code>angle</code></em> :</span></p></td>
244<td> rotation angle
245</td>
246</tr>
247<tr>
248<td><p><span class="term"><em class="parameter"><code>ax</code></em> :</span></p></td>
249<td> x component of rotation axis
250</td>
251</tr>
252<tr>
253<td><p><span class="term"><em class="parameter"><code>ay</code></em> :</span></p></td>
254<td> y component of rotation axis
255</td>
256</tr>
257<tr>
258<td><p><span class="term"><em class="parameter"><code>az</code></em> :</span></p></td>
259<td> z component of rotation axis
260</td>
261</tr>
262<tr>
263<td><p><span class="term"><em class="parameter"><code>rm</code></em> :</span></p></td>
264<td> resulting matrix
265</td>
266</tr>
267<tr>
268<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
269<td> TRUE on success, FALSE else
270</td>
271</tr>
272</tbody>
273</table></div>
274</div>
275<hr>
276<div class="refsect2" lang="en">
277<a name="g3d-matrix-rotate-xyz"></a><h3>g3d_matrix_rotate_xyz ()</h3>
278<pre class="programlisting"><a
279href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
280>gboolean</a> g3d_matrix_rotate_xyz (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> rx,
281 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> ry,
282 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> rz,
283 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);</pre>
284<p>
285Adds a rotation around the 3 coordinate system axes to the matrix.</p>
286<p>
287
288</p>
289<div class="variablelist"><table border="0">
290<col align="left" valign="top">
291<tbody>
292<tr>
293<td><p><span class="term"><em class="parameter"><code>rx</code></em> :</span></p></td>
294<td> rotation around x axis
295</td>
296</tr>
297<tr>
298<td><p><span class="term"><em class="parameter"><code>ry</code></em> :</span></p></td>
299<td> rotation around y axis
300</td>
301</tr>
302<tr>
303<td><p><span class="term"><em class="parameter"><code>rz</code></em> :</span></p></td>
304<td> rotation around z axis
305</td>
306</tr>
307<tr>
308<td><p><span class="term"><em class="parameter"><code>rm</code></em> :</span></p></td>
309<td> resulting matrix
310</td>
311</tr>
312<tr>
313<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
314<td> TRUE on success, FALSE else
315</td>
316</tr>
317</tbody>
318</table></div>
319</div>
320<hr>
321<div class="refsect2" lang="en">
322<a name="g3d-matrix-scale"></a><h3>g3d_matrix_scale ()</h3>
323<pre class="programlisting"><a
324href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
325>gboolean</a> g3d_matrix_scale (<a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> x,
326 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> y,
327 <a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> z,
328 <a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *rm);</pre>
329<p>
330Adds a scaling to the matrix.</p>
331<p>
332
333</p>
334<div class="variablelist"><table border="0">
335<col align="left" valign="top">
336<tbody>
337<tr>
338<td><p><span class="term"><em class="parameter"><code>x</code></em> :</span></p></td>
339<td> x factor
340</td>
341</tr>
342<tr>
343<td><p><span class="term"><em class="parameter"><code>y</code></em> :</span></p></td>
344<td> y factor
345</td>
346</tr>
347<tr>
348<td><p><span class="term"><em class="parameter"><code>z</code></em> :</span></p></td>
349<td> z factor
350</td>
351</tr>
352<tr>
353<td><p><span class="term"><em class="parameter"><code>rm</code></em> :</span></p></td>
354<td> resulting matrix
355</td>
356</tr>
357<tr>
358<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
359<td> TRUE on success, FALSE else
360</td>
361</tr>
362</tbody>
363</table></div>
364</div>
365<hr>
366<div class="refsect2" lang="en">
367<a name="g3d-matrix-transpose"></a><h3>g3d_matrix_transpose ()</h3>
368<pre class="programlisting"><a
369href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
370>gboolean</a> g3d_matrix_transpose (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);</pre>
371<p>
372Transposes the matrix.</p>
373<p>
374
375</p>
376<div class="variablelist"><table border="0">
377<col align="left" valign="top">
378<tbody>
379<tr>
380<td><p><span class="term"><em class="parameter"><code>matrix</code></em> :</span></p></td>
381<td> the matrix
382</td>
383</tr>
384<tr>
385<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
386<td> TRUE on success, FALSE else
387</td>
388</tr>
389</tbody>
390</table></div>
391</div>
392<hr>
393<div class="refsect2" lang="en">
394<a name="g3d-matrix-determinant"></a><h3>g3d_matrix_determinant ()</h3>
395<pre class="programlisting"><a class="link" href="libg3d-types.html#G3DFloat" title="G3DFloat">G3DFloat</a> g3d_matrix_determinant (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);</pre>
396<p>
397Calculate the determinant of the matrix (FIXME: not verified).</p>
398<p>
399
400</p>
401<div class="variablelist"><table border="0">
402<col align="left" valign="top">
403<tbody>
404<tr>
405<td><p><span class="term"><em class="parameter"><code>matrix</code></em> :</span></p></td>
406<td> the matrix
407</td>
408</tr>
409<tr>
410<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
411<td> the determinant.
412</td>
413</tr>
414</tbody>
415</table></div>
416</div>
417<hr>
418<div class="refsect2" lang="en">
419<a name="g3d-matrix-dump"></a><h3>g3d_matrix_dump ()</h3>
420<pre class="programlisting"><a
421href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
422>gboolean</a> g3d_matrix_dump (<a class="link" href="libg3d-matrix.html#G3DMatrix" title="G3DMatrix">G3DMatrix</a> *matrix);</pre>
423<p>
424If debugging is enabled, this function dump the matrix to stderr.</p>
425<p>
426
427</p>
428<div class="variablelist"><table border="0">
429<col align="left" valign="top">
430<tbody>
431<tr>
432<td><p><span class="term"><em class="parameter"><code>matrix</code></em> :</span></p></td>
433<td> the matrix
434</td>
435</tr>
436<tr>
437<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
438<td> TRUE if matrix is dumped, FALSE else
439</td>
440</tr>
441</tbody>
442</table></div>
443</div>
444</div>
445</div>
446<div class="footer">
447<hr>
448 Generated by GTK-Doc V1.10</div>
449</body>
450</html>