rename upstream-man-pages to upstream-doc
[clinton/guile-figl.git] / upstream-doc / man2 / xhtml / glMultTransposeMatrix.xml
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd">
2 <!-- saved from url=(0013)about:internet -->
3 <?xml-stylesheet type="text/xsl" href="mathml.xsl"?><html xmlns="http://www.w3.org/1999/xhtml" xmlns:pref="http://www.w3.org/2002/Math/preference" pref:renderer="mathplayer-dl"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>glMultTransposeMatrix</title><meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /></head><body><div class="refentry" lang="en" xml:lang="en"><a id="glMultTransposeMatrix"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>glMultTransposeMatrix — multiply the current matrix with the specified row-major ordered matrix</p></div><div class="refsynopsisdiv"><h2>C Specification</h2><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"><tr><td><code class="funcdef">void <b class="fsfunc">glMultTransposeMatrixd</b>(</code></td><td>const GLdouble *  </td><td><var class="pdparam">m</var><code>)</code>;</td></tr></table></div><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"><tr><td><code class="funcdef">void <b class="fsfunc">glMultTransposeMatrixf</b>(</code></td><td>const GLfloat *  </td><td><var class="pdparam">m</var><code>)</code>;</td></tr></table></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="parameters"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>m</code></em></span></dt><dd><p>
4 Points to 16 consecutive values that are used as the elements of
5 a
6 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
7
8 <mml:mrow>
9 <mml:mn>4</mml:mn>
10 <mml:mo>×</mml:mo>
11 <mml:mn>4</mml:mn>
12 </mml:mrow>
13 </mml:math>
14 row-major matrix.
15 </p></dd></dl></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="description"></a><h2>Description</h2><p>
16 <code class="function">glMultTransposeMatrix</code> multiplies the current matrix with the one specified using <em class="parameter"><code>m</code></em>, and
17 replaces the current matrix with the product.
18 </p><p>
19 The current matrix is determined by the current matrix mode (see
20 <a class="citerefentry" href="glMatrixMode.xml"><span class="citerefentry"><span class="refentrytitle">glMatrixMode</span></span></a>). It is either the projection matrix, modelview matrix,
21 or the texture matrix.
22 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="examples"></a><h2>Examples</h2><p>
23 If the current matrix is
24 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mml:mi mathvariant="italic">C</mml:mi></mml:math>
25 and the coordinates
26 to be transformed are
27 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
28
29 <mml:mrow>
30 <mml:mi mathvariant="italic">v</mml:mi>
31 <mml:mo>=</mml:mo>
32 <mml:mfenced open="(" close=")">
33 <mml:mrow>
34 <mml:mi mathvariant="italic">v</mml:mi>
35 <mml:mo></mml:mo>
36 <mml:mfenced open="[" close="]">
37 <mml:mn>0</mml:mn>
38 </mml:mfenced>
39 </mml:mrow>
40 <mml:mrow>
41 <mml:mi mathvariant="italic">v</mml:mi>
42 <mml:mo></mml:mo>
43 <mml:mfenced open="[" close="]">
44 <mml:mn>1</mml:mn>
45 </mml:mfenced>
46 </mml:mrow>
47 <mml:mrow>
48 <mml:mi mathvariant="italic">v</mml:mi>
49 <mml:mo></mml:mo>
50 <mml:mfenced open="[" close="]">
51 <mml:mn>2</mml:mn>
52 </mml:mfenced>
53 </mml:mrow>
54 <mml:mrow>
55 <mml:mi mathvariant="italic">v</mml:mi>
56 <mml:mo></mml:mo>
57 <mml:mfenced open="[" close="]">
58 <mml:mn>3</mml:mn>
59 </mml:mfenced>
60 </mml:mrow>
61 </mml:mfenced>
62 </mml:mrow>
63 </mml:math>,
64 then the current transformation is
65 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
66
67 <mml:mrow>
68 <mml:mi mathvariant="italic">C</mml:mi>
69 <mml:mo>×</mml:mo>
70 <mml:mi mathvariant="italic">v</mml:mi>
71 </mml:mrow>
72 </mml:math>,
73 or
74 </p><p>
75 </p><div class="informalequation"><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
76
77 <mml:mrow>
78 <mml:mfenced open="(" close=")">
79 <mml:mtable>
80 <mml:mtr>
81 <mml:mtd>
82 <mml:mrow>
83 <mml:mi mathvariant="italic">c</mml:mi>
84 <mml:mo></mml:mo>
85 <mml:mfenced open="[" close="]">
86 <mml:mn>0</mml:mn>
87 </mml:mfenced>
88 </mml:mrow>
89 </mml:mtd>
90 <mml:mtd>
91 <mml:mrow>
92 <mml:mi mathvariant="italic">c</mml:mi>
93 <mml:mo></mml:mo>
94 <mml:mfenced open="[" close="]">
95 <mml:mn>4</mml:mn>
96 </mml:mfenced>
97 </mml:mrow>
98 </mml:mtd>
99 <mml:mtd>
100 <mml:mrow>
101 <mml:mi mathvariant="italic">c</mml:mi>
102 <mml:mo></mml:mo>
103 <mml:mfenced open="[" close="]">
104 <mml:mn>8</mml:mn>
105 </mml:mfenced>
106 </mml:mrow>
107 </mml:mtd>
108 <mml:mtd>
109 <mml:mrow>
110 <mml:mi mathvariant="italic">c</mml:mi>
111 <mml:mo></mml:mo>
112 <mml:mfenced open="[" close="]">
113 <mml:mn>12</mml:mn>
114 </mml:mfenced>
115 </mml:mrow>
116 </mml:mtd>
117 </mml:mtr>
118 <mml:mtr>
119 <mml:mtd>
120 <mml:mrow>
121 <mml:mi mathvariant="italic">c</mml:mi>
122 <mml:mo></mml:mo>
123 <mml:mfenced open="[" close="]">
124 <mml:mn>1</mml:mn>
125 </mml:mfenced>
126 </mml:mrow>
127 </mml:mtd>
128 <mml:mtd>
129 <mml:mrow>
130 <mml:mi mathvariant="italic">c</mml:mi>
131 <mml:mo></mml:mo>
132 <mml:mfenced open="[" close="]">
133 <mml:mn>5</mml:mn>
134 </mml:mfenced>
135 </mml:mrow>
136 </mml:mtd>
137 <mml:mtd>
138 <mml:mrow>
139 <mml:mi mathvariant="italic">c</mml:mi>
140 <mml:mo></mml:mo>
141 <mml:mfenced open="[" close="]">
142 <mml:mn>9</mml:mn>
143 </mml:mfenced>
144 </mml:mrow>
145 </mml:mtd>
146 <mml:mtd>
147 <mml:mrow>
148 <mml:mi mathvariant="italic">c</mml:mi>
149 <mml:mo></mml:mo>
150 <mml:mfenced open="[" close="]">
151 <mml:mn>13</mml:mn>
152 </mml:mfenced>
153 </mml:mrow>
154 </mml:mtd>
155 </mml:mtr>
156 <mml:mtr>
157 <mml:mtd>
158 <mml:mrow>
159 <mml:mi mathvariant="italic">c</mml:mi>
160 <mml:mo></mml:mo>
161 <mml:mfenced open="[" close="]">
162 <mml:mn>2</mml:mn>
163 </mml:mfenced>
164 </mml:mrow>
165 </mml:mtd>
166 <mml:mtd>
167 <mml:mrow>
168 <mml:mi mathvariant="italic">c</mml:mi>
169 <mml:mo></mml:mo>
170 <mml:mfenced open="[" close="]">
171 <mml:mn>6</mml:mn>
172 </mml:mfenced>
173 </mml:mrow>
174 </mml:mtd>
175 <mml:mtd>
176 <mml:mrow>
177 <mml:mi mathvariant="italic">c</mml:mi>
178 <mml:mo></mml:mo>
179 <mml:mfenced open="[" close="]">
180 <mml:mn>10</mml:mn>
181 </mml:mfenced>
182 </mml:mrow>
183 </mml:mtd>
184 <mml:mtd>
185 <mml:mrow>
186 <mml:mi mathvariant="italic">c</mml:mi>
187 <mml:mo></mml:mo>
188 <mml:mfenced open="[" close="]">
189 <mml:mn>14</mml:mn>
190 </mml:mfenced>
191 </mml:mrow>
192 </mml:mtd>
193 </mml:mtr>
194 <mml:mtr>
195 <mml:mtd>
196 <mml:mrow>
197 <mml:mi mathvariant="italic">c</mml:mi>
198 <mml:mo></mml:mo>
199 <mml:mfenced open="[" close="]">
200 <mml:mn>3</mml:mn>
201 </mml:mfenced>
202 </mml:mrow>
203 </mml:mtd>
204 <mml:mtd>
205 <mml:mrow>
206 <mml:mi mathvariant="italic">c</mml:mi>
207 <mml:mo></mml:mo>
208 <mml:mfenced open="[" close="]">
209 <mml:mn>7</mml:mn>
210 </mml:mfenced>
211 </mml:mrow>
212 </mml:mtd>
213 <mml:mtd>
214 <mml:mrow>
215 <mml:mi mathvariant="italic">c</mml:mi>
216 <mml:mo></mml:mo>
217 <mml:mfenced open="[" close="]">
218 <mml:mn>11</mml:mn>
219 </mml:mfenced>
220 </mml:mrow>
221 </mml:mtd>
222 <mml:mtd>
223 <mml:mrow>
224 <mml:mi mathvariant="italic">c</mml:mi>
225 <mml:mo></mml:mo>
226 <mml:mfenced open="[" close="]">
227 <mml:mn>15</mml:mn>
228 </mml:mfenced>
229 </mml:mrow>
230 </mml:mtd>
231 </mml:mtr>
232 </mml:mtable>
233 </mml:mfenced>
234 <mml:mo>×</mml:mo>
235 <mml:mfenced open="(" close=")">
236 <mml:mtable>
237 <mml:mtr>
238 <mml:mtd>
239 <mml:mrow>
240 <mml:mi mathvariant="italic">v</mml:mi>
241 <mml:mo></mml:mo>
242 <mml:mfenced open="[" close="]">
243 <mml:mn>0</mml:mn>
244 </mml:mfenced>
245 </mml:mrow>
246 </mml:mtd>
247 </mml:mtr>
248 <mml:mtr>
249 <mml:mtd>
250 <mml:mrow>
251 <mml:mi mathvariant="italic">v</mml:mi>
252 <mml:mo></mml:mo>
253 <mml:mfenced open="[" close="]">
254 <mml:mn>1</mml:mn>
255 </mml:mfenced>
256 </mml:mrow>
257 </mml:mtd>
258 </mml:mtr>
259 <mml:mtr>
260 <mml:mtd>
261 <mml:mrow>
262 <mml:mi mathvariant="italic">v</mml:mi>
263 <mml:mo></mml:mo>
264 <mml:mfenced open="[" close="]">
265 <mml:mn>2</mml:mn>
266 </mml:mfenced>
267 </mml:mrow>
268 </mml:mtd>
269 </mml:mtr>
270 <mml:mtr>
271 <mml:mtd>
272 <mml:mrow>
273 <mml:mi mathvariant="italic">v</mml:mi>
274 <mml:mo></mml:mo>
275 <mml:mfenced open="[" close="]">
276 <mml:mn>3</mml:mn>
277 </mml:mfenced>
278 </mml:mrow>
279 </mml:mtd>
280 </mml:mtr>
281 </mml:mtable>
282 </mml:mfenced>
283 </mml:mrow>
284 </mml:math></div><p>
285 </p><p>
286 </p><p>
287 Calling <code class="function">glMultTransposeMatrix</code> with an argument of
288 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
289
290 <mml:mrow>
291 <mml:mrow>
292 <mml:mi mathvariant="italic">m</mml:mi>
293 <mml:mo></mml:mo>
294 <mml:mfenced open="[" close="]">
295 <mml:mn>16</mml:mn>
296 </mml:mfenced>
297 </mml:mrow>
298 <mml:mo>=</mml:mo>
299 <mml:mfenced open="{" close="}">
300 <mml:mrow>
301 <mml:mi mathvariant="italic">m</mml:mi>
302 <mml:mo></mml:mo>
303 <mml:mfenced open="[" close="]">
304 <mml:mn>0</mml:mn>
305 </mml:mfenced>
306 </mml:mrow>
307 <mml:mrow>
308 <mml:mi mathvariant="italic">m</mml:mi>
309 <mml:mo></mml:mo>
310 <mml:mfenced open="[" close="]">
311 <mml:mn>1</mml:mn>
312 </mml:mfenced>
313 </mml:mrow>
314 <mml:mi mathvariant="italic">...</mml:mi>
315 <mml:mrow>
316 <mml:mi mathvariant="italic">m</mml:mi>
317 <mml:mo></mml:mo>
318 <mml:mfenced open="[" close="]">
319 <mml:mn>15</mml:mn>
320 </mml:mfenced>
321 </mml:mrow>
322 </mml:mfenced>
323 </mml:mrow>
324 </mml:math>
325 replaces the current transformation with
326 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
327
328 <mml:mrow>
329 <mml:mfenced open="(" close=")">
330 <mml:mrow>
331 <mml:mi mathvariant="italic">C</mml:mi>
332 <mml:mo>×</mml:mo>
333 <mml:mi mathvariant="italic">M</mml:mi>
334 </mml:mrow>
335 </mml:mfenced>
336 <mml:mo>×</mml:mo>
337 <mml:mi mathvariant="italic">v</mml:mi>
338 </mml:mrow>
339 </mml:math>,
340 or
341 </p><p>
342 </p><div class="informalequation"><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
343
344 <mml:mrow>
345 <mml:mfenced open="(" close=")">
346 <mml:mtable>
347 <mml:mtr>
348 <mml:mtd>
349 <mml:mrow>
350 <mml:mi mathvariant="italic">c</mml:mi>
351 <mml:mo></mml:mo>
352 <mml:mfenced open="[" close="]">
353 <mml:mn>0</mml:mn>
354 </mml:mfenced>
355 </mml:mrow>
356 </mml:mtd>
357 <mml:mtd>
358 <mml:mrow>
359 <mml:mi mathvariant="italic">c</mml:mi>
360 <mml:mo></mml:mo>
361 <mml:mfenced open="[" close="]">
362 <mml:mn>4</mml:mn>
363 </mml:mfenced>
364 </mml:mrow>
365 </mml:mtd>
366 <mml:mtd>
367 <mml:mrow>
368 <mml:mi mathvariant="italic">c</mml:mi>
369 <mml:mo></mml:mo>
370 <mml:mfenced open="[" close="]">
371 <mml:mn>8</mml:mn>
372 </mml:mfenced>
373 </mml:mrow>
374 </mml:mtd>
375 <mml:mtd>
376 <mml:mrow>
377 <mml:mi mathvariant="italic">c</mml:mi>
378 <mml:mo></mml:mo>
379 <mml:mfenced open="[" close="]">
380 <mml:mn>12</mml:mn>
381 </mml:mfenced>
382 </mml:mrow>
383 </mml:mtd>
384 </mml:mtr>
385 <mml:mtr>
386 <mml:mtd>
387 <mml:mrow>
388 <mml:mi mathvariant="italic">c</mml:mi>
389 <mml:mo></mml:mo>
390 <mml:mfenced open="[" close="]">
391 <mml:mn>1</mml:mn>
392 </mml:mfenced>
393 </mml:mrow>
394 </mml:mtd>
395 <mml:mtd>
396 <mml:mrow>
397 <mml:mi mathvariant="italic">c</mml:mi>
398 <mml:mo></mml:mo>
399 <mml:mfenced open="[" close="]">
400 <mml:mn>5</mml:mn>
401 </mml:mfenced>
402 </mml:mrow>
403 </mml:mtd>
404 <mml:mtd>
405 <mml:mrow>
406 <mml:mi mathvariant="italic">c</mml:mi>
407 <mml:mo></mml:mo>
408 <mml:mfenced open="[" close="]">
409 <mml:mn>9</mml:mn>
410 </mml:mfenced>
411 </mml:mrow>
412 </mml:mtd>
413 <mml:mtd>
414 <mml:mrow>
415 <mml:mi mathvariant="italic">c</mml:mi>
416 <mml:mo></mml:mo>
417 <mml:mfenced open="[" close="]">
418 <mml:mn>13</mml:mn>
419 </mml:mfenced>
420 </mml:mrow>
421 </mml:mtd>
422 </mml:mtr>
423 <mml:mtr>
424 <mml:mtd>
425 <mml:mrow>
426 <mml:mi mathvariant="italic">c</mml:mi>
427 <mml:mo></mml:mo>
428 <mml:mfenced open="[" close="]">
429 <mml:mn>2</mml:mn>
430 </mml:mfenced>
431 </mml:mrow>
432 </mml:mtd>
433 <mml:mtd>
434 <mml:mrow>
435 <mml:mi mathvariant="italic">c</mml:mi>
436 <mml:mo></mml:mo>
437 <mml:mfenced open="[" close="]">
438 <mml:mn>6</mml:mn>
439 </mml:mfenced>
440 </mml:mrow>
441 </mml:mtd>
442 <mml:mtd>
443 <mml:mrow>
444 <mml:mi mathvariant="italic">c</mml:mi>
445 <mml:mo></mml:mo>
446 <mml:mfenced open="[" close="]">
447 <mml:mn>10</mml:mn>
448 </mml:mfenced>
449 </mml:mrow>
450 </mml:mtd>
451 <mml:mtd>
452 <mml:mrow>
453 <mml:mi mathvariant="italic">c</mml:mi>
454 <mml:mo></mml:mo>
455 <mml:mfenced open="[" close="]">
456 <mml:mn>14</mml:mn>
457 </mml:mfenced>
458 </mml:mrow>
459 </mml:mtd>
460 </mml:mtr>
461 <mml:mtr>
462 <mml:mtd>
463 <mml:mrow>
464 <mml:mi mathvariant="italic">c</mml:mi>
465 <mml:mo></mml:mo>
466 <mml:mfenced open="[" close="]">
467 <mml:mn>3</mml:mn>
468 </mml:mfenced>
469 </mml:mrow>
470 </mml:mtd>
471 <mml:mtd>
472 <mml:mrow>
473 <mml:mi mathvariant="italic">c</mml:mi>
474 <mml:mo></mml:mo>
475 <mml:mfenced open="[" close="]">
476 <mml:mn>7</mml:mn>
477 </mml:mfenced>
478 </mml:mrow>
479 </mml:mtd>
480 <mml:mtd>
481 <mml:mrow>
482 <mml:mi mathvariant="italic">c</mml:mi>
483 <mml:mo></mml:mo>
484 <mml:mfenced open="[" close="]">
485 <mml:mn>11</mml:mn>
486 </mml:mfenced>
487 </mml:mrow>
488 </mml:mtd>
489 <mml:mtd>
490 <mml:mrow>
491 <mml:mi mathvariant="italic">c</mml:mi>
492 <mml:mo></mml:mo>
493 <mml:mfenced open="[" close="]">
494 <mml:mn>15</mml:mn>
495 </mml:mfenced>
496 </mml:mrow>
497 </mml:mtd>
498 </mml:mtr>
499 </mml:mtable>
500 </mml:mfenced>
501 <mml:mo>×</mml:mo>
502 <mml:mfenced open="(" close=")">
503 <mml:mtable>
504 <mml:mtr>
505 <mml:mtd>
506 <mml:mrow>
507 <mml:mi mathvariant="italic">m</mml:mi>
508 <mml:mo></mml:mo>
509 <mml:mfenced open="[" close="]">
510 <mml:mn>0</mml:mn>
511 </mml:mfenced>
512 </mml:mrow>
513 </mml:mtd>
514 <mml:mtd>
515 <mml:mrow>
516 <mml:mi mathvariant="italic">m</mml:mi>
517 <mml:mo></mml:mo>
518 <mml:mfenced open="[" close="]">
519 <mml:mn>1</mml:mn>
520 </mml:mfenced>
521 </mml:mrow>
522 </mml:mtd>
523 <mml:mtd>
524 <mml:mrow>
525 <mml:mi mathvariant="italic">m</mml:mi>
526 <mml:mo></mml:mo>
527 <mml:mfenced open="[" close="]">
528 <mml:mn>2</mml:mn>
529 </mml:mfenced>
530 </mml:mrow>
531 </mml:mtd>
532 <mml:mtd>
533 <mml:mrow>
534 <mml:mi mathvariant="italic">m</mml:mi>
535 <mml:mo></mml:mo>
536 <mml:mfenced open="[" close="]">
537 <mml:mn>3</mml:mn>
538 </mml:mfenced>
539 </mml:mrow>
540 </mml:mtd>
541 </mml:mtr>
542 <mml:mtr>
543 <mml:mtd>
544 <mml:mrow>
545 <mml:mi mathvariant="italic">m</mml:mi>
546 <mml:mo></mml:mo>
547 <mml:mfenced open="[" close="]">
548 <mml:mn>4</mml:mn>
549 </mml:mfenced>
550 </mml:mrow>
551 </mml:mtd>
552 <mml:mtd>
553 <mml:mrow>
554 <mml:mi mathvariant="italic">m</mml:mi>
555 <mml:mo></mml:mo>
556 <mml:mfenced open="[" close="]">
557 <mml:mn>5</mml:mn>
558 </mml:mfenced>
559 </mml:mrow>
560 </mml:mtd>
561 <mml:mtd>
562 <mml:mrow>
563 <mml:mi mathvariant="italic">m</mml:mi>
564 <mml:mo></mml:mo>
565 <mml:mfenced open="[" close="]">
566 <mml:mn>6</mml:mn>
567 </mml:mfenced>
568 </mml:mrow>
569 </mml:mtd>
570 <mml:mtd>
571 <mml:mrow>
572 <mml:mi mathvariant="italic">m</mml:mi>
573 <mml:mo></mml:mo>
574 <mml:mfenced open="[" close="]">
575 <mml:mn>7</mml:mn>
576 </mml:mfenced>
577 </mml:mrow>
578 </mml:mtd>
579 </mml:mtr>
580 <mml:mtr>
581 <mml:mtd>
582 <mml:mrow>
583 <mml:mi mathvariant="italic">m</mml:mi>
584 <mml:mo></mml:mo>
585 <mml:mfenced open="[" close="]">
586 <mml:mn>8</mml:mn>
587 </mml:mfenced>
588 </mml:mrow>
589 </mml:mtd>
590 <mml:mtd>
591 <mml:mrow>
592 <mml:mi mathvariant="italic">m</mml:mi>
593 <mml:mo></mml:mo>
594 <mml:mfenced open="[" close="]">
595 <mml:mn>9</mml:mn>
596 </mml:mfenced>
597 </mml:mrow>
598 </mml:mtd>
599 <mml:mtd>
600 <mml:mrow>
601 <mml:mi mathvariant="italic">m</mml:mi>
602 <mml:mo></mml:mo>
603 <mml:mfenced open="[" close="]">
604 <mml:mn>10</mml:mn>
605 </mml:mfenced>
606 </mml:mrow>
607 </mml:mtd>
608 <mml:mtd>
609 <mml:mrow>
610 <mml:mi mathvariant="italic">m</mml:mi>
611 <mml:mo></mml:mo>
612 <mml:mfenced open="[" close="]">
613 <mml:mn>11</mml:mn>
614 </mml:mfenced>
615 </mml:mrow>
616 </mml:mtd>
617 </mml:mtr>
618 <mml:mtr>
619 <mml:mtd>
620 <mml:mrow>
621 <mml:mi mathvariant="italic">m</mml:mi>
622 <mml:mo></mml:mo>
623 <mml:mfenced open="[" close="]">
624 <mml:mn>12</mml:mn>
625 </mml:mfenced>
626 </mml:mrow>
627 </mml:mtd>
628 <mml:mtd>
629 <mml:mrow>
630 <mml:mi mathvariant="italic">m</mml:mi>
631 <mml:mo></mml:mo>
632 <mml:mfenced open="[" close="]">
633 <mml:mn>13</mml:mn>
634 </mml:mfenced>
635 </mml:mrow>
636 </mml:mtd>
637 <mml:mtd>
638 <mml:mrow>
639 <mml:mi mathvariant="italic">m</mml:mi>
640 <mml:mo></mml:mo>
641 <mml:mfenced open="[" close="]">
642 <mml:mn>14</mml:mn>
643 </mml:mfenced>
644 </mml:mrow>
645 </mml:mtd>
646 <mml:mtd>
647 <mml:mrow>
648 <mml:mi mathvariant="italic">m</mml:mi>
649 <mml:mo></mml:mo>
650 <mml:mfenced open="[" close="]">
651 <mml:mn>15</mml:mn>
652 </mml:mfenced>
653 </mml:mrow>
654 </mml:mtd>
655 </mml:mtr>
656 </mml:mtable>
657 </mml:mfenced>
658 <mml:mo>×</mml:mo>
659 <mml:mfenced open="(" close=")">
660 <mml:mtable>
661 <mml:mtr>
662 <mml:mtd>
663 <mml:mrow>
664 <mml:mi mathvariant="italic">v</mml:mi>
665 <mml:mo></mml:mo>
666 <mml:mfenced open="[" close="]">
667 <mml:mn>0</mml:mn>
668 </mml:mfenced>
669 </mml:mrow>
670 </mml:mtd>
671 </mml:mtr>
672 <mml:mtr>
673 <mml:mtd>
674 <mml:mrow>
675 <mml:mi mathvariant="italic">v</mml:mi>
676 <mml:mo></mml:mo>
677 <mml:mfenced open="[" close="]">
678 <mml:mn>1</mml:mn>
679 </mml:mfenced>
680 </mml:mrow>
681 </mml:mtd>
682 </mml:mtr>
683 <mml:mtr>
684 <mml:mtd>
685 <mml:mrow>
686 <mml:mi mathvariant="italic">v</mml:mi>
687 <mml:mo></mml:mo>
688 <mml:mfenced open="[" close="]">
689 <mml:mn>2</mml:mn>
690 </mml:mfenced>
691 </mml:mrow>
692 </mml:mtd>
693 </mml:mtr>
694 <mml:mtr>
695 <mml:mtd>
696 <mml:mrow>
697 <mml:mi mathvariant="italic">v</mml:mi>
698 <mml:mo></mml:mo>
699 <mml:mfenced open="[" close="]">
700 <mml:mn>3</mml:mn>
701 </mml:mfenced>
702 </mml:mrow>
703 </mml:mtd>
704 </mml:mtr>
705 </mml:mtable>
706 </mml:mfenced>
707 </mml:mrow>
708 </mml:math></div><p>
709 </p><p>
710 </p><p>
711 Where
712 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mml:mi mathvariant="italic">v</mml:mi></mml:math>
713 is represented as a
714 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
715
716 <mml:mrow>
717 <mml:mn>4</mml:mn>
718 <mml:mo>×</mml:mo>
719 <mml:mn>1</mml:mn>
720 </mml:mrow>
721 </mml:math>
722 matrix.
723 </p><p>
724 Calling <code class="function">glMultTransposeMatrix</code> with matrix
725 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mml:mi mathvariant="italic">M</mml:mi></mml:math>
726 is identical in operation to
727 <a class="citerefentry" href="glMultMatrix.xml"><span class="citerefentry"><span class="refentrytitle">glMultMatrix</span></span></a> with
728 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
729
730 <mml:msup><mml:mi mathvariant="italic">M</mml:mi>
731 <mml:mi mathvariant="italic">T</mml:mi>
732 </mml:msup>
733 </mml:math>,
734 where
735 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mml:mi mathvariant="italic">T</mml:mi></mml:math>
736 represents the transpose.
737 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="notes"></a><h2>Notes</h2><p>
738 <code class="function">glMultTransposeMatrix</code> is available only if the GL version is 1.3 or greater.
739 </p><p>
740 While the elements of the matrix may be specified with
741 single or double precision, the GL may store or operate on these
742 values in less-than-single precision.
743 </p><p>
744 The order of the multiplication is important. For example, if the current
745 transformation is a rotation, and <code class="function">glMultTransposeMatrix</code> is called with a translation matrix,
746 the translation is done directly on the coordinates to be transformed,
747 while the rotation is done on the results of that translation.
748 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="errors"></a><h2>Errors</h2><p>
749 <code class="constant">GL_INVALID_OPERATION</code> is generated if <code class="function">glMultTransposeMatrix</code>
750 is executed between the execution of <a class="citerefentry" href="glBegin.xml"><span class="citerefentry"><span class="refentrytitle">glBegin</span></span></a>
751 and the corresponding execution of <a class="citerefentry" href="glEnd.xml"><span class="citerefentry"><span class="refentrytitle">glEnd</span></span></a>.
752 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="associatedgets"></a><h2>Associated Gets</h2><p>
753 <a class="citerefentry" href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> with argument <code class="constant">GL_MATRIX_MODE</code>
754 </p><p>
755 <a class="citerefentry" href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> with argument <code class="constant">GL_COLOR_MATRIX</code>
756 </p><p>
757 <a class="citerefentry" href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> with argument <code class="constant">GL_MODELVIEW_MATRIX</code>
758 </p><p>
759 <a class="citerefentry" href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> with argument <code class="constant">GL_PROJECTION_MATRIX</code>
760 </p><p>
761 <a class="citerefentry" href="glGet.xml"><span class="citerefentry"><span class="refentrytitle">glGet</span></span></a> with argument <code class="constant">GL_TEXTURE_MATRIX</code>
762 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="seealso"></a><h2>See Also</h2><p>
763 <a class="citerefentry" href="glLoadIdentity.xml"><span class="citerefentry"><span class="refentrytitle">glLoadIdentity</span></span></a>,
764 <a class="citerefentry" href="glLoadMatrix.xml"><span class="citerefentry"><span class="refentrytitle">glLoadMatrix</span></span></a>,
765 <a class="citerefentry" href="glLoadTransposeMatrix.xml"><span class="citerefentry"><span class="refentrytitle">glLoadTransposeMatrix</span></span></a>,
766 <a class="citerefentry" href="glMatrixMode.xml"><span class="citerefentry"><span class="refentrytitle">glMatrixMode</span></span></a>,
767 <a class="citerefentry" href="glPushMatrix.xml"><span class="citerefentry"><span class="refentrytitle">glPushMatrix</span></span></a>
768 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="Copyright"></a><h2>Copyright</h2><p>
769 Copyright <span class="trademark"></span>© 1991-2006
770 Silicon Graphics, Inc. This document is licensed under the SGI
771 Free Software B License. For details, see
772 <a class="ulink" href="http://oss.sgi.com/projects/FreeB/" target="_top">http://oss.sgi.com/projects/FreeB/</a>.
773 </p></div></div></body></html>