Collaboration diagram for Geometric Rendering:
Functions | |
void | glutSolidCone (GLdouble base, GLdouble height, GLint slices, GLint stacks) |
void | glutSolidCube (GLdouble width) |
void | glutSolidCuboctahedron (GLdouble s) |
void | glutSolidCylinder (GLdouble radius, GLdouble height, GLint slices, GLint stacks) |
void | glutSolidDodecahedron (void) |
void | glutSolidIcosahedron (void) |
void | glutSolidOctahedron (void) |
void | glutSolidRhombicDodecahedron (void) |
void | glutSolidSierpinskiSponge (int num_levels, const GLdouble offset[3], GLdouble scale) |
void | glutSolidSphere (GLdouble radius, GLint slices, GLint stacks) |
void | glutSolidTeapot (GLdouble size) |
void | glutSolidTetrahedron (void) |
void | glutSolidTorus (GLdouble dInnerRadius, GLdouble dOuterRadius, GLint nSides, GLint nRings) |
void | glutWireCone (GLdouble base, GLdouble height, GLint slices, GLint stacks) |
void | glutWireCube (GLdouble width) |
void | glutWireCuboctahedron (GLdouble s) |
void | glutWireCylinder (GLdouble radius, GLdouble height, GLint slices, GLint stacks) |
void | glutWireDodecahedron (void) |
void | glutWireIcosahedron (void) |
void | glutWireOctahedron (void) |
void | glutWireRhombicDodecahedron (void) |
void | glutWireSierpinskiSponge (int num_levels, const GLdouble offset[3], GLdouble scale) |
void | glutWireSphere (GLdouble radius, GLint slices, GLint stacks) |
void | glutWireTeapot (GLdouble size) |
void | glutWireTetrahedron (void) |
void | glutWireTorus (GLdouble dInnerRadius, GLdouble dOuterRadius, GLint nSides, GLint nRings) |
The goals are:
A problem with these functions is that they are widely varying in their parameters. Some take no parameters at all. Some allow you to specify mesh densities. For purposes of lighting, even simple, single planes sometimes benefit from finer mesh densities. Most objects are drawn at 1 unit radius, but some use other sizes (such as sqrt(3) radius).
This library provides some elementary objects that are more or less standard fare for computer graphics. The objects all provide surface normals.
Contains numerous fixes relative to the freeglut code from which OpenGLUT sprang, which had many bugs with the winding of facets. Those fixes were made in OpenGLUT and freeglut lifted the fixes back (without crediting the hard work of the OpenGLUT project, alas). (Ironically, because freeglut was uncritically lifting OpenGLUT code, they were unaware of some of the fixes that they received in the process of blindly copying OpenGLUT work. By mixing and matching unmodified freeglut code and OpenGLUT code, freeglut further introduced bugs to their bitmapped font rendering, but that's a story for another time.)
|
Draw a solid cone.
|
|
Draw a solid cube centered at the origin.
|
|
Draw a solid "cuboctahedron".
The scaling parameter, s, allows you to adjust the size of the resulting object. The object is centered at the origin.
|
|
Draw a solid cylinder.
|
|
Draw a solid dodecahedron. This function draws a regular, solid, 12-sided polyhedron centered at the origin. The distance from the origin to the vertices is sqrt(3). The facets are pentagons.
|
|
Draw a solid icosahedron. This function draws a regular, solid 20-sided polyhedron centered at the origin. The distance from the origin to the vertices is 1.
|
|
Draw a solid octahedron. This function draws a regular, solid 8-sided polyhedron centered at the origin. The vertices are at (+/-1, 0, 0), (0, +/-1, 0), (0, 0, +/-1).
|
|
Draw a solid rhombic dodecahedron This function draws a solid-shaded dodecahedron whose facets are rhombic and whose vertices are at unit radius. No facet lies normal to any coordinate axes. The polyhedron is centered at the origin.
|
|
Draw a solid Spierspinski's sponge.
Here is the call graph for this function: |
|
Draw a solid sphere centered at the origin.
|
|
Draw a solid teapot.
This is derived from SGI code. It should also be the same as the teapot modeled by Martin Newell in 1975.
|
|
Draw a solid tetrahedron. This function draws a regular, solid 4-sided polyhedron centered at the origin. The distance from the origin to the vertices is 1.
|
|
Draw a solid torus.
The torus parameters can be explored interactively with the OpenGLEAN shapes demo.
|
|
Draw a wireframe cone.
|
|
Draw a wireframe cube centered at the origin.
|
|
Draw a wireframe "cuboctahedron".
The scaling parameter, s, allows you to adjust the size of the resulting object. The object is centered at the origin.
|
|
Draw a wireframe cylinder.
|
|
Draw a wireframe dodecahedron. This function draws a regular, wireframe 12-sided polyhedron centered at the origin. The distance from the origin to the vertices is sqrt(3). The facets are pentagons. No facet is normal any of the x, y, or z axes.
|
|
Draw a wireframe icosahedron. This function draws a regular, solid 20-sided polyhedron centered at the origin. The distance from the origin to the vertices is 1. No facet is normal to any of the x, y, or z axes.
|
|
Draw a wireframe octahedron. This function draws a regular wireframe 8-sided polyhedron centered at the origin. The vertices are at (+/-1, 0, 0), (0, +/-1, 0), (0, 0, +/-1).
|
|
Draw a wireframe rhombic dodecahedron This function draws a wireframe dodecahedron whose facets are rhombic and whose vertices are at unit radius. No facet lies normal to any coordinate axes. The polyhedron is centered at the origin.
|
|
Draw a wireframe Spierspinski's sponge.
Here is the call graph for this function: |
|
Draw a wireframe sphere centered at the origin.
|
|
Draw a wireframe teapot.
This is derived from SGI code. It should also be the same as the teapot modeled by Martin Newell in 1975.
|
|
Draw a wireframe tetrahedron. This function draws a regular, wireframe 4-sided polyhedron centered at the origin. The distance from the origin to the vertices is 1.
|
|
Draw a wireframe torus.
The torus parameters can be explored interactively with the OpenGLEAN shapes demo.
|
Supported in part by SourceForge.net.
Generated on Fri Sep 9 18:03:40 2005 for OpenGLEAN'sgleanshapes by
doxygen 1.4.3
The OpenGLEAN project is hosted by
SourceForge.