http://ftp.ksu.edu.tw/FTP/FreeBSD/distfiles/xscreensaver-4.20.tar.gz
[xscreensaver] / hacks / glx / extrusion-joinoffset.c
index 786d0c755c8e878a62fdada6b42f8f1eeef2af54..5895c3c0690e9e5f23ec19d73a9c79405024cc95 100644 (file)
@@ -3,16 +3,24 @@
 /* this demo demonstrates the various join styles */
 
 /* required include files */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
 #include <GL/gl.h>
-#include <GL/glut.h>
+/*#include <GL/glut.h>*/
+#ifdef HAVE_GLE3
+#include <GL/gle.h>
+#else
 #include <GL/tube.h>
+#endif
 
 /* ------------------------------------------------------- */
 
 /* the arrays in which we will store the polyline */
 #define NPTS 100
-double points [NPTS][3];
-float colors [NPTS][3];
+static double points [NPTS][3];
+static float colors [NPTS][3];
 static int idx = 0;
 
 /* some utilities for filling that array */
@@ -32,8 +40,8 @@ static int idx = 0;
 
 /* the arrays in which we will store the contour */
 #define NCONTOUR 100
-double contour_points [NCONTOUR][2];
-int cidx = 0;
+static double contour_points [NCONTOUR][2];
+static int cidx = 0;
 
 /* some utilities for filling that array */
 #define C_PNT(x,y) {                   \
@@ -91,8 +99,9 @@ void InitStuff_joinoffset (void)
    gleSetJoinStyle (TUBE_JN_ANGLE | TUBE_CONTOUR_CLOSED | TUBE_JN_CAP);
 }
 
-double up_vector[3] = {1.0, 0.0, 0.0};
+static double up_vector[3] = {1.0, 0.0, 0.0};
 
+/* controls shape of object */
 extern float lastx;
 extern float lasty;
 
@@ -114,8 +123,10 @@ void DrawStuff_joinoffset (void)
 
    /* set up some matrices so that the object spins with the mouse */
    glPushMatrix ();
-   glTranslatef (0.0, 4.0, -80.0);
-   glRotatef (0.5*lastx, 0.0, 1.0, 0.0);
+   glScalef (0.5, 0.5, 0.5);
+   glTranslatef (0, 4, 0);
+   /* glTranslatef (0.0, 4.0, -80.0); */
+   /* glRotatef (0.5*lastx, 0.0, 1.0, 0.0); */
 
    gleExtrusion (cidx, moved_contour, contour_points, up_vector, 
                  idx, points, colors);
@@ -126,8 +137,10 @@ void DrawStuff_joinoffset (void)
    /* draw a seond copy, this time with the raw style, to compare
     * things against */
    glPushMatrix ();
-   glTranslatef (0.0, -4.0, -80.0);
-   glRotatef (0.5*lastx, 0.0, 1.0, 0.0);
+   glScalef (0.5, 0.5, 0.5);
+   glTranslatef (0, -4, 0);
+   /* glTranslatef (0.0, -4.0, -80.0); */
+   /* glRotatef (0.5*lastx, 0.0, 1.0, 0.0); */
 
    save_style = gleGetJoinStyle ();
    style = save_style;