fltk 1.3.0rc3
About: FLTK (Fast Light Tool Kit) is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. Release candidate.
  SfR Fresh Dox: fltk-1.3.0rc3-source.tar.gz ("inofficial" and yet experimental doxygen-generated source code documentation)  

freeglut_geometry.cxx File Reference

#include <FL/glut.H>
#include <FL/math.h>
#include <stdlib.h>
Include dependency graph for freeglut_geometry.cxx:

Go to the source code of this file.

Defines

#define V(a, b, c)   glVertex3d( a size, b size, c size );
#define N(a, b, c)   glNormal3d( a, b, c );
#define V(a, b, c)   glVertex3d( a size, b size, c size );
#define N(a, b, c)   glNormal3d( a, b, c );
#define RADIUS   1.0f
#define RADIUS   1.0f
#define NUM_TETR_FACES   4

Functions

void glutWireCube (GLdouble dSize)
void glutSolidCube (GLdouble dSize)
void glutSolidSphere (GLdouble radius, GLint slices, GLint stacks)
void glutWireSphere (GLdouble radius, GLint slices, GLint stacks)
void glutSolidCone (GLdouble base, GLdouble height, GLint slices, GLint stacks)
void glutWireCone (GLdouble base, GLdouble height, GLint slices, GLint stacks)
void glutSolidCylinder (GLdouble radius, GLdouble height, GLint slices, GLint stacks)
void glutWireCylinder (GLdouble radius, GLdouble height, GLint slices, GLint stacks)
void glutWireTorus (GLdouble dInnerRadius, GLdouble dOuterRadius, GLint nSides, GLint nRings)
void glutSolidTorus (GLdouble dInnerRadius, GLdouble dOuterRadius, GLint nSides, GLint nRings)
void glutWireDodecahedron (void)
void glutSolidDodecahedron (void)
void glutWireOctahedron (void)
void glutSolidOctahedron (void)
void glutWireTetrahedron (void)
void glutSolidTetrahedron (void)
void glutWireIcosahedron (void)
void glutSolidIcosahedron (void)
void glutWireRhombicDodecahedron (void)
void glutSolidRhombicDodecahedron (void)
void glutWireSierpinskiSponge (int num_levels, GLdouble offset[3], GLdouble scale)
void glutSolidSierpinskiSponge (int num_levels, GLdouble offset[3], GLdouble scale)

Variables

double icos_r [12][3]
int icos_v [20][3]
double rdod_r [14][3]
int rdod_v [12][4]
double rdod_n [12][3]

Define Documentation

#define N (   a,
  b,
 
)    glNormal3d( a, b, c );

Referenced by glutSolidCube(), and glutWireCube().

#define N (   a,
  b,
 
)    glNormal3d( a, b, c );
#define NUM_TETR_FACES   4

Definition at line 891 of file freeglut_geometry.cxx.

Referenced by glutSolidSierpinskiSponge(), and glutWireSierpinskiSponge().

#define RADIUS   1.0f
#define RADIUS   1.0f
#define V (   a,
  b,
 
)    glVertex3d( a size, b size, c size );
#define V (   a,
  b,
 
)    glVertex3d( a size, b size, c size );

Referenced by glutSolidCube(), and glutWireCube().


Function Documentation

void glutSolidCone ( GLdouble  base,
GLdouble  height,
GLint  slices,
GLint  stacks 
)

Definition at line 321 of file freeglut_geometry.cxx.

References i.

void glutSolidCube ( GLdouble  dSize)

Definition at line 90 of file freeglut_geometry.cxx.

References N, size, and V.

void glutSolidCylinder ( GLdouble  radius,
GLdouble  height,
GLint  slices,
GLint  stacks 
)

Definition at line 472 of file freeglut_geometry.cxx.

References height, and i.

void glutSolidDodecahedron ( void  )

Definition at line 795 of file freeglut_geometry.cxx.

void glutSolidIcosahedron ( void  )

Definition at line 963 of file freeglut_geometry.cxx.

References i.

void glutSolidOctahedron ( void  )

Definition at line 865 of file freeglut_geometry.cxx.

References RADIUS.

void glutSolidRhombicDodecahedron ( void  )

Definition at line 1019 of file freeglut_geometry.cxx.

References i.

void glutSolidSierpinskiSponge ( int  num_levels,
GLdouble  offset[3],
GLdouble  scale 
)

Definition at line 1073 of file freeglut_geometry.cxx.

References i, NUM_TETR_FACES, x, and y.

void glutSolidSphere ( GLdouble  radius,
GLint  slices,
GLint  stacks 
)

Definition at line 167 of file freeglut_geometry.cxx.

References i.

void glutSolidTetrahedron ( void  )

Definition at line 919 of file freeglut_geometry.cxx.

void glutSolidTorus ( GLdouble  dInnerRadius,
GLdouble  dOuterRadius,
GLint  nSides,
GLint  nRings 
)

Definition at line 670 of file freeglut_geometry.cxx.

References i, and M_PI.

void glutWireCone ( GLdouble  base,
GLdouble  height,
GLint  slices,
GLint  stacks 
)

Definition at line 406 of file freeglut_geometry.cxx.

References i.

void glutWireCube ( GLdouble  dSize)

Definition at line 68 of file freeglut_geometry.cxx.

References N, size, and V.

