opengl_init (GTK_DRAWING_AREA(drawing), GTK_NOTEBOOK(tab_area));
ridge_init (GTK_DRAWING_AREA(drawing), GTK_NOTEBOOK(tab_area));
radar_init (GTK_DRAWING_AREA(drawing), GTK_NOTEBOOK(tab_area));
- //example_init(GTK_DRAWING_AREA(drawing), GTK_NOTEBOOK(tab_area));
+ example_init(GTK_DRAWING_AREA(drawing), GTK_NOTEBOOK(tab_area));
gtk_widget_show_all(window);
gtk_main();
static gboolean expose(GtkWidget *da, GdkEventExpose *event, gpointer user_data)
{
glPushMatrix();
+ glDisable(GL_TEXTURE_2D);
glLoadIdentity();
glTranslatef(0.5, -0.5, -2);
glEnable(GL_COLOR_MATERIAL);
glRotatef(ang, 1, 0, 1);
- glColor3f(0.9, 0.9, 0.7);
- //gdk_gl_draw_teapot(TRUE, 0.25);
+ glColor4f(0.9, 0.9, 0.7, 1.0);
+ gdk_gl_draw_teapot(TRUE, 0.25);
gdk_gl_draw_cube(TRUE, 0.25);
- glColor3f(1.0, 1.0, 1.0);
+ glColor4f(1.0, 1.0, 1.0, 1.0);
glDisable(GL_LIGHT0);
glDisable(GL_LIGHTING);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, data);
g_free(data);
gdk_window_invalidate_rect(drawing->window, &drawing->allocation, FALSE);
+ gdk_window_process_updates(drawing->window, FALSE);
}
/* Load the default sweep */
glPushMatrix();
glBindTexture(GL_TEXTURE_2D, sweep_tex);
glEnable(GL_TEXTURE_2D);
- glColor3f(1,1,1);
+ glColor4f(1,1,1,1);
glBegin(GL_QUAD_STRIP);
- int _ri; // not really used, creates strange fragments..
- for (_ri = 0; _ri < sweep->h.nrays; _ri++) {
+ for (int ri = 0; ri <= sweep->h.nrays+1; ri++) {
/* Do the first sweep twice to complete the last Quad */
- int ri = _ri % sweep->h.nrays;
- Ray *ray = sweep->ray[ri];
+ Ray *ray = sweep->ray[ri % sweep->h.nrays];
/* right and left looking out from radar */
double left = ((ray->h.azimuth - ((double)ray->h.beam_width/2.))*M_PI)/180.0;
//glEnd();
/* Print the color table */
- glPushMatrix();
glDisable(GL_TEXTURE_2D);
- glMatrixMode(GL_MODELVIEW ); glLoadIdentity();
- glMatrixMode(GL_PROJECTION); glLoadIdentity();
+ glMatrixMode(GL_MODELVIEW ); glPushMatrix(); glLoadIdentity();
+ glMatrixMode(GL_PROJECTION); glPushMatrix(); glLoadIdentity();
glBegin(GL_QUADS);
int i;
for (i = 0; i < nred; i++) {
glVertex3f(-0.9, (float)((i ) - nred/2)/(nred/2), 0.0); // bot right
}
glEnd();
- glPopMatrix();
+ glMatrixMode(GL_PROJECTION); glPopMatrix();
+ glMatrixMode(GL_MODELVIEW ); glPopMatrix();
return FALSE;
}