[cairo] cairo internal design ideas

Maarten Breddels dmon at xs4all.nl
Thu Sep 23 11:15:33 PDT 2004


David Reveman wrote:

>>>3. Clipping is inflexible and the way it's done right now is not
>>>efficient for all backends.
>>>      
>>>
>>This is clearly a problem, but I think it should be pretty easy to fix
>>without a major re-working of the whole interface. For example, just
>>switching to a trapezoid-based interface rather than surface-based would
>>help a lot, right?
>>    
>>
>
>hmm, not much. SVG and PDF backends wouldn't like it very much.
>
>When it comes glitz and what we can do with graphics hardware, this is
>what I think:
>
>No hardware I've seen can do much more than clipping to a simple
>rectangle. Hardware rasterization of polygons can of course be used for
>clipping but that only works when we don't use polygon rasterization for
>the primitives we're rendering. This means that, if we both have a set
>of path trapezoids and a set of clip trapezoids, one of them needs to be
>converted into a pixel mask and that's not very efficient.
>  
>
Isn't glitz using the stencil buffer for clipping? If so, why not? I 
guess it would as fast as it can possibly get.

-Maarten




More information about the cairo mailing list