Subversion Repositories AndroidProjects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1452 chris 1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
3
              "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
4
<refentry id="glMultMatrix">
5
    <refmeta>
6
        <refmetainfo>
7
            <copyright>
8
                <year>1991-2006</year>
9
                <holder>Silicon Graphics, Inc.</holder>
10
            </copyright>
11
        </refmetainfo>
12
        <refentrytitle>glMultMatrix</refentrytitle>
13
        <manvolnum>3G</manvolnum>
14
    </refmeta>
15
    <refnamediv>
16
        <refname>glMultMatrix</refname>
17
        <refpurpose>multiply the current matrix with the specified matrix</refpurpose>
18
    </refnamediv>
19
    <refsynopsisdiv><title>C Specification</title>
20
        <funcsynopsis>
21
            <funcprototype>
22
                <funcdef>void <function>glMultMatrixd</function></funcdef>
23
                <paramdef>const GLdouble * <parameter>m</parameter></paramdef>
24
            </funcprototype>
25
        </funcsynopsis>
26
        <funcsynopsis>
27
            <funcprototype>
28
                <funcdef>void <function>glMultMatrixf</function></funcdef>
29
                <paramdef>const GLfloat * <parameter>m</parameter></paramdef>
30
            </funcprototype>
31
        </funcsynopsis>
32
    </refsynopsisdiv>
33
    <!-- eqn: ignoring delim $$ -->
34
    <refsect1 id="parameters"><title>Parameters</title>
35
        <variablelist>
36
        <varlistentry>
37
            <term><parameter>m</parameter></term>
38
            <listitem>
39
                <para>
40
                    Points to 16 consecutive values that are used as the elements of
41
                    a
42
                    <inlineequation><mml:math>
43
                        <!-- eqn: 4  times  4:-->
44
                        <mml:mrow>
45
                            <mml:mn>4</mml:mn>
46
                            <mml:mo>&times;</mml:mo>
47
                            <mml:mn>4</mml:mn>
48
                        </mml:mrow>
49
                    </mml:math></inlineequation>
50
                    column-major matrix.
51
                </para>
52
            </listitem>
53
        </varlistentry>
54
        </variablelist>
55
    </refsect1>
56
    <refsect1 id="description"><title>Description</title>
57
        <para>
58
            <function>glMultMatrix</function> multiplies the current matrix with the one specified using <parameter>m</parameter>, and
59
            replaces the current matrix with the product.
60
        </para>
61
        <para>
62
            The current matrix is determined by the current matrix mode (see <citerefentry><refentrytitle>glMatrixMode</refentrytitle></citerefentry>). It is either the projection matrix,
63
            modelview matrix,
64
            or the texture matrix.
65
        </para>
66
    </refsect1>
67
    <refsect1 id="examples"><title>Examples</title>
68
        <para>
69
            If the current matrix is
70
            <inlineequation><mml:math><mml:mi mathvariant="italic">C</mml:mi></mml:math></inlineequation>
71
            and the coordinates
72
            to be transformed are
73
            <inlineequation><mml:math>
74
                <!-- eqn: v  =  (v[0], v[1], v[2], v[3]):-->
75
                <mml:mrow>
76
                    <mml:mi mathvariant="italic">v</mml:mi>
77
                    <mml:mo>=</mml:mo>
78
                    <mml:mfenced open="(" close=")">
79
                        <mml:mrow>
80
                            <mml:mi mathvariant="italic">v</mml:mi>
81
                            <mml:mo>&af;</mml:mo>
82
                            <mml:mfenced open="[" close="]">
83
                                <mml:mn>0</mml:mn>
84
                            </mml:mfenced>
85
                        </mml:mrow>
86
                        <mml:mrow>
87
                            <mml:mi mathvariant="italic">v</mml:mi>
88
                            <mml:mo>&af;</mml:mo>
89
                            <mml:mfenced open="[" close="]">
90
                                <mml:mn>1</mml:mn>
91
                            </mml:mfenced>
92
                        </mml:mrow>
93
                        <mml:mrow>
94
                            <mml:mi mathvariant="italic">v</mml:mi>
95
                            <mml:mo>&af;</mml:mo>
96
                            <mml:mfenced open="[" close="]">
97
                                <mml:mn>2</mml:mn>
98
                            </mml:mfenced>
99
                        </mml:mrow>
100
                        <mml:mrow>
101
                            <mml:mi mathvariant="italic">v</mml:mi>
102
                            <mml:mo>&af;</mml:mo>
103
                            <mml:mfenced open="[" close="]">
