#include <GL/gl.h> #include <GL/glu.h> #include "aux.h" /* Zwei Ikosaeder */ void myinit(void) { GLfloat values[2]; glGetFloatv (GL_LINE_WIDTH_GRANULARITY, values); printf ("GL_LINE_WIDTH_GRANULARITY value is %3.1f\n", values[0]); glGetFloatv (GL_LINE_WIDTH_RANGE, values); printf ("GL_LINE_WIDTH_RANGE values are %3.1f %3.1f\n", values[0], values[1]); glEnable (GL_LINE_SMOOTH); glEnable (GL_BLEND); glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glShadeModel(GL_FLAT); glClearColor(0.0, 0.0, 0.0, 1.0); glDepthFunc(GL_LESS); glEnable(GL_DEPTH_TEST); } void display(void) { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glColor4f (1.0, 1.0, 1.0, 1.0); glHint (GL_LINE_SMOOTH_HINT, GL_NICEST); glLineWidth (1.5); glTranslatef (-1.0, 0.0, 0.0); auxWireIcosahedron(1.0); glColor4f (1.0, 1.0, 1.0, 1.0); glHint (GL_LINE_SMOOTH_HINT, GL_FASTEST); glLineWidth (1.5); glTranslatef (2.0, 0.0, 0.0); auxWireIcosahedron(1.0); glFlush(); } void myReshape(int w, int h) { glViewport(0, 0, w, h); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(-3.0,3.0,-3.0,3.0,-5.0,5.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity (); glTranslatef (0.0, 0.0, -4.0); /* move object into view */ } /* Main Loop * Open window with initial window size, title bar, * RGBA display mode, and handle input events. */ int main(int argc, char** argv) { auxInitDisplayMode (AUX_SINGLE | AUX_RGB | AUX_DEPTH); auxInitPosition (0, 0, 400, 400); auxInitWindow (argv[0]); myinit(); auxReshapeFunc (myReshape); auxMainLoop(display); }