[cairo] cairo_matrix_t

Carl Worth cworth at redhat.com
Thu Nov 4 11:08:55 PST 2004


On Tue, 07 Sep 2004 16:35:30 -0700, Keith Packard wrote:
> Around 15 o'clock on Sep 7, Owen Taylor wrote:
> 
> > What would a program/routine that calls cairo_matrix_get_affine() do if
> > it suddenly got a non-affine matrix?

The very name of this function is a concession to the fact that we
weren't sure if the restriction of an affine would be permanent.

> Projective transformations give you a lot of extra flexibility in 
> presenting 3D-ish figures.  I'm not sure cairo should be in this business, 
> but it's certainly an interesting one to think about.  I guess we will 
> eventually have to choose whether it will ever be possible; perhaps now is 
> that time...

Or we could just expose a 6-element double array named cairo_matrix_t,
drop "affine" from the current functions.

That seems realistic for now and for foreseeable releases. The
projective transformation would have big implications through all of the
geometrical algorithms. And I don't anticipate resolving that soon.

And if we do, we can still introduce cairo_projective_matrix_t and
related functions.

Oh, but that's with respect to the CTM and geometry transformation. For
the pattern matrix, we may want to expose projective transformation
today since all the backends already support it, right?

-Carl



More information about the cairo mailing list