Transformations with units


According to the current recommentation, transformations can only be
defined with numbers. While this can seem a logical constraint since
transformations are matrices, which are multiplicated with lenghts, the
reality is a bit more subtle:

    [ x']   [ a c e ]   [ x ]
    [ y'] = [ b d f ] ⋅ [ y ]
    [ 1 ]   [ 0 0 1 ]   [ 1 ]

Here, x, y, x' and y' are homogeous to lengths, but because 1 is
adimensional, not all coefficients of the transformation matrix are.
Indeed, e and f are multiplicated with the adimensional number 1 to make
lengths. Thus, e and f are homogeneous to lengths.

These coefficients appear only in one simple transformation, the
translation. This is quite intuitive since a translation is basically
defined by a length vector.

Now, when drawing lengths in a natural unit distinct from the pixel, it
is very inconvenient to translate these units to pixels just for
translations. So, do you think not that it would be appropriate to
modify the recommendation to indicate that coefficients e and f for
matrices, and tx and ty for translations, are lengths and not numbers?


Tanguy Ortolo

Received on Friday, 2 March 2012 22:13:37 UTC