104
                                <mml:mn>3</mml:mn>
105
                            </mml:mfenced>
106
                        </mml:mrow>
107
                    </mml:mfenced>
108
                </mml:mrow>
109
            </mml:math></inlineequation>,
110
            then the current transformation is
111
            <inlineequation><mml:math>
112
                <!-- eqn: C  times  v:-->
113
                <mml:mrow>
114
                    <mml:mi mathvariant="italic">C</mml:mi>
115
                    <mml:mo>&times;</mml:mo>
116
                    <mml:mi mathvariant="italic">v</mml:mi>
117
                </mml:mrow>
118
            </mml:math></inlineequation>,
119
            or
120
        </para>
121
        <para>
122
            <informalequation><mml:math>
123
                <!-- eqn: left ( matrix {    ccol {  c[0] above  c[1] above  c[2] above  c[3] }    ccol { c[4] above c[5] above c[6] above c[7] }    ccol { c[8] above c[9] above c[10] above c[11] }    ccol { c[12]  above c[13]  above c[14]  above c[15]  } } right )    times    left ( matrix {    ccol {  v[0]  above  v[1]  above  v[2]  above  v[3]  } } right ):-->
124
                <mml:mrow>
125
                    <mml:mfenced open="(" close=")">
126
                        <mml:mtable>
127
                            <mml:mtr>
128
                                <mml:mtd>
129
                                    <mml:mrow>
130
                                        <mml:mi mathvariant="italic">c</mml:mi>
131
                                        <mml:mo>&af;</mml:mo>
132
                                        <mml:mfenced open="[" close="]">
133
                                            <mml:mn>0</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>&af;</mml:mo>
141
                                        <mml:mfenced open="[" close="]">
142
                                            <mml:mn>4</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>&af;</mml:mo>
150
                                        <mml:mfenced open="[" close="]">
151
                                            <mml:mn>8</mml:mn>
152
                                        </mml:mfenced>
153
                                    </mml:mrow>
154
                                </mml:mtd>
155
                                <mml:mtd>
156
                                    <mml:mrow>
157
                                        <mml:mi mathvariant="italic">c</mml:mi>
158
                                        <mml:mo>&af;</mml:mo>
159
                                        <mml:mfenced open="[" close="]">
160
                                            <mml:mn>12</mml:mn>
161
                                        </mml:mfenced>
162
                                    </mml:mrow>
163
                                </mml:mtd>
164
                            </mml:mtr>
165
                            <mml:mtr>
166
                                <mml:mtd>
167
                                    <mml:mrow>
168
                                        <mml:mi mathvariant="italic">c</mml:mi>
169
                                        <mml:mo>&af;</mml:mo>
170
                                        <mml:mfenced open="[" close="]">
171
                                            <mml:mn>1</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>&af;</mml:mo>
179
                                        <mml:mfenced open="[" close="]">
180
                                            <mml:mn>5</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>&af;</mml:mo>
188
                                        <mml:mfenced open="[" close="]">
189
                                            <mml:mn>9</mml:mn>
190
                                        </mml:mfenced>
191
                                    </mml:mrow>
192
                                </mml:mtd>
193
                                <mml:mtd>
194
                                    <mml:mrow>
195
                                        <mml:mi mathvariant="italic">c</mml:mi>
196
                                        <mml:mo>&af;</mml:mo>
197
                                        <mml:mfenced open="[" close="]">
198
                                            <mml:mn>13</mml:mn>
199
                                        </mml:mfenced>
200
                                    </mml:mrow>
201
                                </mml:mtd>
202
                            </mml:mtr>
203
                            <mml:mtr>
204
                                <mml:mtd>
205
                                    <mml:mrow>
206
                                        <mml:mi mathvariant="italic">c</mml:mi>
207
                                        <mml:mo>&af;</mml:mo>
208
                                        <mml:mfenced open="[" close="]">
209
                                            <mml:mn>2</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>&af;</mml:mo>
217
                                        <mml:mfenced open="[" close="]">
218
                                            <mml:mn>6</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>&af;</mml:mo>
226
                                        <mml:mfenced open="[" close="]">
227
                                            <mml:mn>10</mml:mn>
228
                                        </mml:mfenced>
229
                                    </mml:mrow>
230
                                </mml:mtd>
231
                                <mml:mtd>
232
                                    <mml:mrow>
233
                                        <mml:mi mathvariant="italic">c</mml:mi>
234
                                        <mml:mo>&af;</mml:mo>
235
                                        <mml:mfenced open="[" close="]">
236
                                            <mml:mn>14</mml:mn>
