[cairo] New tessellator work and thoughts

Carl Worth cworth at cworth.org
Tue Nov 21 17:41:51 PST 2006


On Tue, 21 Nov 2006 15:55:50 -0800, "Daniel Amelang" wrote:
> Call me crazy, but why need keep both? You can concentrate on making
> one really fast and straightforward for simple geometries by using
> certain optimized/simplified data structures or lower levels of
> precision, etc.

I've considered that. One problem with trying to do it though is being
able to guess which one is the "best" one to use for any given
polygon. The problem is that an easy metric like the number of
vertices in the polygon is not a good predictor of the performance
difference between the two implementations we have now. A much better
predictor is the number of intersections, but we don't have that
number until we've already run through the tessellator, so it's too
late.

I think the right approach is to just finish fixing the new
tessellator and make sure it's no slower. It's possible that part of
the speediness in the old code isn't the use of qsort and arrays, but
using floating-point for the intersection computation. If so, that is
something we should be able to put into the new tessellator, and
something that we can select as fast or not based on the target
platform, (the --avoid-fp configure option you recently proposed).

-Carl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/cairo/attachments/20061121/9a7da9d5/attachment.pgp


More information about the cairo mailing list