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
6 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
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.
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>
27 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
30 <mml:mi mathvariant=
"italic">v
</mml:mi>
32 <mml:mfenced open=
"(" close=
")">
34 <mml:mi mathvariant=
"italic">v
</mml:mi>
36 <mml:mfenced open=
"[" close=
"]">
41 <mml:mi mathvariant=
"italic">v
</mml:mi>
43 <mml:mfenced open=
"[" close=
"]">
48 <mml:mi mathvariant=
"italic">v
</mml:mi>
50 <mml:mfenced open=
"[" close=
"]">
55 <mml:mi mathvariant=
"italic">v
</mml:mi>
57 <mml:mfenced open=
"[" close=
"]">
64 then the current transformation is
65 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
68 <mml:mi mathvariant=
"italic">C
</mml:mi>
70 <mml:mi mathvariant=
"italic">v
</mml:mi>
75 </p><div class=
"informalequation"><mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
78 <mml:mfenced open=
"(" close=
")">
83 <mml:mi mathvariant=
"italic">c
</mml:mi>
85 <mml:mfenced open=
"[" close=
"]">
92 <mml:mi mathvariant=
"italic">c
</mml:mi>
94 <mml:mfenced open=
"[" close=
"]">
101 <mml:mi mathvariant=
"italic">c
</mml:mi>
103 <mml:mfenced open=
"[" close=
"]">
110 <mml:mi mathvariant=
"italic">c
</mml:mi>
112 <mml:mfenced open=
"[" close=
"]">
121 <mml:mi mathvariant=
"italic">c
</mml:mi>
123 <mml:mfenced open=
"[" close=
"]">
130 <mml:mi mathvariant=
"italic">c
</mml:mi>
132 <mml:mfenced open=
"[" close=
"]">
139 <mml:mi mathvariant=
"italic">c
</mml:mi>
141 <mml:mfenced open=
"[" close=
"]">
148 <mml:mi mathvariant=
"italic">c
</mml:mi>
150 <mml:mfenced open=
"[" close=
"]">
159 <mml:mi mathvariant=
"italic">c
</mml:mi>
161 <mml:mfenced open=
"[" close=
"]">
168 <mml:mi mathvariant=
"italic">c
</mml:mi>
170 <mml:mfenced open=
"[" close=
"]">
177 <mml:mi mathvariant=
"italic">c
</mml:mi>
179 <mml:mfenced open=
"[" close=
"]">
186 <mml:mi mathvariant=
"italic">c
</mml:mi>
188 <mml:mfenced open=
"[" close=
"]">
197 <mml:mi mathvariant=
"italic">c
</mml:mi>
199 <mml:mfenced open=
"[" close=
"]">
206 <mml:mi mathvariant=
"italic">c
</mml:mi>
208 <mml:mfenced open=
"[" close=
"]">
215 <mml:mi mathvariant=
"italic">c
</mml:mi>
217 <mml:mfenced open=
"[" close=
"]">
224 <mml:mi mathvariant=
"italic">c
</mml:mi>
226 <mml:mfenced open=
"[" close=
"]">
235 <mml:mfenced open=
"(" close=
")">
240 <mml:mi mathvariant=
"italic">v
</mml:mi>
242 <mml:mfenced open=
"[" close=
"]">
251 <mml:mi mathvariant=
"italic">v
</mml:mi>
253 <mml:mfenced open=
"[" close=
"]">
262 <mml:mi mathvariant=
"italic">v
</mml:mi>
264 <mml:mfenced open=
"[" close=
"]">
273 <mml:mi mathvariant=
"italic">v
</mml:mi>
275 <mml:mfenced open=
"[" close=
"]">
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">
292 <mml:mi mathvariant=
"italic">m
</mml:mi>
294 <mml:mfenced open=
"[" close=
"]">
299 <mml:mfenced open=
"{" close=
"}">
301 <mml:mi mathvariant=
"italic">m
</mml:mi>
303 <mml:mfenced open=
"[" close=
"]">
308 <mml:mi mathvariant=
"italic">m
</mml:mi>
310 <mml:mfenced open=
"[" close=
"]">
314 <mml:mi mathvariant=
"italic">...
</mml:mi>
316 <mml:mi mathvariant=
"italic">m
</mml:mi>
318 <mml:mfenced open=
"[" close=
"]">
325 replaces the current transformation with
326 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
329 <mml:mfenced open=
"(" close=
")">
331 <mml:mi mathvariant=
"italic">C
</mml:mi>
333 <mml:mi mathvariant=
"italic">M
</mml:mi>
337 <mml:mi mathvariant=
"italic">v
</mml:mi>
342 </p><div class=
"informalequation"><mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
345 <mml:mfenced open=
"(" close=
")">
350 <mml:mi mathvariant=
"italic">c
</mml:mi>
352 <mml:mfenced open=
"[" close=
"]">
359 <mml:mi mathvariant=
"italic">c
</mml:mi>
361 <mml:mfenced open=
"[" close=
"]">
368 <mml:mi mathvariant=
"italic">c
</mml:mi>
370 <mml:mfenced open=
"[" close=
"]">
377 <mml:mi mathvariant=
"italic">c
</mml:mi>
379 <mml:mfenced open=
"[" close=
"]">
388 <mml:mi mathvariant=
"italic">c
</mml:mi>
390 <mml:mfenced open=
"[" close=
"]">
397 <mml:mi mathvariant=
"italic">c
</mml:mi>
399 <mml:mfenced open=
"[" close=
"]">
406 <mml:mi mathvariant=
"italic">c
</mml:mi>
408 <mml:mfenced open=
"[" close=
"]">
415 <mml:mi mathvariant=
"italic">c
</mml:mi>
417 <mml:mfenced open=
"[" close=
"]">
426 <mml:mi mathvariant=
"italic">c
</mml:mi>
428 <mml:mfenced open=
"[" close=
"]">
435 <mml:mi mathvariant=
"italic">c
</mml:mi>
437 <mml:mfenced open=
"[" close=
"]">
444 <mml:mi mathvariant=
"italic">c
</mml:mi>
446 <mml:mfenced open=
"[" close=
"]">
453 <mml:mi mathvariant=
"italic">c
</mml:mi>
455 <mml:mfenced open=
"[" close=
"]">
464 <mml:mi mathvariant=
"italic">c
</mml:mi>
466 <mml:mfenced open=
"[" close=
"]">
473 <mml:mi mathvariant=
"italic">c
</mml:mi>
475 <mml:mfenced open=
"[" close=
"]">
482 <mml:mi mathvariant=
"italic">c
</mml:mi>
484 <mml:mfenced open=
"[" close=
"]">
491 <mml:mi mathvariant=
"italic">c
</mml:mi>
493 <mml:mfenced open=
"[" close=
"]">
502 <mml:mfenced open=
"(" close=
")">
507 <mml:mi mathvariant=
"italic">m
</mml:mi>
509 <mml:mfenced open=
"[" close=
"]">
516 <mml:mi mathvariant=
"italic">m
</mml:mi>
518 <mml:mfenced open=
"[" close=
"]">
525 <mml:mi mathvariant=
"italic">m
</mml:mi>
527 <mml:mfenced open=
"[" close=
"]">
534 <mml:mi mathvariant=
"italic">m
</mml:mi>
536 <mml:mfenced open=
"[" close=
"]">
545 <mml:mi mathvariant=
"italic">m
</mml:mi>
547 <mml:mfenced open=
"[" close=
"]">
554 <mml:mi mathvariant=
"italic">m
</mml:mi>
556 <mml:mfenced open=
"[" close=
"]">
563 <mml:mi mathvariant=
"italic">m
</mml:mi>
565 <mml:mfenced open=
"[" close=
"]">
572 <mml:mi mathvariant=
"italic">m
</mml:mi>
574 <mml:mfenced open=
"[" close=
"]">
583 <mml:mi mathvariant=
"italic">m
</mml:mi>
585 <mml:mfenced open=
"[" close=
"]">
592 <mml:mi mathvariant=
"italic">m
</mml:mi>
594 <mml:mfenced open=
"[" close=
"]">
601 <mml:mi mathvariant=
"italic">m
</mml:mi>
603 <mml:mfenced open=
"[" close=
"]">
610 <mml:mi mathvariant=
"italic">m
</mml:mi>
612 <mml:mfenced open=
"[" close=
"]">
621 <mml:mi mathvariant=
"italic">m
</mml:mi>
623 <mml:mfenced open=
"[" close=
"]">
630 <mml:mi mathvariant=
"italic">m
</mml:mi>
632 <mml:mfenced open=
"[" close=
"]">
639 <mml:mi mathvariant=
"italic">m
</mml:mi>
641 <mml:mfenced open=
"[" close=
"]">
648 <mml:mi mathvariant=
"italic">m
</mml:mi>
650 <mml:mfenced open=
"[" close=
"]">
659 <mml:mfenced open=
"(" close=
")">
664 <mml:mi mathvariant=
"italic">v
</mml:mi>
666 <mml:mfenced open=
"[" close=
"]">
675 <mml:mi mathvariant=
"italic">v
</mml:mi>
677 <mml:mfenced open=
"[" close=
"]">
686 <mml:mi mathvariant=
"italic">v
</mml:mi>
688 <mml:mfenced open=
"[" close=
"]">
697 <mml:mi mathvariant=
"italic">v
</mml:mi>
699 <mml:mfenced open=
"[" close=
"]">
712 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll"><mml:mi mathvariant=
"italic">v
</mml:mi></mml:math>
714 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
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">
730 <mml:msup><mml:mi mathvariant=
"italic">M
</mml:mi>
731 <mml:mi mathvariant=
"italic">T
</mml:mi>
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.
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.
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>
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>
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>
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>
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>