[cairo] [RFC] cairo_path_extents()

Carl Worth cworth at cworth.org
Fri Jan 18 16:13:05 PST 2008


On Thu, 22 Nov 2007 17:32:24 +0000, Baz wrote:
> > > > Behdad suggested adding a cairo_path_extents() call to meet their
> > > > need; to me this sounds like a better option than special-casing
> > > > stroke_extents or fill_extents for hairlines. The proposed api is:
> > > >
> > > > void        cairo_path_extents (cairo_t *cr,
> > > >                                              double *x1,
> > > >                                              double *y1,
> > > >                                              double *x2,
> > > >                                              double *y2);

Hi Baz,

I like this, and I want to get this into 1.6, (sorry I've been so slow
to get around to reviewing it). I'm happy with the API above and its
documentations.

> 'obviously wrong' in the bug. Reading back I havent made it clear that
> the first of these patches changes the behaviour of
> _cairo_analysis_surface_intersect_clip_path and _cairo_path_bounds to
> use the tight bounds instead of the control box, which will make that
> code slower.

Looking through the implementation, I'd like this change to be
separated from the addition of the _cairo_path_fixed_interpret_flat
commit. That kind of mixing of unrelated changes sounds like just
setting ourselves up for some trouble later.

Also, we should switch existing code that also does its own
flattening, (like _cairo_path_count and _cairo_path_populate), over to
use the new function. But that could even be a new change on top of
the existing stuff.

If you'd like to work on splitting this stuff up, I'd be happy to take
it from there. Otherwise, I'll try to get around to doing that when I
can.

Thanks again for your contributions,

-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.cairographics.org/archives/cairo/attachments/20080118/b1cf1fae/attachment.pgp 


More information about the cairo mailing list