237
                                        </mml:mfenced>
238
                                    </mml:mrow>
239
                                </mml:mtd>
240
                            </mml:mtr>
241
                            <mml:mtr>
242
                                <mml:mtd>
243
                                    <mml:mrow>
244
                                        <mml:mi mathvariant="italic">c</mml:mi>
245
                                        <mml:mo>&af;</mml:mo>
246
                                        <mml:mfenced open="[" close="]">
247
                                            <mml:mn>3</mml:mn>
248
                                        </mml:mfenced>
249
                                    </mml:mrow>
250
                                </mml:mtd>
251
                                <mml:mtd>
252
                                    <mml:mrow>
253
                                        <mml:mi mathvariant="italic">c</mml:mi>
254
                                        <mml:mo>&af;</mml:mo>
255
                                        <mml:mfenced open="[" close="]">
256
                                            <mml:mn>7</mml:mn>
257
                                        </mml:mfenced>
258
                                    </mml:mrow>
259
                                </mml:mtd>
260
                                <mml:mtd>
261
                                    <mml:mrow>
262
                                        <mml:mi mathvariant="italic">c</mml:mi>
263
                                        <mml:mo>&af;</mml:mo>
264
                                        <mml:mfenced open="[" close="]">
265
                                            <mml:mn>11</mml:mn>
266
                                        </mml:mfenced>
267
                                    </mml:mrow>
268
                                </mml:mtd>
269
                                <mml:mtd>
270
                                    <mml:mrow>
271
                                        <mml:mi mathvariant="italic">c</mml:mi>
272
                                        <mml:mo>&af;</mml:mo>
273
                                        <mml:mfenced open="[" close="]">
274
                                            <mml:mn>15</mml:mn>
275
                                        </mml:mfenced>
276
                                    </mml:mrow>
277
                                </mml:mtd>
278
                            </mml:mtr>
279
                        </mml:mtable>
280
                    </mml:mfenced>
281
                    <mml:mo>&times;</mml:mo>
282
                    <mml:mfenced open="(" close=")">
283
                        <mml:mtable>
284
                            <mml:mtr>
285
                                <mml:mtd>
286
                                    <mml:mrow>
287
                                        <mml:mi mathvariant="italic">v</mml:mi>
288
                                        <mml:mo>&af;</mml:mo>
289
                                        <mml:mfenced open="[" close="]">
290
                                            <mml:mn>0</mml:mn>
291
                                        </mml:mfenced>
292
                                    </mml:mrow>
293
                                </mml:mtd>
294
                            </mml:mtr>
295
                            <mml:mtr>
296
                                <mml:mtd>
297
                                    <mml:mrow>
298
                                        <mml:mi mathvariant="italic">v</mml:mi>
299
                                        <mml:mo>&af;</mml:mo>
300
                                        <mml:mfenced open="[" close="]">
301
                                            <mml:mn>1</mml:mn>
302
                                        </mml:mfenced>
303
                                    </mml:mrow>
304
                                </mml:mtd>
305
                            </mml:mtr>
306
                            <mml:mtr>
307
                                <mml:mtd>
308
                                    <mml:mrow>
309
                                        <mml:mi mathvariant="italic">v</mml:mi>
310
                                        <mml:mo>&af;</mml:mo>
311
                                        <mml:mfenced open="[" close="]">
312
                                            <mml:mn>2</mml:mn>
313
                                        </mml:mfenced>
314
                                    </mml:mrow>
315
                                </mml:mtd>
316
                            </mml:mtr>
317
                            <mml:mtr>
318
                                <mml:mtd>
319
                                    <mml:mrow>
320
                                        <mml:mi mathvariant="italic">v</mml:mi>
321
                                        <mml:mo>&af;</mml:mo>
322
                                        <mml:mfenced open="[" close="]">
323
                                            <mml:mn>3</mml:mn>
324
                                        </mml:mfenced>
325
                                    </mml:mrow>
326
                                </mml:mtd>
327
                            </mml:mtr>
328
                        </mml:mtable>
329
                    </mml:mfenced>
330
                </mml:mrow>
331
            </mml:math></informalequation>
332
        </para>
333
        <para>
334
        </para>
335
        <para>
336
            Calling <function>glMultMatrix</function> with an argument of
337
            <inlineequation><mml:math>
338
                <!-- eqn: m  =  left { m[0], m[1], ..., m[15] right }:-->
339
                <mml:mrow>
340
                    <mml:mi mathvariant="italic">m</mml:mi>
341
                    <mml:mo>=</mml:mo>
342
                    <mml:mfenced open="{" close="}">
