/* examples/glarea/triangle.c */ #include He_node *princ, *glarea; void glarea_init_proc (He_node *hn) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluOrtho2D(0.0, 100.0, 0.0, 100.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); } void glarea_repaint_proc (He_node *hn) { glClearColor(0,0,0,1); glClear(GL_COLOR_BUFFER_BIT); glColor3f(1,1,1); glBegin(GL_TRIANGLES); glVertex2f(10,10); glVertex2f(10,90); glVertex2f(90,90); glEnd(); } int main (int argc, char *argv[]) { int attr_list[] = { GLX_RGBA, None }; HeInit (&argc, &argv); princ = HeCreateFrame(); HeSetFrameLabel (princ, "Triangle"); glarea = HeCreateGLArea (princ, attr_list, NULL); HeSetWidth (glarea, 500); HeSetHeight (glarea, 400); HeSetGLAreaInitProc (glarea, glarea_init_proc); HeSetGLAreaRepaintProc (glarea, glarea_repaint_proc); HeFit (princ); return HeMainLoop (princ); }