A bit more info.
On Sun, 2009-08-30 at 13:10 +0200, Tavmjong Bah wrote:
Hi,
I've traced the problem with the broken feImage filter primitive (see https://bugs.launchpad.net/inkscape/+bug/382313 ) to a problem with lib2geom. More specifically, Geom::Matrix.inverse() returns an incorrect matrix.
In Geom::Matrix::inverse() the matrix determinate is calculated and then compared to the constant EPSILON which is defined as 10^-5 (in coord.h). If it is less than EPSILON the matrix is set to unity. This EPSILON is clearly way too large for use in inverse(). For some reason a value of 10^-18 in commented out in coord.h. My guess is that the value 10^-5 was selected for comparing pixel positions to each other but it is being used for other purposes in the lib2geom library.
Tav