343
                        <mml:mrow>
344
                            <mml:mi mathvariant="italic">m</mml:mi>
345
                            <mml:mo>&af;</mml:mo>
346
                            <mml:mfenced open="[" close="]">
347
                                <mml:mn>0</mml:mn>
348
                            </mml:mfenced>
349
                        </mml:mrow>
350
                        <mml:mrow>
351
                            <mml:mi mathvariant="italic">m</mml:mi>
352
                            <mml:mo>&af;</mml:mo>
353
                            <mml:mfenced open="[" close="]">
354
                                <mml:mn>1</mml:mn>
355
                            </mml:mfenced>
356
                        </mml:mrow>
357
                        <mml:mi mathvariant="italic">...</mml:mi>
358
                        <mml:mrow>
359
                            <mml:mi mathvariant="italic">m</mml:mi>
360
                            <mml:mo>&af;</mml:mo>
361
                            <mml:mfenced open="[" close="]">
362
                                <mml:mn>15</mml:mn>
363
                            </mml:mfenced>
364
                        </mml:mrow>
365
                    </mml:mfenced>
366
                </mml:mrow>
367
            </mml:math></inlineequation>
368
            replaces the current transformation with
369
            <inlineequation><mml:math>
370
                <!-- eqn: (C  times  M)  times  v:-->
371
                <mml:mrow>
372
                    <mml:mfenced open="(" close=")">
373
                        <mml:mrow>
374
                            <mml:mi mathvariant="italic">C</mml:mi>
375
                            <mml:mo>&times;</mml:mo>
376
                            <mml:mi mathvariant="italic">M</mml:mi>
377
                        </mml:mrow>
378
                    </mml:mfenced>
379
                    <mml:mo>&times;</mml:mo>
380
                    <mml:mi mathvariant="italic">v</mml:mi>
381
                </mml:mrow>
382
            </mml:math></inlineequation>,
383
            or
384
        </para>
385
        <para>
386
            <informalequation><mml:math>
387
                <!-- eqn: left ( matrix {    ccol {  c[0] above  c[1] above  c[2] above  c[3] }    ccol { c[4] above c[5] above c[6] above c[7] }    ccol { c[8] above c[9] above c[10] above c[11] }    ccol { c[12]  above c[13]  above c[14]  above c[15]  } } right )    times    left ( matrix {    ccol {  m[0] above  m[1] above  m[2] above  m[3] }    ccol { m[4] above m[5] above m[6] above m[7] }    ccol { m[8] above m[9] above m[10] above m[11] }    ccol { m[12]  above m[13]  above m[14]  above m[15]  } } right )    times    left ( matrix {    ccol {  v[0]  above  v[1]  above  v[2]  above  v[3]  } } right ):-->
388
                <mml:mrow>
389
                    <mml:mfenced open="(" close=")">
390
                        <mml:mtable>
391
                            <mml:mtr>
392
                                <mml:mtd>
393
                                    <mml:mrow>
394
                                        <mml:mi mathvariant="italic">c</mml:mi>
395
                                        <mml:mo>&af;</mml:mo>
396
                                        <mml:mfenced open="[" close="]">
397
                                            <mml:mn>0</mml:mn>
398
                                        </mml:mfenced>
399
                                    </mml:mrow>
400
                                </mml:mtd>
401
                                <mml:mtd>
402
                                    <mml:mrow>
403
                                        <mml:mi mathvariant="italic">c</mml:mi>
404
                                        <mml:mo>&af;</mml:mo>
405
                                        <mml:mfenced open="[" close="]">
406
                                            <mml:mn>4</mml:mn>
407
                                        </mml:mfenced>
408
                                    </mml:mrow>
409
                                </mml:mtd>
410
                                <mml:mtd>
411
                                    <mml:mrow>
412
                                        <mml:mi mathvariant="italic">c</mml:mi>
413
                                        <mml:mo>&af;</mml:mo>
414
                                        <mml:mfenced open="[" close="]">
415
                                            <mml:mn>8</mml:mn>
416
                                        </mml:mfenced>
417
                                    </mml:mrow>
418
                                </mml:mtd>
419
                                <mml:mtd>
420
                                    <mml:mrow>
421
                                        <mml:mi mathvariant="italic">c</mml:mi>
422
                                        <mml:mo>&af;</mml:mo>
423
                                        <mml:mfenced open="[" close="]">
424
                                            <mml:mn>12</mml:mn>
425
                                        </mml:mfenced>
426
                                    </mml:mrow>
427
                                </mml:mtd>
428
                            </mml:mtr>
