# HG changeset patch # User John W. Eaton # Date 1215615645 14400 # Node ID b3becd212f3fe2fa1ea098351d9995d4d8fb86a6 # Parent bcacdcc726f73a91a9a7cc11f63752b2b55dfa61 Draw markers above lines diff -r bcacdcc726f7 -r b3becd212f3f src/ChangeLog --- a/src/ChangeLog Wed Jul 09 11:00:21 2008 -0400 +++ b/src/ChangeLog Wed Jul 09 11:00:45 2008 -0400 @@ -1,5 +1,10 @@ 2008-07-09 Michael Goffioul + * gl-render.cc (opengl_renderer::set_polygon_offset): Also enable + polygon offseting in GL_LINE mode. + (opengl_renderer::draw_marker): Offset markers foward instead of + backward (to draw them above lines). + * Makefile.in: new substituted variables GL_RENDER_SRC and FLTK_BACKEND_SRC. diff -r bcacdcc726f7 -r b3becd212f3f src/gl-render.cc --- a/src/gl-render.cc Wed Jul 09 11:00:21 2008 -0400 +++ b/src/gl-render.cc Wed Jul 09 11:00:45 2008 -0400 @@ -2518,9 +2518,13 @@ { glPolygonOffset (offset, offset); glEnable (GL_POLYGON_OFFSET_FILL); + glEnable (GL_POLYGON_OFFSET_LINE); } else - glDisable (GL_POLYGON_OFFSET_FILL); + { + glDisable (GL_POLYGON_OFFSET_FILL); + glDisable (GL_POLYGON_OFFSET_LINE); + } } void @@ -2648,9 +2652,19 @@ if (fc.numel () > 0) { glColor3dv (fc.data ()); - set_polygon_offset (true, 1.0); + set_polygon_offset (true, -1.0); glCallList (filled_marker_id); + if (lc.numel () > 0) + { + glColor3dv (lc.data ()); + glPolygonMode (GL_FRONT_AND_BACK, GL_LINE); + glEdgeFlag (GL_TRUE); + set_polygon_offset (true, -2.0); + glCallList (filled_marker_id); + glPolygonMode (GL_FRONT_AND_BACK, GL_FILL); + } set_polygon_offset (false); + return; } if (lc.numel () > 0) @@ -2764,6 +2778,7 @@ glVertex2f (sz/2 ,-sz/2); glVertex2f (sz/2 ,sz/2 ); glEnd (); + break; default: warning ("opengl_renderer: unsupported marker `%s'", marker.c_str ());