-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathSurfaceBuilder.html
executable file
·415 lines (329 loc) · 24.5 KB
/
SurfaceBuilder.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
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
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
<!DOCTYPE html><html xmlns:dc="http://purl.org/dc/terms/"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width"><link rel=stylesheet type="text/css" href="/style.css">
<script type="text/x-mathjax-config"> MathJax.Hub.Config({"HTML-CSS": { availableFonts: ["STIX","TeX"], linebreaks: { automatic:true }, preferredFont: "TeX" },
tex2jax: { displayMath: [ ["$$","$$"], ["\\[", "\\]"] ], inlineMath: [ ["$", "$"], ["\\\\(","\\\\)"] ], processEscapes: true } });
</script><script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS_HTML-full"></script></head><body> <div class="header">
<nav><p><a href="#navigation">Menu</a> - <a href="#top">Top</a> - <a href="/">Home</a></nav></div>
<div class="mainarea" id="top">
<h1 id="surfacebuilder">SurfaceBuilder</h1>
<p><a href="index.html">Back to documentation index.</a></p>
<p><a name="SurfaceBuilder"></a>
### new SurfaceBuilder()</p>
<p>An evaluator of surface evaluator objects for generating
vertex attributes for a surface.</p>
<p>For more information, see the <a href="tutorial-surfaces.html">Parametric Curves and Parametric Surfaces</a> tutorial.</p>
<h3 id="methods">Methods</h3>
<ul>
<li><a href="#SurfaceBuilder_attribute">attribute</a><br />Sets the parametric surface used to generate vertex attribute values.</li>
<li><a href="#SurfaceBuilder_clearVertices">clearVertices</a><br />Clears the arrays of attribute values (such as positions and normals)
and vertex indices generated so far.</li>
<li><a href="#SurfaceBuilder_constantAttribute">constantAttribute</a><br />Sets a value for an attribute semantic that will be the same for all
future vertices generated by the “evalSurface” method.</li>
<li><a href="#SurfaceBuilder_constantColor">constantColor</a><br />Sets a value for a color attribute that will be the same for all
future vertices generated by the “evalSurface” method.</li>
<li><a href="#SurfaceBuilder_evalSurface">evalSurface</a><br />Generates the vertex attributes of the parametric surfaces.</li>
<li><a href="#SurfaceBuilder_position">position</a><br />Sets the parametric surface used to generate vertex positions.</li>
<li><a href="#SurfaceBuilder_positionNormal">positionNormal</a><br />Sets the parametric surface used to generate vertex positions and normals.</li>
<li><a href="#SurfaceBuilder_positionNormalTexCoord">positionNormalTexCoord</a><br />Sets the parametric surface used to generate vertex positions and normals, and
sets a surface evaluator that generates texture coordinates in the interval [0, 1] along the u- and v-axes of the surface.</li>
<li><a href="#SurfaceBuilder_positionTexCoord">positionTexCoord</a><br />Sets the parametric surface used to generate vertex positions, and
sets a surface evaluator that generates texture coordinates in the interval [0, 1] along the u- and v-axes of the surface.</li>
<li><a href="#SurfaceBuilder.surfaceToBuffer">surfaceToBuffer</a><br />Convenience method for creating a mesh buffer from a parametric
surface.</li>
<li><a href="#SurfaceBuilder_texCoord">texCoord</a><br />Sets the parametric surface used to generate texture coordinates.</li>
<li><a href="#SurfaceBuilder_toMeshBuffer">toMeshBuffer</a><br />Generates a mesh buffer containing the vertex attributes
generated so far.</li>
</ul>
<p><a name="SurfaceBuilder_attribute"></a>
### SurfaceBuilder#attribute(surface, semantic, [semanticIndex], [size])</p>
<p>Sets the parametric surface used to generate vertex attribute values.</p>
<h4 id="parameters">Parameters</h4>
<ul>
<li><code>surface</code> (Type: Object)<br />A <a href="Surface.html">surface evaluator object</a> that describes the parametric surface used to generate attribute values. u- and v-coordinates for the specified surface correspond to u- and v-coordinates, respectively, for the surface used to generate vertex positions.</li>
<li>
<table>
<tbody>
<tr>
<td><code>semantic</code> (Type: number</td>
<td>string)<br />An attribute semantic, such as “position” or “uv”. For more, see CurveBuilder#attribute.</td>
</tr>
</tbody>
</table>
</li>
<li><code>semanticIndex</code> (Type: number) (optional)<br />The set index of the attribute for the specified semantic. 0 is the first index of the attribute, 1 is the second, and so on. This is ignored if “name” is a string. If null, undefined, or omitted, the default is 0.</li>
<li><code>size</code> (Type: number) (optional)<br />The number of elements in each position and normal. For example, if the attribute is 3-dimensional, this parameter is 3. If null, undefined, or omitted, the default is 3. Throws an error if this value is 0 or less.</li>
</ul>
<h4 id="return-value">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<h4 id="examples">Examples</h4>
<p>The following example sets the surface
function for texture coordinates to a linear evaluator. Thus, coordinates passed to the
evalSurface method will be interpolated as direct
texture coordinates.</p>
<pre>surface.attribute({"evaluate":function(u,v) {
"use strict"; return [u,v] }},"uv");
</pre>
<p><a name="SurfaceBuilder_clearVertices"></a>
### SurfaceBuilder#clearVertices()</p>
<p>Clears the arrays of attribute values (such as positions and normals)
and vertex indices generated so far. The attributes themselves will remain.</p>
<h4 id="return-value-1">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<p><a name="SurfaceBuilder_constantAttribute"></a>
### SurfaceBuilder#constantAttribute(constantValue, semantic, [semanticIndex])</p>
<p>Sets a value for an attribute semantic that will be the same for all
future vertices generated by the “evalSurface” method.</p>
<h4 id="parameters-1">Parameters</h4>
<ul>
<li>
<table>
<tbody>
<tr>
<td><code>constantValue</code> (Type: Object</td>
<td>number)<br />A constant value for the attribute semantic.</td>
</tr>
</tbody>
</table>
</li>
<li>
<table>
<tbody>
<tr>
<td><code>semantic</code> (Type: number</td>
<td>string)<br />An attribute semantic, such as “position” or “uv”. For more, see CurveBuilder#attribute.</td>
</tr>
</tbody>
</table>
</li>
<li><code>semanticIndex</code> (Type: number) (optional)<br />The set index of the attribute for the specified semantic. 0 is the first index of the attribute, 1 is the second, and so on. This is ignored if “name” is a string. If null, undefined, or omitted, the default is 0.</li>
</ul>
<h4 id="return-value-2">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<h4 id="examples-1">Examples</h4>
<p>This example sets the color to use for future
vertices to be generated for the surface.</p>
<pre>// Set color to red
surface.constantAttribute([1,0,0],"COLOR");
</pre>
<p><a name="SurfaceBuilder_constantColor"></a>
### SurfaceBuilder#constantColor(color, [semanticIndex])</p>
<p>Sets a value for a color attribute that will be the same for all
future vertices generated by the “evalSurface” method.</p>
<h4 id="parameters-2">Parameters</h4>
<ul>
<li>
<table>
<tbody>
<tr>
<td><code>color</code> (Type: Array.<number></td>
<td>number</td>
<td>string)<br />A <a href="toGLColor.html">color vector or string</a> identifying the constant color value. The alpha channel of the resulting color will be ignored.</td>
</tr>
</tbody>
</table>
</li>
<li><code>semanticIndex</code> (Type: number) (optional)<br />The set index of the attribute for the specified semantic. 0 is the first index of the attribute, 1 is the second, and so on. If null, undefined, or omitted, the default is 0.</li>
</ul>
<h4 id="return-value-3">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<h4 id="examples-2">Examples</h4>
<p>This example sets the color to use for future
vertices to be generated for the surface.</p>
<pre>// Set color to red
surface.constantColor("red");
</pre>
<p><a name="SurfaceBuilder_evalSurface"></a>
### SurfaceBuilder#evalSurface([mode], [un], [vn], [u1], [u2], [v1], [v2])</p>
<p>Generates the vertex attributes of the parametric surfaces.</p>
<h4 id="parameters-3">Parameters</h4>
<ul>
<li><code>mode</code> (Type: number) (optional)<br />If this value is <a href="MeshBuffer.html#MeshBuffer.TRIANGLES">MeshBuffer.TRIANGLES</a>, or is null, undefined, or omitted, generates a series of triangles defining the surface. If this value is <a href="MeshBuffer.html#MeshBuffer.LINES">MeshBuffer.LINES</a>, generates a series of lines defining the surface. If this value is <a href="MeshBuffer.html#MeshBuffer.POINTS">MeshBuffer.POINTS</a>, generates a series of points along the surface. For any other value, this method has no effect.</li>
<li><code>un</code> (Type: number) (optional)<br />Number of subdivisions along the u-axis. Default is 24. If 0, this method has no effect. Throws an error if this value is less than 0.</li>
<li><code>vn</code> (Type: number) (optional)<br />Number of subdivisions along the v-axis. Default is 24. If 0, this method has no effect. Throws an error if this value is less than 0.</li>
<li><code>u1</code> (Type: number) (optional)<br />Starting u-coordinate of the surface to evaluate. Default is the starting u-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 0 if not given.</li>
<li><code>u2</code> (Type: number) (optional)<br />Ending u-coordinate of the surface to evaluate. Default is the ending u-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 1 if not given.</li>
<li><code>v1</code> (Type: number) (optional)<br />Starting v-coordinate of the surface to evaluate. Default is the starting v-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 0 if not given.</li>
<li><code>v2</code> (Type: number) (optional)<br />Ending v-coordinate of the surface to evaluate. Default is the ending v-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 1 if not given.</li>
</ul>
<h4 id="return-value-4">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<p><a name="SurfaceBuilder_position"></a>
### SurfaceBuilder#position(surface, [size])</p>
<p>Sets the parametric surface used to generate vertex positions.</p>
<h4 id="parameters-4">Parameters</h4>
<ul>
<li><code>surface</code> (Type: Object)<br />A <a href="Surface.html">surface evaluator object</a> that describes the parametric surface used to generate position values.</li>
<li><code>size</code> (Type: number) (optional)<br />The number of elements in each position value. For example, if the attribute is 3-dimensional, this parameter is 3. If null, undefined, or omitted, the default is 3. Throws an error if this value is 0 or less.</li>
</ul>
<h4 id="return-value-5">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<p><a name="SurfaceBuilder_positionNormal"></a>
### SurfaceBuilder#positionNormal(surface, [size])</p>
<p>Sets the parametric surface used to generate vertex positions and normals.</p>
<h4 id="parameters-5">Parameters</h4>
<ul>
<li><code>surface</code> (Type: Object)<br />A <a href="Surface.html">surface evaluator object</a> that describes the parametric surface used to generate positions.</li>
<li><code>size</code> (Type: number) (optional)<br />The number of elements in each position and normal. For example, if the attribute is 3-dimensional, this parameter is 3. If null, undefined, or omitted, the default is 3. Throws an error if this value is 0 or less.</li>
</ul>
<h4 id="return-value-6">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<p><a name="SurfaceBuilder_positionNormalTexCoord"></a>
### SurfaceBuilder#positionNormalTexCoord(surface, [size])</p>
<p>Sets the parametric surface used to generate vertex positions and normals, and
sets a surface evaluator that generates texture coordinates in the interval [0, 1] along the u- and v-axes of the surface.</p>
<h4 id="parameters-6">Parameters</h4>
<ul>
<li>
<table>
<tbody>
<tr>
<td><code>surface</code> (Type: Object</td>
<td>null)<br />A <a href="Surface.html">surface evaluator object</a> that describes the parametric surface used to generate positions. U and V texture coordinates, which will each be in the interval [0, 1] by this method, correspond to u- and v-coordinates, respectively, for the specified surface.</td>
</tr>
</tbody>
</table>
</li>
<li><code>size</code> (Type: number) (optional)<br />The number of elements in each position and normal. For example, if the attribute is 3-dimensional, this parameter is 3. If null, undefined, or omitted, the default is 3. The texture coordinates will be 2-dimensional.</li>
</ul>
<h4 id="return-value-7">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<p><a name="SurfaceBuilder_positionTexCoord"></a>
### SurfaceBuilder#positionTexCoord(surface, [size])</p>
<p>Sets the parametric surface used to generate vertex positions, and
sets a surface evaluator that generates texture coordinates in the interval [0, 1] along the u- and v-axes of the surface.</p>
<h4 id="parameters-7">Parameters</h4>
<ul>
<li>
<table>
<tbody>
<tr>
<td><code>surface</code> (Type: Object</td>
<td>null)<br />A <a href="Surface.html">surface evaluator object</a> that describes the parametric surface used to generate positions. U and V texture coordinates, which will each be in the interval [0, 1] by this method, correspond to u- and v-coordinates, respectively, for the specified surface.</td>
</tr>
</tbody>
</table>
</li>
<li><code>size</code> (Type: number) (optional)<br />The number of elements in each position. For example, if the attribute is 3-dimensional, this parameter is 3. If null, undefined, or omitted, the default is 3. The texture coordinates will be 2-dimensional. Throws an error if this value is 0 or less.</li>
</ul>
<h4 id="return-value-8">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<p><a name="SurfaceBuilder.surfaceToBuffer"></a>
### (static) SurfaceBuilder.surfaceToBuffer(surface, [mode], [un], [vn], [u1], [u2], [v1], [v2])</p>
<p>Convenience method for creating a mesh buffer from a parametric
surface. The mesh buffer will contain positions, vertex normals, and
texture coordinates that cover the specified surface.</p>
<h4 id="parameters-8">Parameters</h4>
<ul>
<li><code>surface</code> (Type: Object)<br />A <a href="Surface.html">surface evaluator object</a> that describes the parametric surface used to generate positions. U and V texture coordinates, which will each be in the interval [0, 1] by this method, correspond to u- and v-coordinates, respectively, for the specified surface.</li>
<li><code>mode</code> (Type: number) (optional)<br />If this value is <a href="MeshBuffer.html#MeshBuffer.TRIANGLES">MeshBuffer.TRIANGLES</a>, or is null, undefined, or omitted, generates a series of triangles defining the surface. If this value is <a href="MeshBuffer.html#MeshBuffer.LINES">MeshBuffer.LINES</a>, generates a series of lines defining the surface. If this value is <a href="MeshBuffer.html#MeshBuffer.POINTS">MeshBuffer.POINTS</a>, generates a series of points along the surface. For any other value, this method has no effect.</li>
<li><code>un</code> (Type: number) (optional)<br />Number of subdivisions along the u-axis. Default is 24.</li>
<li><code>vn</code> (Type: number) (optional)<br />Number of subdivisions along the v-axis. Default is 24.</li>
<li><code>u1</code> (Type: number) (optional)<br />Starting u-coordinate of the surface to evaluate. Default is the starting u-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 0 if not given.</li>
<li><code>u2</code> (Type: number) (optional)<br />Ending u-coordinate of the surface to evaluate. Default is the ending u-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 1 if not given.</li>
<li><code>v1</code> (Type: number) (optional)<br />Starting v-coordinate of the surface to evaluate. Default is the starting v-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 0 if not given.</li>
<li><code>v2</code> (Type: number) (optional)<br />Ending v-coordinate of the surface to evaluate. Default is the ending v-coordinate given by the <a href="Surface.html">surface evaluator object</a>, or 1 if not given.</li>
</ul>
<h4 id="return-value-9">Return Value</h4>
<p>The generated mesh buffer. (Type: <a href="MeshBuffer.html">MeshBuffer</a>)</p>
<p><a name="SurfaceBuilder_texCoord"></a>
### SurfaceBuilder#texCoord(surface, [size])</p>
<p>Sets the parametric surface used to generate texture coordinates.</p>
<h4 id="parameters-9">Parameters</h4>
<ul>
<li><code>surface</code> (Type: Object)<br />A <a href="Surface.html">surface evaluator object</a> that describes the parametric surface used to generate texture coordinates. u- and v-coordinates for the specified surface correspond to u- and v-coordinates, respectively, for the surface used to generate vertex positions.</li>
<li><code>size</code> (Type: number) (optional)<br />The number of elements in each value of the attribute. For example, if the attribute is 3-dimensional, this parameter is 3. If null, undefined, or omitted, the default is 2.</li>
</ul>
<h4 id="return-value-10">Return Value</h4>
<p>This object. (Type: <a href="SurfaceBuilder.html">SurfaceBuilder</a>)</p>
<p><a name="SurfaceBuilder_toMeshBuffer"></a>
### SurfaceBuilder#toMeshBuffer()</p>
<p>Generates a mesh buffer containing the vertex attributes
generated so far. The mesh buffer’s primitive type will equal the
last type passed to the “mode” parameter in the SurfaceBuilder.surfaceEval method.</p>
<h4 id="return-value-11">Return Value</h4>
<p>The generated mesh buffer. (Type: <a href="MeshBuffer.html">MeshBuffer</a>)</p>
<p><a href="index.html">Back to documentation index.</a></p>
</div><nav id="navigation"><ul>
<li><a href="/">Back to start site.</a>
<li><a href="https://github.com/peteroupc/peteroupc.github.io">This site's repository (source code)</a>
<li><a href="https://github.com/peteroupc/peteroupc.github.io/issues">Post an issue or comment</a></ul>
<div class="noprint">
<p>
<a href="//twitter.com/intent/tweet">Share via Twitter</a>, <a href="//www.facebook.com/sharer/sharer.php" id="sharer">Share via Facebook</a>
</p>
</div>
<h3 id="navigation">Navigation</h3>
<ul>
<li><a href="BSplineCurve.html">BSplineCurve</a></li>
<li><a href="BSplineSurface.html">BSplineSurface</a></li>
<li><a href="Curve.html">Curve</a></li>
<li><a href="CurveBuilder.html">CurveBuilder</a></li>
<li><a href="GraphicsPath.html">GraphicsPath</a></li>
<li><a href="H3DU.html">H3DU</a></li>
<li><a href="MathUtil.html">MathUtil</a></li>
<li><a href="MeshBuffer.html">MeshBuffer</a></li>
<li><a href="Meshes.html">Meshes</a></li>
<li><a href="PiecewiseCurve.html">PiecewiseCurve</a></li>
<li><a href="Surface.html">Surface</a></li>
<li><a href="SurfaceBuilder.html">SurfaceBuilder</a></li>
<li><a href="Transform.html">Transform</a></li>
<li><a href="extras_camera.html">module:extras/camera</a></li>
<li><a href="extras_camera.Camera.html">module:extras/camera.Camera</a></li>
<li><a href="extras_camera.InputTracker.html">module:extras/camera.InputTracker</a></li>
<li><a href="extras_createwasher.html">module:extras/createwasher</a></li>
<li><a href="extras_curvetube.html">module:extras/curvetube</a></li>
<li><a href="extras_curvetube.CurveTube.html">module:extras/curvetube.CurveTube</a></li>
<li><a href="extras_derivedcurves.html">module:extras/derivedcurves</a></li>
<li><a href="extras_evaluators.html">module:extras/evaluators</a></li>
<li><a href="extras_evaluators.Roulette.html">module:extras/evaluators.Roulette</a></li>
<li><a href="extras_evaluators.SurfaceOfRevolution.html">module:extras/evaluators.SurfaceOfRevolution</a></li>
<li><a href="extras_fourierknot.html">module:extras/fourierknot</a></li>
<li><a href="extras_gradients.html">module:extras/gradients</a></li>
<li><a href="extras_matrixstack.html">module:extras/matrixstack</a></li>
<li><a href="extras_matrixstack.MatrixStack.html">module:extras/matrixstack.MatrixStack</a></li>
<li><a href="extras_meshes_arrow.html">module:extras/meshes/arrow</a></li>
<li><a href="extras_meshes_contourlines.html">module:extras/meshes/contourlines</a></li>
<li><a href="extras_meshes_convex.html">module:extras/meshes/convex</a></li>
<li><a href="extras_meshes_createfloor.html">module:extras/meshes/createfloor</a></li>
<li><a href="extras_meshes_drawingtoy.html">module:extras/meshes/drawingtoy</a></li>
<li><a href="extras_meshes_drawingtoy.DrawingToy.html">module:extras/meshes/drawingtoy.DrawingToy</a></li>
<li><a href="extras_meshes_gearmesh.html">module:extras/meshes/gearmesh</a></li>
<li><a href="extras_meshes_pathtomesh.html">module:extras/meshes/pathtomesh</a></li>
<li><a href="extras_meshes_polyhedra.html">module:extras/meshes/polyhedra</a></li>
<li><a href="extras_meshes_polyhedra.Polyhedra.html">module:extras/meshes/polyhedra.Polyhedra</a></li>
<li><a href="extras_meshes_raypick.html">module:extras/meshes/raypick</a></li>
<li><a href="extras_meshes_starfield.html">module:extras/meshes/starfield</a></li>
<li><a href="extras_meshes_starfield.StarField.html">module:extras/meshes/starfield.StarField</a></li>
<li><a href="extras_meshes_stl.html">module:extras/meshes/stl</a></li>
<li><a href="extras_meshes_text.html">module:extras/meshes/text</a></li>
<li><a href="extras_meshes_text.TextFont.html">module:extras/meshes/text.TextFont</a></li>
<li><a href="extras_moresurfaces.html">module:extras/moresurfaces</a></li>
<li><a href="extras_moresurfaces.KleinBottle.html">module:extras/moresurfaces.KleinBottle</a></li>
<li><a href="extras_moresurfaces.MoebiusStrip.html">module:extras/moresurfaces.MoebiusStrip</a></li>
<li><a href="extras_pathutil.html">module:extras/pathutil</a></li>
<li><a href="extras_randompolygon.html">module:extras/randompolygon</a></li>
<li><a href="extras_shaders_checkerboardshader.html">module:extras/shaders/checkerboardshader</a></li>
<li><a href="extras_shaders_colormatrixshader.html">module:extras/shaders/colormatrixshader</a></li>
<li><a href="extras_shaders_fragmentshaderlib.html">module:extras/shaders/fragmentshaderlib</a></li>
<li><a href="extras_shaders_horgradshader.html">module:extras/shaders/horgradshader</a></li>
<li><a href="extras_shaders_kernelmatrixshader.html">module:extras/shaders/kernelmatrixshader</a></li>
<li><a href="extras_shaders_marbleshader.html">module:extras/shaders/marbleshader</a></li>
<li><a href="extras_shaders_marbleshader2.html">module:extras/shaders/marbleshader2</a></li>
<li><a href="extras_shaders_mirrorshader.html">module:extras/shaders/mirrorshader</a></li>
<li><a href="extras_shaders_pixelateshader.html">module:extras/shaders/pixelateshader</a></li>
<li><a href="extras_shaders_radgradshader.html">module:extras/shaders/radgradshader</a></li>
<li><a href="extras_shaders_skysphereshader.html">module:extras/shaders/skysphereshader</a></li>
<li><a href="extras_shaders_stripesbackshader.html">module:extras/shaders/stripesbackshader</a></li>
<li><a href="extras_shaders_sunburstbackshader.html">module:extras/shaders/sunburstbackshader</a></li>
<li><a href="extras_shaders_vignetteshader.html">module:extras/shaders/vignetteshader</a></li>
<li><a href="extras_shaders_warpshader.html">module:extras/shaders/warpshader</a></li>
<li><a href="extras_shaders_waterpaintshader.html">module:extras/shaders/waterpaintshader</a></li>
<li><a href="extras_shaders_waveshader.html">module:extras/shaders/waveshader</a></li>
<li><a href="extras_shaders_woodshader.html">module:extras/shaders/woodshader</a></li>
<li><a href="extras_starpolygon.html">module:extras/starpolygon</a></li>
<li><a href="extras_superellipsoid.html">module:extras/superellipsoid</a></li>
<li><a href="extras_superellipsoid.Supershape.html">module:extras/superellipsoid.Supershape</a></li>
<li><a href="extras_superellipsoid.Supertoroid.html">module:extras/superellipsoid.Supertoroid</a></li>
<li><a href="extras_torusknot.html">module:extras/torusknot</a></li>
<li><a href="extras_torusknot.TorusKnot.html">module:extras/torusknot.TorusKnot</a></li>
</ul>
</nav></body></html>