429
                            <mml:mtr>
430
                                <mml:mtd>
431
                                    <mml:mrow>
432
                                        <mml:mi mathvariant="italic">c</mml:mi>
433
                                        <mml:mo>&af;</mml:mo>
434
                                        <mml:mfenced open="[" close="]">
435
                                            <mml:mn>1</mml:mn>
436
                                        </mml:mfenced>
437
                                    </mml:mrow>
438
                                </mml:mtd>
439
                                <mml:mtd>
440
                                    <mml:mrow>
441
                                        <mml:mi mathvariant="italic">c</mml:mi>
442
                                        <mml:mo>&af;</mml:mo>
443
                                        <mml:mfenced open="[" close="]">
444
                                            <mml:mn>5</mml:mn>
445
                                        </mml:mfenced>
446
                                    </mml:mrow>
447
                                </mml:mtd>
448
                                <mml:mtd>
449
                                    <mml:mrow>
450
                                        <mml:mi mathvariant="italic">c</mml:mi>
451
                                        <mml:mo>&af;</mml:mo>
452
                                        <mml:mfenced open="[" close="]">
453
                                            <mml:mn>9</mml:mn>
454
                                        </mml:mfenced>
455
                                    </mml:mrow>
456
                                </mml:mtd>
457
                                <mml:mtd>
458
                                    <mml:mrow>
459
                                        <mml:mi mathvariant="italic">c</mml:mi>
460
                                        <mml:mo>&af;</mml:mo>
461
                                        <mml:mfenced open="[" close="]">
462
                                            <mml:mn>13</mml:mn>
463
                                        </mml:mfenced>
464
                                    </mml:mrow>
465
                                </mml:mtd>
466
                            </mml:mtr>
467
                            <mml:mtr>
468
                                <mml:mtd>
469
                                    <mml:mrow>
470
                                        <mml:mi mathvariant="italic">c</mml:mi>
471
                                        <mml:mo>&af;</mml:mo>
472
                                        <mml:mfenced open="[" close="]">
473
                                            <mml:mn>2</mml:mn>
474
                                        </mml:mfenced>
475
                                    </mml:mrow>
476
                                </mml:mtd>
477
                                <mml:mtd>
478
                                    <mml:mrow>
479
                                        <mml:mi mathvariant="italic">c</mml:mi>
480
                                        <mml:mo>&af;</mml:mo>
481
                                        <mml:mfenced open="[" close="]">
482
                                            <mml:mn>6</mml:mn>
483
                                        </mml:mfenced>
484
                                    </mml:mrow>
485
                                </mml:mtd>
486
                                <mml:mtd>
487
                                    <mml:mrow>
488
                                        <mml:mi mathvariant="italic">c</mml:mi>
489
                                        <mml:mo>&af;</mml:mo>
490
                                        <mml:mfenced open="[" close="]">
491
                                            <mml:mn>10</mml:mn>
492
                                        </mml:mfenced>
493
                                    </mml:mrow>
494
                                </mml:mtd>
495
                                <mml:mtd>
496
                                    <mml:mrow>
497
                                        <mml:mi mathvariant="italic">c</mml:mi>
498
                                        <mml:mo>&af;</mml:mo>
499
                                        <mml:mfenced open="[" close="]">
500
                                            <mml:mn>14</mml:mn>
501
                                        </mml:mfenced>
502
                                    </mml:mrow>
503
                                </mml:mtd>
504
                            </mml:mtr>
505
                            <mml:mtr>
506
                                <mml:mtd>
507
                                    <mml:mrow>
508
                                        <mml:mi mathvariant="italic">c</mml:mi>
509
                                        <mml:mo>&af;</mml:mo>
510
                                        <mml:mfenced open="[" close="]">
511
                                            <mml:mn>3</mml:mn>
512
                                        </mml:mfenced>
513
                                    </mml:mrow>
514
                                </mml:mtd>
515
                                <mml:mtd>
516
                                    <mml:mrow>
517
                                        <mml:mi mathvariant="italic">c</mml:mi>
518
                                        <mml:mo>&af;</mml:mo>
519
                                        <mml:mfenced open="[" close="]">
520
                                            <mml:mn>7</mml:mn>
521
                                        </mml:mfenced>
522
                                    </mml:mrow>
523
                                </mml:mtd>
524
                                <mml:mtd>
525
                                    <mml:mrow>
526
                                        <mml:mi mathvariant="italic">c</mml:mi>
527
                                        <mml:mo>&af;</mml:mo>
528
                                        <mml:mfenced open="[" close="]">
