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

## Functions

void | gdk_gl_draw_cube ()
void | gdk_gl_draw_sphere ()
void | gdk_gl_draw_cone ()
void | gdk_gl_draw_torus ()
void | gdk_gl_draw_tetrahedron ()
void | gdk_gl_draw_octahedron ()
void | gdk_gl_draw_dodecahedron ()
void | gdk_gl_draw_icosahedron ()
void | gdk_gl_draw_teapot ()

## 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