Geometric Object Rendering

Geometric Object Rendering — Functions for generating easily recognizable 3D geometric objects

Functions

Includes

#include <gdk/gdkgl.h>

Description

Functions

gdk_gl_draw_cube ()

void
gdk_gl_draw_cube (gboolean solid,
                  double size);

Renders a cube. The cube is centered at the modeling coordinates origin with sides of length size .

Parameters

solid

TRUE if the cube should be solid.

 

size

length of cube sides.

 

gdk_gl_draw_sphere ()

void
gdk_gl_draw_sphere (gboolean solid,
                    double radius,
                    int slices,
                    int stacks);

Renders a sphere centered at the modeling coordinates origin of the specified radius . The sphere is subdivided around the Z axis into slices and along the Z axis into stacks .

Parameters

solid

TRUE if the sphere should be solid.

 

radius

the radius of the sphere.

 

slices

the number of subdivisions around the Z axis (similar to lines of longitude).

 

stacks

the number of subdivisions along the Z axis (similar to lines of latitude).

 

gdk_gl_draw_cone ()

void
gdk_gl_draw_cone (gboolean solid,
                  double base,
                  double height,
                  int slices,
                  int stacks);

Renders a cone oriented along the Z axis. The base of the cone is placed at Z = 0, and the top at Z = height . The cone is subdivided around the Z axis into slices , and along the Z axis into stacks .

Parameters

solid

TRUE if the cone should be solid.

 

base

the radius of the base of the cone.

 

height

the height of the cone.

 

slices

the number of subdivisions around the Z axis.

 

stacks

the number of subdivisions along the Z axis.

 

gdk_gl_draw_torus ()

void
gdk_gl_draw_torus (gboolean solid,
                   double inner_radius,
                   double outer_radius,
                   int nsides,
                   int rings);

Renders a torus (doughnut) centered at the modeling coordinates origin whose axis is aligned with the Z axis.

Parameters

solid

TRUE if the torus should be solid.

 

inner_radius

inner radius of the torus.

 

outer_radius

outer radius of the torus.

 

nsides

number of sides for each radial section.

 

rings

number of radial divisions for the torus.

 

gdk_gl_draw_tetrahedron ()

void
gdk_gl_draw_tetrahedron (gboolean solid);

Renders a tetrahedron centered at the modeling coordinates origin with a radius of the square root of 3.

Parameters

solid

TRUE if the tetrahedron should be solid.

 

gdk_gl_draw_octahedron ()

void
gdk_gl_draw_octahedron (gboolean solid);

Renders a octahedron centered at the modeling coordinates origin with a radius of 1.0.

Parameters

solid

TRUE if the octahedron should be solid.

 

gdk_gl_draw_dodecahedron ()

void
gdk_gl_draw_dodecahedron (gboolean solid);

Renders a dodecahedron centered at the modeling coordinates origin with a radius of the square root of 3.

Parameters

solid

TRUE if the dodecahedron should be solid.

 

gdk_gl_draw_icosahedron ()

void
gdk_gl_draw_icosahedron (gboolean solid);

Renders a icosahedron. The icosahedron is centered at the modeling coordinates origin and has a radius of 1.0.

Parameters

solid

TRUE if the icosahedron should be solid.

 

gdk_gl_draw_teapot ()

void
gdk_gl_draw_teapot (gboolean solid,
                    double scale);

Renders a teapot. Both surface normals and texture coordinates for the teapot are generated. The teapot is generated with OpenGL evaluators.

Parameters

solid

TRUE if the teapot should be solid.

 

scale

relative size of the teapot.

 

Types and Values