On Thu, Jun 13, 2019 at 9:05 AM Eli Zaretskii <
address@hidden> wrote:
>
> That's right, but this is exactly what I was trying to describe. When
> I wrote "translation along the X axis", I meant the original X axis,
> which is unaffected by the rotation. Are you saying that my
> expectations are incorrect in that interpretation of "X axis"?
> [...]
> Maybe that's the problem: if the rotation is counter-clockwise, then
> the translation should indeed be along the Y axis.
The translation doesn't depend on the rotation in any way. The general form of
an affine transformation is F(x) + b, where F is a linear transformation
(rotation, shear, scaling) and addition by b is translation. In the example
we're discussing, F is rotation by 90 degrees and b is (0, 232) in some
coordinates. F does not act on b; the rotation does not affect what the
translation does; whether F is clockwise or counter-clockwise rotation, the
function displaces the result of the rotation along the (original) y axis. (The
single-matrix form used by the transformation code in image.c is a computational
convenience; the function it expresses still has the form F(x) + b.)