<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Class: Fox::FXGLCube
— FXRuby API Documentation
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "Fox::FXGLCube";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (F)</a> »
<span class='title'><span class='object_link'><a href="../Fox.html" title="Fox (module)">Fox</a></span></span>
»
<span class="title">FXGLCube</span>
</div>
<div id="search">
<a class="full_list_link" id="class_list_link"
href="../class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Class: Fox::FXGLCube
</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd>
<span class="inheritName"><span class='object_link'><a href="FXGLShape.html" title="Fox::FXGLShape (class)">FXGLShape</a></span></span>
<ul class="fullTree">
<li>Object</li>
<li class="next"><span class='object_link'><a href="FXObject.html" title="Fox::FXObject (class)">FXObject</a></span></li>
<li class="next"><span class='object_link'><a href="FXGLObject.html" title="Fox::FXGLObject (class)">FXGLObject</a></span></li>
<li class="next"><span class='object_link'><a href="FXGLShape.html" title="Fox::FXGLShape (class)">FXGLShape</a></span></li>
<li class="next">Fox::FXGLCube</li>
</ul>
<a href="#" class="inheritanceTree">show all</a>
</dd>
</dl>
<dl>
<dt>Includes:</dt>
<dd>OpenGL</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>lib/fox16/glshapes.rb</dd>
</dl>
</div>
<h2>Overview</h2><div class="docstring">
<div class="discussion">
<p>OpenGL cube object</p>
</div>
</div>
<div class="tags">
</div>
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#depth-instance_method" title="#depth (instance method)">#<strong>depth</strong> ⇒ Object </a>
</span>
<span class="summary_desc"><div class='inline'>
<p>Cube depth [Float].</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#height-instance_method" title="#height (instance method)">#<strong>height</strong> ⇒ Object </a>
</span>
<span class="summary_desc"><div class='inline'>
<p>Cube height [Float].</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#width-instance_method" title="#width (instance method)">#<strong>width</strong> ⇒ Object </a>
</span>
<span class="summary_desc"><div class='inline'>
<p>Cube width [Float].</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Attributes inherited from <span class='object_link'><a href="FXGLShape.html" title="Fox::FXGLShape (class)">FXGLShape</a></span></h3>
<p class="inherited"><span class='object_link'><a href="FXGLShape.html#position-instance_method" title="Fox::FXGLShape#position (method)">#position</a></span>, <span class='object_link'><a href="FXGLShape.html#tipText-instance_method" title="Fox::FXGLShape#tipText (method)">#tipText</a></span></p>
<h2>
Instance Method Summary
<small><a href="#" class="summary_toggle">collapse</a></small>
</h2>
<ul class="summary">
<li class="public ">
<span class="summary_signature">
<a href="#drawshape-instance_method" title="#drawshape (instance method)">#<strong>drawshape</strong>(viewer) ⇒ Object </a>
</span>
<span class="summary_desc"><div class='inline'>
<p>Draws this cube into <em>viewer</em> (an FXGLViewer instance).</p>
</div></span>
</li>
<li class="public ">
<span class="summary_signature">
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(*args) ⇒ FXGLCube </a>
</span>
<span class="note title constructor">constructor</span>
<span class="summary_desc"><div class='inline'>
<p>Return an initialized FXGLCube instance.</p>
</div></span>
</li>
</ul>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="FXGLShape.html" title="Fox::FXGLShape (class)">FXGLShape</a></span></h3>
<p class="inherited"><span class='object_link'><a href="FXGLShape.html#getMaterial-instance_method" title="Fox::FXGLShape#getMaterial (method)">#getMaterial</a></span>, <span class='object_link'><a href="FXGLShape.html#setMaterial-instance_method" title="Fox::FXGLShape#setMaterial (method)">#setMaterial</a></span>, <span class='object_link'><a href="FXGLShape.html#setRange-instance_method" title="Fox::FXGLShape#setRange (method)">#setRange</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="FXGLObject.html" title="Fox::FXGLObject (class)">FXGLObject</a></span></h3>
<p class="inherited"><span class='object_link'><a href="FXGLObject.html#bounds-instance_method" title="Fox::FXGLObject#bounds (method)">#bounds</a></span>, <span class='object_link'><a href="FXGLObject.html#canDelete-instance_method" title="Fox::FXGLObject#canDelete (method)">#canDelete</a></span>, <span class='object_link'><a href="FXGLObject.html#canDrag-instance_method" title="Fox::FXGLObject#canDrag (method)">#canDrag</a></span>, <span class='object_link'><a href="FXGLObject.html#copy-instance_method" title="Fox::FXGLObject#copy (method)">#copy</a></span>, <span class='object_link'><a href="FXGLObject.html#drag-instance_method" title="Fox::FXGLObject#drag (method)">#drag</a></span>, <span class='object_link'><a href="FXGLObject.html#draw-instance_method" title="Fox::FXGLObject#draw (method)">#draw</a></span>, <span class='object_link'><a href="FXGLObject.html#hit-instance_method" title="Fox::FXGLObject#hit (method)">#hit</a></span>, <span class='object_link'><a href="FXGLObject.html#identify-instance_method" title="Fox::FXGLObject#identify (method)">#identify</a></span></p>
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="FXObject.html" title="Fox::FXObject (class)">FXObject</a></span></h3>
<p class="inherited"><span class='object_link'><a href="FXObject.html#bind-instance_method" title="Fox::FXObject#bind (method)">#bind</a></span>, <span class='object_link'><a href="FXObject.html#handle-instance_method" title="Fox::FXObject#handle (method)">#handle</a></span>, <span class='object_link'><a href="FXObject.html#load-instance_method" title="Fox::FXObject#load (method)">#load</a></span>, <span class='object_link'><a href="FXObject.html#save-instance_method" title="Fox::FXObject#save (method)">#save</a></span>, <span class='object_link'><a href="FXObject.html#subclasses-class_method" title="Fox::FXObject.subclasses (method)">subclasses</a></span></p>
<div id="constructor_details" class="method_details_list">
<h2>Constructor Details</h2>
<div class="method_details first">
<h3 class="signature first" id="initialize-instance_method">
#<strong>initialize</strong>(*args) ⇒ <tt><span class='object_link'><a href="" title="Fox::FXGLCube (class)">FXGLCube</a></span></tt>
</h3><div class="docstring">
<div class="discussion">
<p>Return an initialized FXGLCube instance.</p>
<p>One option is to initialize the cube with a specified origin, width, height and depth:</p>
<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_aCube'>aCube</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="" title="Fox::FXGLCube (class)">FXGLCube</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_x'>x</span><span class='comma'>,</span> <span class='id identifier rubyid_y'>y</span><span class='comma'>,</span> <span class='id identifier rubyid_z'>z</span><span class='comma'>,</span> <span class='id identifier rubyid_w'>w</span><span class='comma'>,</span> <span class='id identifier rubyid_h'>h</span><span class='comma'>,</span> <span class='id identifier rubyid_d'>d</span><span class='rparen'>)</span>
</code></pre>
<p>If left unspecified, the width (<em>w</em>), height (<em>h</em>) and depth (<em>d</em>) default to 1.0.</p>
<p>Another option is to initialize the cube with a specified origin, width, height, depth and material:</p>
<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_aCube'>aCube</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="" title="Fox::FXGLCube (class)">FXGLCube</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_x'>x</span><span class='comma'>,</span> <span class='id identifier rubyid_y'>y</span><span class='comma'>,</span> <span class='id identifier rubyid_z'>z</span><span class='comma'>,</span> <span class='id identifier rubyid_w'>w</span><span class='comma'>,</span> <span class='id identifier rubyid_h'>h</span><span class='comma'>,</span> <span class='id identifier rubyid_d'>d</span><span class='comma'>,</span> <span class='id identifier rubyid_material'>material</span><span class='rparen'>)</span>
</code></pre>
<p>where the <em>material</em> is an FXMaterial instance.</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
177
178
179
180
181
182
183
184
185
186
187
188
189
190</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/fox16/glshapes.rb', line 177</span>
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
<span class='kw'>if</span> <span class='id identifier rubyid_args'>args</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span> <span class='op'>==</span> <span class='int'>7</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>2</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='const'>SHADING_SMOOTH</span><span class='op'>|</span><span class='const'>STYLE_SURFACE</span><span class='comma'>,</span>
<span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>6</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>6</span><span class='rbracket'>]</span><span class='rparen'>)</span>
<span class='kw'>else</span>
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>2</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='const'>SHADING_SMOOTH</span><span class='op'>|</span><span class='const'>STYLE_SURFACE</span><span class='rparen'>)</span>
<span class='kw'>end</span>
<span class='ivar'>@width</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>3</span><span class='rbracket'>]</span> <span class='op'>?</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>3</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='float'>1.0</span>
<span class='ivar'>@height</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>4</span><span class='rbracket'>]</span> <span class='op'>?</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>4</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='float'>1.0</span>
<span class='ivar'>@depth</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>5</span><span class='rbracket'>]</span> <span class='op'>?</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>5</span><span class='rbracket'>]</span> <span class='op'>:</span> <span class='float'>1.0</span>
<span class='id identifier rubyid_setRange'>setRange</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="FXRangef.html" title="Fox::FXRangef (class)">FXRangef</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="FXRangef.html#initialize-instance_method" title="Fox::FXRangef#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='op'>-</span><span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@width</span><span class='comma'>,</span> <span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@width</span><span class='comma'>,</span>
<span class='op'>-</span><span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@height</span><span class='comma'>,</span> <span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@height</span><span class='comma'>,</span>
<span class='op'>-</span><span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@depth</span><span class='comma'>,</span> <span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@depth</span><span class='rparen'>)</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_attr_details" class="attr_details">
<h2>Instance Attribute Details</h2>
<span id="depth=-instance_method"></span>
<div class="method_details first">
<h3 class="signature first" id="depth-instance_method">
#<strong>depth</strong> ⇒ <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Cube depth [Float]</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
157
158
159</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/fox16/glshapes.rb', line 157</span>
<span class='kw'>def</span> <span class='id identifier rubyid_depth'>depth</span>
<span class='ivar'>@depth</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<span id="height=-instance_method"></span>
<div class="method_details ">
<h3 class="signature " id="height-instance_method">
#<strong>height</strong> ⇒ <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Cube height [Float]</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
154
155
156</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/fox16/glshapes.rb', line 154</span>
<span class='kw'>def</span> <span class='id identifier rubyid_height'>height</span>
<span class='ivar'>@height</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
<span id="width=-instance_method"></span>
<div class="method_details ">
<h3 class="signature " id="width-instance_method">
#<strong>width</strong> ⇒ <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Cube width [Float]</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
151
152
153</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/fox16/glshapes.rb', line 151</span>
<span class='kw'>def</span> <span class='id identifier rubyid_width'>width</span>
<span class='ivar'>@width</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
<div id="instance_method_details" class="method_details_list">
<h2>Instance Method Details</h2>
<div class="method_details first">
<h3 class="signature first" id="drawshape-instance_method">
#<strong>drawshape</strong>(viewer) ⇒ <tt>Object</tt>
</h3><div class="docstring">
<div class="discussion">
<p>Draws this cube into <em>viewer</em> (an FXGLViewer instance).</p>
</div>
</div>
<div class="tags">
</div><table class="source_code">
<tr>
<td>
<pre class="lines">
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'lib/fox16/glshapes.rb', line 195</span>
<span class='kw'>def</span> <span class='id identifier rubyid_drawshape'>drawshape</span><span class='lparen'>(</span><span class='id identifier rubyid_viewer'>viewer</span><span class='rparen'>)</span>
<span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_xmax'>xmax</span> <span class='op'>=</span> <span class='op'>-</span><span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@width</span><span class='comma'>,</span> <span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@width</span>
<span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span> <span class='op'>=</span> <span class='op'>-</span><span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@height</span><span class='comma'>,</span> <span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@height</span>
<span class='id identifier rubyid_zmin'>zmin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span> <span class='op'>=</span> <span class='op'>-</span><span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@depth</span><span class='comma'>,</span> <span class='float'>0.5</span><span class='op'>*</span><span class='ivar'>@depth</span>
<span class='comment'># Draw low face
</span> <span class='id identifier rubyid_glBegin'>glBegin</span><span class='lparen'>(</span><span class='const'>GL_TRIANGLE_STRIP</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glNormal3d'>glNormal3d</span><span class='lparen'>(</span><span class='float'>0.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='comma'>,</span> <span class='op'>-</span><span class='float'>1.0</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glEnd'>glEnd</span><span class='lparen'>(</span><span class='rparen'>)</span>
<span class='comment'># Draw east face
</span> <span class='id identifier rubyid_glBegin'>glBegin</span><span class='lparen'>(</span><span class='const'>GL_TRIANGLE_STRIP</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glNormal3d'>glNormal3d</span><span class='lparen'>(</span><span class='float'>1.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glEnd'>glEnd</span><span class='lparen'>(</span><span class='rparen'>)</span>
<span class='comment'># Draw high face
</span> <span class='id identifier rubyid_glBegin'>glBegin</span><span class='lparen'>(</span><span class='const'>GL_TRIANGLE_STRIP</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glNormal3d'>glNormal3d</span><span class='lparen'>(</span><span class='float'>0.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='comma'>,</span> <span class='float'>1.0</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glEnd'>glEnd</span><span class='lparen'>(</span><span class='rparen'>)</span>
<span class='comment'># Draw west face
</span> <span class='id identifier rubyid_glBegin'>glBegin</span><span class='lparen'>(</span><span class='const'>GL_TRIANGLE_STRIP</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glNormal3d'>glNormal3d</span><span class='lparen'>(</span><span class='op'>-</span><span class='float'>1.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glEnd'>glEnd</span><span class='lparen'>(</span><span class='rparen'>)</span>
<span class='comment'># Draw north face
</span> <span class='id identifier rubyid_glBegin'>glBegin</span><span class='lparen'>(</span><span class='const'>GL_TRIANGLE_STRIP</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glNormal3d'>glNormal3d</span><span class='lparen'>(</span><span class='float'>0.0</span><span class='comma'>,</span> <span class='float'>1.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymax'>ymax</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glEnd'>glEnd</span><span class='lparen'>(</span><span class='rparen'>)</span>
<span class='comment'># Draw south face
</span> <span class='id identifier rubyid_glBegin'>glBegin</span><span class='lparen'>(</span><span class='const'>GL_TRIANGLE_STRIP</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glNormal3d'>glNormal3d</span><span class='lparen'>(</span><span class='float'>0.0</span><span class='comma'>,</span> <span class='op'>-</span><span class='float'>1.0</span><span class='comma'>,</span> <span class='float'>0.0</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmin'>xmin</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmax'>zmax</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glVertex3d'>glVertex3d</span><span class='lparen'>(</span><span class='id identifier rubyid_xmax'>xmax</span><span class='comma'>,</span> <span class='id identifier rubyid_ymin'>ymin</span><span class='comma'>,</span> <span class='id identifier rubyid_zmin'>zmin</span><span class='rparen'>)</span>
<span class='id identifier rubyid_glEnd'>glEnd</span><span class='lparen'>(</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
</td>
</tr>
</table>
</div>
</div>
</div>
<div id="footer">
Generated on Mon Jan 2 11:48:21 2023 by
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.28 (ruby-3.1.2).
</div>
</div>
</body>
</html>