529
                                            <mml:mn>11</mml:mn>
530
                                        </mml:mfenced>
531
                                    </mml:mrow>
532
                                </mml:mtd>
533
                                <mml:mtd>
534
                                    <mml:mrow>
535
                                        <mml:mi mathvariant="italic">c</mml:mi>
536
                                        <mml:mo>&af;</mml:mo>
537
                                        <mml:mfenced open="[" close="]">
538
                                            <mml:mn>15</mml:mn>
539
                                        </mml:mfenced>
540
                                    </mml:mrow>
541
                                </mml:mtd>
542
                            </mml:mtr>
543
                        </mml:mtable>
544
                    </mml:mfenced>
545
                    <mml:mo>&times;</mml:mo>
546
                    <mml:mfenced open="(" close=")">
547
                        <mml:mtable>
548
                            <mml:mtr>
549
                                <mml:mtd>
550
                                    <mml:mrow>
551
                                        <mml:mi mathvariant="italic">m</mml:mi>
552
                                        <mml:mo>&af;</mml:mo>
553
                                        <mml:mfenced open="[" close="]">
554
                                            <mml:mn>0</mml:mn>
555
                                        </mml:mfenced>
556
                                    </mml:mrow>
557
                                </mml:mtd>
558
                                <mml:mtd>
559
                                    <mml:mrow>
560
                                        <mml:mi mathvariant="italic">m</mml:mi>
561
                                        <mml:mo>&af;</mml:mo>
562
                                        <mml:mfenced open="[" close="]">
563
                                            <mml:mn>4</mml:mn>
564
                                        </mml:mfenced>
565
                                    </mml:mrow>
566
                                </mml:mtd>
567
                                <mml:mtd>
568
                                    <mml:mrow>
569
                                        <mml:mi mathvariant="italic">m</mml:mi>
570
                                        <mml:mo>&af;</mml:mo>
571
                                        <mml:mfenced open="[" close="]">
572
                                            <mml:mn>8</mml:mn>
573
                                        </mml:mfenced>
574
                                    </mml:mrow>
575
                                </mml:mtd>
576
                                <mml:mtd>
577
                                    <mml:mrow>
578
                                        <mml:mi mathvariant="italic">m</mml:mi>
579
                                        <mml:mo>&af;</mml:mo>
580
                                        <mml:mfenced open="[" close="]">
581
                                            <mml:mn>12</mml:mn>
582
                                        </mml:mfenced>
583
                                    </mml:mrow>
584
                                </mml:mtd>
585
                            </mml:mtr>
586
                            <mml:mtr>
587
                                <mml:mtd>
588
                                    <mml:mrow>
589
                                        <mml:mi mathvariant="italic">m</mml:mi>
590
                                        <mml:mo>&af;</mml:mo>
591
                                        <mml:mfenced open="[" close="]">
592
                                            <mml:mn>1</mml:mn>
593
                                        </mml:mfenced>
594
                                    </mml:mrow>
595
                                </mml:mtd>
596
                                <mml:mtd>
597
                                    <mml:mrow>
598
                                        <mml:mi mathvariant="italic">m</mml:mi>
599
                                        <mml:mo>&af;</mml:mo>
600
                                        <mml:mfenced open="[" close="]">
601
                                            <mml:mn>5</mml:mn>
602
                                        </mml:mfenced>
603
                                    </mml:mrow>
604
                                </mml:mtd>
605
                                <mml:mtd>
606
                                    <mml:mrow>
607
                                        <mml:mi mathvariant="italic">m</mml:mi>
608
                                        <mml:mo>&af;</mml:mo>
609
                                        <mml:mfenced open="[" close="]">
610
                                            <mml:mn>9</mml:mn>
611
                                        </mml:mfenced>
612
                                    </mml:mrow>
613
                                </mml:mtd>
614
                                <mml:mtd>
615
                                    <mml:mrow>
616
                                        <mml:mi mathvariant="italic">m</mml:mi>
617
                                        <mml:mo>&af;</mml:mo>
618
                                        <mml:mfenced open="[" close="]">
619
                                            <mml:mn>13</mml:mn>
620
                                        </mml:mfenced>
621
                                    </mml:mrow>
622
                                </mml:mtd>
623
                            </mml:mtr>
624
                            <mml:mtr>
625
                                <mml:mtd>
626
                                    <mml:mrow>
627
                                        <mml:mi mathvariant="italic">m</mml:mi>
628
                                        <mml:mo>&af;</mml:mo>
629
                                        <mml:mfenced open="[" close="]">
630
                                            <mml:mn>2</mml:mn>
