[cairo] The right approach to projective transformations
M Joonas Pihlaja
jpihlaja at cc.helsinki.fi
Mon Aug 30 14:47:20 PDT 2010
On Mon, 30 Aug 2010, Behdad Esfahbod wrote:
> I think if we are doing this projective thing, we should finally switch to an
> opaque transformation struct. This allows for the transformation to be
> intelligently caching. Cache the inverse, cache the determinant, cache
> whether it's an integer translation only, etc.
I think we can do this without making the existing transform API
obsolete. Factor the complete mapping into two parts: a 2d affine map
followed by a more powerful projective map, and the existing transform
calls only work on the 2d affine part. Existing client rendering
routines can then pretend they're drawing onto a normal plane as
before, even if that plane is twisted about later by a projective
part.
Joonas
More information about the cairo
mailing list