[Gimp-developer] transformation drift [was: preview window does not work]
gg at catking.net
gg at catking.net
Thu Mar 8 11:10:11 PST 2007
On Thu, 08 Mar 2007 11:54:25 +0100, David Gowers <00ai99 at gmail.com> wrote:
> On 3/8/07, Sven Neumann <sven at gimp.org> wrote:
>>
>> Hi,
>>
>> > If you rotate by exactly 90 degrees, this is always done with
>> > INTERPOLATION_NONE, no matter what you select in the tool options.
>>
>> Perhaps this is the culprit? An offset seems unavoidable if the
>> transformation is performed without interpolation. So perhaps all we
>> need to do is to remove this optimization (which is supposed to speed up
>> rotations by multiple of 90 degrees)?
>
>
> BTW, do you think the rotation centre should be snapped to 0.5 pixel
> increments when interpolation is NONE? It doesn't make sense to have any
> more precision at that point (and can introduce glitches -- for instance,
> try floating a rectangular region, then dragging the rotation centre to
> the
> top left as precisely as you can, setting it to rotate 90 degrees, and
> performing the rotation... -- compared to inputting the coordinates of
> the
> top left yourself and then performing the 90 degree rotation. In the
> first
> case, even fractional imprecision means the result is not even in the
> right
> place.)
>
> Anyway, in the case of a 90 degree rotation, it seems unlikely that the
> user
> would want it misaligned with the pixels -- in which case no
> interpolation
> is needed and the result should be exactly right.
>
>
> Simple test case that uniformly fails, currently:
>
> * Select a rectangular region of the picture.
> * Float it
> * Rotate it. Set the rotation centre to the exact top left (by first
> positioning the centre near it, then editing the coordinates in the
> rotation
> dialog to make them exact). Set the angle to 90 degrees and the
> interpolation to NONE. Supersampling option appears to have no effect in
> this case.
> * The result may be offset by 1 pixel in X and/or Y axis; It is also
> missing
> one line of pixels (which line is omitted varies.)
I think you can achieve the same results without floating. Just try a
rotate.
gg
More information about the Gimp-developer
mailing list