631
                                        </mml:mfenced>
632
                                    </mml:mrow>
633
                                </mml:mtd>
634
                                <mml:mtd>
635
                                    <mml:mrow>
636
                                        <mml:mi mathvariant="italic">m</mml:mi>
637
                                        <mml:mo>&af;</mml:mo>
638
                                        <mml:mfenced open="[" close="]">
639
                                            <mml:mn>6</mml:mn>
640
                                        </mml:mfenced>
641
                                    </mml:mrow>
642
                                </mml:mtd>
643
                                <mml:mtd>
644
                                    <mml:mrow>
645
                                        <mml:mi mathvariant="italic">m</mml:mi>
646
                                        <mml:mo>&af;</mml:mo>
647
                                        <mml:mfenced open="[" close="]">
648
                                            <mml:mn>10</mml:mn>
649
                                        </mml:mfenced>
650
                                    </mml:mrow>
651
                                </mml:mtd>
652
                                <mml:mtd>
653
                                    <mml:mrow>
654
                                        <mml:mi mathvariant="italic">m</mml:mi>
655
                                        <mml:mo>&af;</mml:mo>
656
                                        <mml:mfenced open="[" close="]">
657
                                            <mml:mn>14</mml:mn>
658
                                        </mml:mfenced>
659
                                    </mml:mrow>
660
                                </mml:mtd>
661
                            </mml:mtr>
662
                            <mml:mtr>
663
                                <mml:mtd>
664
                                    <mml:mrow>
665
                                        <mml:mi mathvariant="italic">m</mml:mi>
666
                                        <mml:mo>&af;</mml:mo>
667
                                        <mml:mfenced open="[" close="]">
668
                                            <mml:mn>3</mml:mn>
669
                                        </mml:mfenced>
670
                                    </mml:mrow>
671
                                </mml:mtd>
672
                                <mml:mtd>
673
                                    <mml:mrow>
674
                                        <mml:mi mathvariant="italic">m</mml:mi>
675
                                        <mml:mo>&af;</mml:mo>
676
                                        <mml:mfenced open="[" close="]">
677
                                            <mml:mn>7</mml:mn>
678
                                        </mml:mfenced>
679
                                    </mml:mrow>
680
                                </mml:mtd>
681
                                <mml:mtd>
682
                                    <mml:mrow>
683
                                        <mml:mi mathvariant="italic">m</mml:mi>
684
                                        <mml:mo>&af;</mml:mo>
685
                                        <mml:mfenced open="[" close="]">
686
                                            <mml:mn>11</mml:mn>
687
                                        </mml:mfenced>
688
                                    </mml:mrow>
689
                                </mml:mtd>
690
                                <mml:mtd>
691
                                    <mml:mrow>
692
                                        <mml:mi mathvariant="italic">m</mml:mi>
693
                                        <mml:mo>&af;</mml:mo>
694
                                        <mml:mfenced open="[" close="]">
695
                                            <mml:mn>15</mml:mn>
696
                                        </mml:mfenced>
697
                                    </mml:mrow>
698
                                </mml:mtd>
699
                            </mml:mtr>
700
                        </mml:mtable>
701
                    </mml:mfenced>
702
                    <mml:mo>&times;</mml:mo>
703
                    <mml:mfenced open="(" close=")">
704
                        <mml:mtable>
705
                            <mml:mtr>
706
                                <mml:mtd>
707
                                    <mml:mrow>
708
                                        <mml:mi mathvariant="italic">v</mml:mi>
709
                                        <mml:mo>&af;</mml:mo>
710
                                        <mml:mfenced open="[" close="]">
711
                                            <mml:mn>0</mml:mn>
712
                                        </mml:mfenced>
713
                                    </mml:mrow>
714
                                </mml:mtd>
715
                            </mml:mtr>
716
                            <mml:mtr>
717
                                <mml:mtd>
718
                                    <mml:mrow>
719
                                        <mml:mi mathvariant="italic">v</mml:mi>
720
                                        <mml:mo>&af;</mml:mo>
721
                                        <mml:mfenced open="[" close="]">
722
                                            <mml:mn>1</mml:mn>
723
                                        </mml:mfenced>
724
                                    </mml:mrow>
725
                                </mml:mtd>
726
                            </mml:mtr>
727
                            <mml:mtr>
728
                                <mml:mtd>
729
                                    <mml:mrow>
730
                                        <mml:mi mathvariant="italic">v</mml:mi>
731
                                        <mml:mo>&af;</mml:mo>
732
                                        <mml:mfenced open="[" close="]">
