On Sat, Jul 3, 2010 at 11:53 AM, Ryan May <rma...@gmail.com> wrote:
> On Sat, Jul 3, 2010 at 1:11 AM, Ryan May <rma...@gmail.com> wrote:
>> Alright, before I go to bed, I found the following line in
>> src/_backend_agg.cpp at line 709 (in draw_markers()) makes all the
>> difference:
>>
>> set_clipbox(gc.cliprect, rendererBase);
>>
>> Commenting out this line fixes my problem. I'm not sure why it's a
>> problem, (maybe a missing restore to previous state somewhere?). I'll
>> look into this tomorrow, but it would probably be a lot easier with
>> someone familiar with the code.
>
> Following up again, it seems like the problem is that draw_marker is
> calling set_clipbox() on the rendererBase instead of theRasterizer,
> which is done at 7 other places in the code (as opposed to only one
> other location for rendererBase).  Since rendererBase is used for
> restore_region, this makes sense as to why it would fix my problem. I
> can confirm making the change fixes my problem and doesn't cause any
> other issues in my (admittedly brief so far) testing.
>
> (If this isn't the proper fix, an alternative is to call
> rendererBase.reset_clipping(true), but I really think this is working
> around the issue).
>
> Can someone more familiar with the agg backend weigh in here? I'm
> pretty comfortable with the fix, but don't want to be responsible for
> breaking pretty much all of matplotlib.

Does marker clipping still work with the proposed change?

The only thing that is special about marker drawing is we use cached
marker rasters to make drawing many of them efficient, but I don't
recall anymore whether this required special clipping treatment.

JDH

------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to