|
From: <hba...@us...> - 2009-05-02 03:23:15
|
Revision: 9877
http://plplot.svn.sourceforge.net/plplot/?rev=9877&view=rev
Author: hbabcock
Date: 2009-05-02 03:23:13 +0000 (Sat, 02 May 2009)
Log Message:
-----------
HPB for HMC. Change the line style for filled polygons so that render more smoothly.
Modified Paths:
--------------
trunk/drivers/cairo.c
Modified: trunk/drivers/cairo.c
===================================================================
--- trunk/drivers/cairo.c 2009-05-02 00:31:19 UTC (rev 9876)
+++ trunk/drivers/cairo.c 2009-05-02 03:23:13 UTC (rev 9877)
@@ -988,9 +988,18 @@
{
int i;
PLCairo *aStream;
-
+ cairo_line_join_t old_line_join;
+ cairo_line_cap_t old_line_cap;
+
aStream = (PLCairo *)pls->dev;
+ /* Save the previous line drawing style */
+ old_line_cap = cairo_get_line_cap(aStream->cairoContext);
+ old_line_join = cairo_get_line_join(aStream->cairoContext);
+ cairo_set_line_cap(aStream->cairoContext, CAIRO_LINE_CAP_BUTT);
+ cairo_set_line_join(aStream->cairoContext, CAIRO_LINE_JOIN_BEVEL);
+
+ /* Draw the polygons */
cairo_move_to(aStream->cairoContext, aStream->downscale * (double) xa[0], aStream->downscale * (double) ya[0]);
for(i=1;i<npts;i++)
cairo_line_to(aStream->cairoContext, aStream->downscale * (double) xa[i], aStream->downscale * (double) ya[i]);
@@ -1005,6 +1014,10 @@
cairo_stroke(aStream->cairoContext);
} else
cairo_fill(aStream->cairoContext);
+
+ /* Restore the previous line drawing style */
+ cairo_set_line_cap(aStream->cairoContext, old_line_cap);
+ cairo_set_line_join(aStream->cairoContext, old_line_join);
}
/*---------------------------------------------------------------------
@@ -2051,4 +2064,3 @@
}
#endif
-
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|