733
                                            <mml:mn>2</mml:mn>
734
                                        </mml:mfenced>
735
                                    </mml:mrow>
736
                                </mml:mtd>
737
                            </mml:mtr>
738
                            <mml:mtr>
739
                                <mml:mtd>
740
                                    <mml:mrow>
741
                                        <mml:mi mathvariant="italic">v</mml:mi>
742
                                        <mml:mo>&af;</mml:mo>
743
                                        <mml:mfenced open="[" close="]">
744
                                            <mml:mn>3</mml:mn>
745
                                        </mml:mfenced>
746
                                    </mml:mrow>
747
                                </mml:mtd>
748
                            </mml:mtr>
749
                        </mml:mtable>
750
                    </mml:mfenced>
751
                </mml:mrow>
752
            </mml:math></informalequation>
753
        </para>
754
        <para>
755
        </para>
756
        <para>
757
            Where
758
            <inlineequation><mml:math><mml:mi mathvariant="italic">v</mml:mi></mml:math></inlineequation>
759
            is represented as a
760
            <inlineequation><mml:math>
761
                <!-- eqn: 4  times  1:-->
762
                <mml:mrow>
763
                    <mml:mn>4</mml:mn>
764
                    <mml:mo>&times;</mml:mo>
765
                    <mml:mn>1</mml:mn>
766
                </mml:mrow>
767
            </mml:math></inlineequation>
768
            matrix.
769
        </para>
770
    </refsect1>
771
    <refsect1 id="notes"><title>Notes</title>
772
        <para>
773
            While the elements of the matrix may be specified with
774
            single or double precision, the GL may store or operate on these
775
            values in less-than-single precision.
776
        </para>
777
        <para>
778
            In many computer languages,
779
            <inlineequation><mml:math>
780
                <!-- eqn: 4  times  4:-->
781
                <mml:mrow>
782
                    <mml:mn>4</mml:mn>
783
                    <mml:mo>&times;</mml:mo>
784
                    <mml:mn>4</mml:mn>
785
                </mml:mrow>
786
            </mml:math></inlineequation>
787
            arrays are represented
788
            in row-major order. The transformations just described
789
            represent these matrices in column-major order.
790
            The order of the multiplication is important. For example, if the current
791
            transformation is a rotation, and <function>glMultMatrix</function> is called with a translation matrix,
792
            the translation is done directly on the coordinates to be transformed,
793
            while the rotation is done on the results of that translation.
794
        </para>
795
    </refsect1>
796
    <refsect1 id="errors"><title>Errors</title>
797
        <para>
798
            <constant>GL_INVALID_OPERATION</constant> is generated if <function>glMultMatrix</function>
799
            is executed between the execution of <citerefentry><refentrytitle>glBegin</refentrytitle></citerefentry>
800
            and the corresponding execution of <citerefentry><refentrytitle>glEnd</refentrytitle></citerefentry>.
801
        </para>
802
    </refsect1>
803
    <refsect1 id="associatedgets"><title>Associated Gets</title>
804
        <para>
805
            <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_MATRIX_MODE</constant>
806
        </para>
807
        <para>
808
            <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_COLOR_MATRIX</constant>
809
        </para>
810
        <para>
811
            <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_MODELVIEW_MATRIX</constant>
812
        </para>
813
        <para>
814
            <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_PROJECTION_MATRIX</constant>
815
        </para>
816
        <para>
817
            <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_TEXTURE_MATRIX</constant>
818
        </para>
819
    </refsect1>
820
    <refsect1 id="seealso"><title>See Also</title>
821
        <para>
822
            <citerefentry><refentrytitle>glLoadIdentity</refentrytitle></citerefentry>,
823
            <citerefentry><refentrytitle>glLoadMatrix</refentrytitle></citerefentry>,
824
            <citerefentry><refentrytitle>glLoadTransposeMatrix</refentrytitle></citerefentry>,
825
            <citerefentry><refentrytitle>glMatrixMode</refentrytitle></citerefentry>,
826
            <citerefentry><refentrytitle>glMultTransposeMatrix</refentrytitle></citerefentry>,
827
            <citerefentry><refentrytitle>glPushMatrix</refentrytitle></citerefentry>
828
        </para>
829
    </refsect1>
830
    <refsect1 id="Copyright"><title>Copyright</title>
831
        <para>
832
            Copyright <trademark class="copyright"></trademark> 1991-2006
833
            Silicon Graphics, Inc. This document is licensed under the SGI
834
            Free Software B License. For details, see
835
            <ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
836
        </para>
837
    </refsect1>
838
</refentry>