began for maemo
[xscreensaver] / xscreensaver / hacks / glx / tube.h
1 /* tube, Copyright (c) 2001, 2003, 2007 Jamie Zawinski <jwz@jwz.org>
2  * Utility functions to create tubes and cones in GL.
3  *
4  * Permission to use, copy, modify, distribute, and sell this software and its
5  * documentation for any purpose is hereby granted without fee, provided that
6  * the above copyright notice appear in all copies and that both that
7  * copyright notice and this permission notice appear in supporting
8  * documentation.  No representations are made about the suitability of this
9  * software for any purpose.  It is provided "as is" without express or 
10  * implied warranty.
11  */
12
13 #ifndef __TUBE_H__
14 #define __TUBE_H__
15
16 /* Renders a tube along the line described by the two points.
17    Returns the number of polygons used.
18  */
19 extern int tube (GLfloat x1, GLfloat y1, GLfloat z1,
20                  GLfloat x2, GLfloat y2, GLfloat z2,
21                  GLfloat diameter, GLfloat cap_size,
22                  int faces, int smooth, int caps_p, int wire_p);
23
24 /* Renders a cone along the line described by the two points.
25    Returns the number of polygons used.
26  */
27 extern int cone (GLfloat x1, GLfloat y1, GLfloat z1,
28                  GLfloat x2, GLfloat y2, GLfloat z2,
29                  GLfloat diameter, GLfloat cap_size,
30                  int faces, int smooth, int cap_p,  int wire_p);
31
32 #endif /* __TUBE_H__ */