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>glRotate
</title><meta name=
"generator" content=
"DocBook XSL Stylesheets V1.73.2" /></head><body><div class=
"refentry" lang=
"en" xml:
lang=
"en"><a id=
"glRotate"></a><div class=
"titlepage"></div><div class=
"refnamediv"><h2>Name
</h2><p>glRotate — multiply the current matrix by a rotation 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">glRotated
</b>(
</code></td><td>GLdouble
</td><td><var class=
"pdparam">angle
</var>,
</td></tr><tr><td> </td><td>GLdouble
</td><td><var class=
"pdparam">x
</var>,
</td></tr><tr><td> </td><td>GLdouble
</td><td><var class=
"pdparam">y
</var>,
</td></tr><tr><td> </td><td>GLdouble
</td><td><var class=
"pdparam">z
</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">glRotatef
</b>(
</code></td><td>GLfloat
</td><td><var class=
"pdparam">angle
</var>,
</td></tr><tr><td> </td><td>GLfloat
</td><td><var class=
"pdparam">x
</var>,
</td></tr><tr><td> </td><td>GLfloat
</td><td><var class=
"pdparam">y
</var>,
</td></tr><tr><td> </td><td>GLfloat
</td><td><var class=
"pdparam">z
</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>angle
</code></em></span></dt><dd><p>
4 Specifies the angle of rotation, in degrees.
5 </p></dd><dt><span class=
"term"><em class=
"parameter"><code>x
</code></em>,
</span><span class=
"term"><em class=
"parameter"><code>y
</code></em>,
</span><span class=
"term"><em class=
"parameter"><code>z
</code></em></span></dt><dd><p>
6 Specify the
<span class=
"emphasis"><em>x
</em></span>,
<span class=
"emphasis"><em>y
</em></span>, and
<span class=
"emphasis"><em>z
</em></span> coordinates of a vector, respectively.
7 </p></dd></dl></div></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"description"></a><h2>Description
</h2><p>
8 <code class=
"function">glRotate
</code> produces a rotation of
<em class=
"parameter"><code>angle
</code></em> degrees around
10 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
12 <mml:mfenced open=
"(" close=
")">
13 <mml:mi mathvariant=
"italic">x
</mml:mi>
14 <mml:mi mathvariant=
"italic">y
</mml:mi>
15 <mml:mi mathvariant=
"italic">z
</mml:mi>
18 The current matrix (see
<a class=
"citerefentry" href=
"glMatrixMode.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glMatrixMode
</span></span></a>) is multiplied by a rotation
19 matrix with the product
20 replacing the current matrix, as if
<a class=
"citerefentry" href=
"glMultMatrix.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glMultMatrix
</span></span></a> were called
21 with the following matrix as its argument:
23 </p><div class=
"informalequation"><mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
25 <mml:mfenced open=
"(" close=
")">
31 <mml:msup><mml:mi mathvariant=
"italic">x
</mml:mi>
35 <mml:mfenced open=
"(" close=
")">
39 <mml:mi mathvariant=
"italic">c
</mml:mi>
44 <mml:mi mathvariant=
"italic">c
</mml:mi>
49 <mml:mi mathvariant=
"italic">x
</mml:mi>
52 <mml:mi mathvariant=
"italic">y
</mml:mi>
54 <mml:mfenced open=
"(" close=
")">
58 <mml:mi mathvariant=
"italic">c
</mml:mi>
63 <mml:mi mathvariant=
"italic">z
</mml:mi>
65 <mml:mi mathvariant=
"italic">s
</mml:mi>
70 <mml:mi mathvariant=
"italic">x
</mml:mi>
73 <mml:mi mathvariant=
"italic">z
</mml:mi>
75 <mml:mfenced open=
"(" close=
")">
79 <mml:mi mathvariant=
"italic">c
</mml:mi>
84 <mml:mi mathvariant=
"italic">y
</mml:mi>
86 <mml:mi mathvariant=
"italic">s
</mml:mi>
96 <mml:mi mathvariant=
"italic">y
</mml:mi>
99 <mml:mi mathvariant=
"italic">x
</mml:mi>
101 <mml:mfenced open=
"(" close=
")">
105 <mml:mi mathvariant=
"italic">c
</mml:mi>
110 <mml:mi mathvariant=
"italic">z
</mml:mi>
112 <mml:mi mathvariant=
"italic">s
</mml:mi>
118 <mml:msup><mml:mi mathvariant=
"italic">y
</mml:mi>
122 <mml:mfenced open=
"(" close=
")">
126 <mml:mi mathvariant=
"italic">c
</mml:mi>
131 <mml:mi mathvariant=
"italic">c
</mml:mi>
136 <mml:mi mathvariant=
"italic">y
</mml:mi>
139 <mml:mi mathvariant=
"italic">z
</mml:mi>
141 <mml:mfenced open=
"(" close=
")">
145 <mml:mi mathvariant=
"italic">c
</mml:mi>
150 <mml:mi mathvariant=
"italic">x
</mml:mi>
152 <mml:mi mathvariant=
"italic">s
</mml:mi>
162 <mml:mi mathvariant=
"italic">x
</mml:mi>
165 <mml:mi mathvariant=
"italic">z
</mml:mi>
167 <mml:mfenced open=
"(" close=
")">
171 <mml:mi mathvariant=
"italic">c
</mml:mi>
176 <mml:mi mathvariant=
"italic">y
</mml:mi>
178 <mml:mi mathvariant=
"italic">s
</mml:mi>
183 <mml:mi mathvariant=
"italic">y
</mml:mi>
186 <mml:mi mathvariant=
"italic">z
</mml:mi>
188 <mml:mfenced open=
"(" close=
")">
192 <mml:mi mathvariant=
"italic">c
</mml:mi>
197 <mml:mi mathvariant=
"italic">x
</mml:mi>
199 <mml:mi mathvariant=
"italic">s
</mml:mi>
205 <mml:msup><mml:mi mathvariant=
"italic">z
</mml:mi>
209 <mml:mfenced open=
"(" close=
")">
213 <mml:mi mathvariant=
"italic">c
</mml:mi>
218 <mml:mi mathvariant=
"italic">c
</mml:mi>
245 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
248 <mml:mi mathvariant=
"italic">c
</mml:mi>
251 <mml:mi mathvariant=
"italic">cos
</mml:mi>
253 <mml:mfenced open=
"(" close=
")">
254 <mml:mi mathvariant=
"italic">angle
</mml:mi>
259 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
262 <mml:mi mathvariant=
"italic">s
</mml:mi>
265 <mml:mi mathvariant=
"italic">sin
</mml:mi>
267 <mml:mfenced open=
"(" close=
")">
268 <mml:mi mathvariant=
"italic">angle
</mml:mi>
274 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
277 <mml:mfenced open=
"∥" close=
"∥">
278 <mml:mfenced open=
"(" close=
")">
279 <mml:mi mathvariant=
"italic">x
</mml:mi>
280 <mml:mi mathvariant=
"italic">y
</mml:mi>
281 <mml:mi mathvariant=
"italic">z
</mml:mi>
289 will normalize this vector).
293 If the matrix mode is either
<code class=
"constant">GL_MODELVIEW
</code> or
<code class=
"constant">GL_PROJECTION
</code>,
294 all objects drawn after
<code class=
"function">glRotate
</code> is called are rotated.
295 Use
<a class=
"citerefentry" href=
"glPushMatrix.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glPushMatrix
</span></span></a> and
<a class=
"citerefentry" href=
"glPopMatrix.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glPopMatrix
</span></span></a> to save and restore
296 the unrotated coordinate system.
297 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"notes"></a><h2>Notes
</h2><p>
298 This rotation follows the right-hand rule, so
300 <mml:math xmlns:
mml=
"http://www.w3.org/1998/Math/MathML" overflow=
"scroll">
302 <mml:mfenced open=
"(" close=
")">
303 <mml:mi mathvariant=
"italic">x
</mml:mi>
304 <mml:mi mathvariant=
"italic">y
</mml:mi>
305 <mml:mi mathvariant=
"italic">z
</mml:mi>
309 user, the rotation will be counterclockwise.
310 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"errors"></a><h2>Errors
</h2><p>
311 <code class=
"constant">GL_INVALID_OPERATION
</code> is generated if
<code class=
"function">glRotate
</code>
312 is executed between the execution of
<a class=
"citerefentry" href=
"glBegin.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glBegin
</span></span></a>
313 and the corresponding execution of
<a class=
"citerefentry" href=
"glEnd.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glEnd
</span></span></a>.
314 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"associatedgets"></a><h2>Associated Gets
</h2><p>
315 <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>
317 <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>
319 <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>
321 <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>
323 <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>
324 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"seealso"></a><h2>See Also
</h2><p>
325 <a class=
"citerefentry" href=
"glMatrixMode.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glMatrixMode
</span></span></a>,
326 <a class=
"citerefentry" href=
"glMultMatrix.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glMultMatrix
</span></span></a>,
327 <a class=
"citerefentry" href=
"glPushMatrix.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glPushMatrix
</span></span></a>,
328 <a class=
"citerefentry" href=
"glScale.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glScale
</span></span></a>,
329 <a class=
"citerefentry" href=
"glTranslate.xml"><span class=
"citerefentry"><span class=
"refentrytitle">glTranslate
</span></span></a>
330 </p></div><div class=
"refsect1" lang=
"en" xml:
lang=
"en"><a id=
"Copyright"></a><h2>Copyright
</h2><p>
331 Copyright
<span class=
"trademark"></span>©
1991-
2006
332 Silicon Graphics, Inc. This document is licensed under the SGI
333 Free Software B License. For details, see
334 <a class=
"ulink" href=
"http://oss.sgi.com/projects/FreeB/" target=
"_top">http://oss.sgi.com/projects/FreeB/
</a>.
335 </p></div></div></body></html>