void glutWireCylinder ( GLdouble  radius,
GLdouble  height,
GLint  slices,
GLint  stacks 
)

Definition at line 534 of file freeglut_geometry.cxx.

References height, and i.

void glutWireDodecahedron ( void  )

Definition at line 744 of file freeglut_geometry.cxx.

void glutWireIcosahedron ( void  )

Definition at line 941 of file freeglut_geometry.cxx.

References i.

void glutWireOctahedron ( void  )

Definition at line 846 of file freeglut_geometry.cxx.

References RADIUS.

void glutWireRhombicDodecahedron ( void  )

Definition at line 1000 of file freeglut_geometry.cxx.

References i.

void glutWireSierpinskiSponge ( int  num_levels,
GLdouble  offset[3],
GLdouble  scale 
)

Definition at line 1036 of file freeglut_geometry.cxx.

References i, NUM_TETR_FACES, x, and y.

void glutWireSphere ( GLdouble  radius,
GLint  slices,
GLint  stacks 
)

Definition at line 253 of file freeglut_geometry.cxx.

References i, x, and y.

void glutWireTetrahedron ( void  )

Definition at line 906 of file freeglut_geometry.cxx.

void glutWireTorus ( GLdouble  dInnerRadius,
GLdouble  dOuterRadius,
GLint  nSides,
GLint  nRings 
)

Definition at line 591 of file freeglut_geometry.cxx.

References i, and M_PI.


Variable Documentation

double icos_r[12][3]
Initial value:
 { { 1.0, 0.0, 0.0 },
  {  0.447213595500,  0.894427191000, 0.0 }, {  0.447213595500,  0.276393202252, 0.850650808354 }, {  0.447213595500, -0.723606797748, 0.525731112119 }, {  0.447213595500, -0.723606797748, -0.525731112119 }, {  0.447213595500,  0.276393202252, -0.850650808354 },
  { -0.447213595500, -0.894427191000, 0.0 }, { -0.447213595500, -0.276393202252, 0.850650808354 }, { -0.447213595500,  0.723606797748, 0.525731112119 }, { -0.447213595500,  0.723606797748, -0.525731112119 }, { -0.447213595500, -0.276393202252, -0.850650808354 },
  { -1.0, 0.0, 0.0 } }

Definition at line 932 of file freeglut_geometry.cxx.

int icos_v[20][3]
Initial value:
 { { 0, 1, 2 }, { 0, 2, 3 }, { 0, 3, 4 }, { 0, 4, 5 }, { 0, 5, 1 },
                       { 1, 8, 2 }, { 2, 7, 3 }, { 3, 6, 4 }, { 4, 10, 5 }, { 5, 9, 1 },
                       { 1, 9, 8 }, { 2, 8, 7 }, { 3, 7, 6 }, { 4, 6, 10 }, { 5, 10, 9 },
                       { 11, 9, 10 }, { 11, 8, 9 }, { 11, 7, 8 }, { 11, 6, 7 }, { 11, 10, 6 } }

Definition at line 936 of file freeglut_geometry.cxx.

double rdod_n[12][3]
Initial value:
 {
  {  0.353553390594,  0.353553390594,  0.5 }, { -0.353553390594,  0.353553390594,  0.5 }, { -0.353553390594, -0.353553390594,  0.5 }, {  0.353553390594, -0.353553390594,  0.5 },
  {  0.000000000000,  1.000000000000,  0.0 }, { -1.000000000000,  0.000000000000,  0.0 }, {  0.000000000000, -1.000000000000,  0.0 }, {  1.000000000000,  0.000000000000,  0.0 },
  {  0.353553390594,  0.353553390594, -0.5 }, { -0.353553390594,  0.353553390594, -0.5 }, { -0.353553390594, -0.353553390594, -0.5 }, {  0.353553390594, -0.353553390594, -0.5 }
  }

Definition at line 994 of file freeglut_geometry.cxx.

double rdod_r[14][3]
Initial value:
 { { 0.0, 0.0, 1.0 },
  {  0.707106781187,  0.000000000000,  0.5 }, {  0.000000000000,  0.707106781187,  0.5 }, { -0.707106781187,  0.000000000000,  0.5 }, {  0.000000000000, -0.707106781187,  0.5 },
  {  0.707106781187,  0.707106781187,  0.0 }, { -0.707106781187,  0.707106781187,  0.0 }, { -0.707106781187, -0.707106781187,  0.0 }, {  0.707106781187, -0.707106781187,  0.0 },
  {  0.707106781187,  0.000000000000, -0.5 }, {  0.000000000000,  0.707106781187, -0.5 }, { -0.707106781187,  0.000000000000, -0.5 }, {  0.000000000000, -0.707106781187, -0.5 },
  {  0.0, 0.0, -1.0 } }

Definition at line 986 of file freeglut_geometry.cxx.

int rdod_v[12][4]
Initial value:
 { { 0,  1,  5,  2 }, { 0,  2,  6,  3 }, { 0,  3,  7,  4 }, { 0,  4,  8, 1 },
                       { 5, 10,  6,  2 }, { 6, 11,  7,  3 }, { 7, 12,  8,  4 }, { 8,  9,  5, 1 },
                       { 5,  9, 13, 10 }, { 6, 10, 13, 11 }, { 7, 11, 13, 12 }, { 8, 12, 13, 9 } }

Definition at line 991 of file freeglut_geometry.cxx.