order of transforms

chapter 7.6 of the spec 'The transform attribute' reads:
"The value of the transform attribute is a <transform-list>, 
which is defined as a list of transform definitions, 
which are applied in the order provided. 
The individual transform definitions are separated by whitespace and/or a comma."

consider an element applied to which is a list of elementary transforms Ai
<elem transform="An .. A2 A1" />
we can yield the same result via
<elem transform="matrix(An*...*A2*A1)" />
by multiplying the transformation matrices of the elementary transforms in exactly that order.
Applying those transforms to a point we can calculate the result matrix first 
and then transform the point, as in ..
(An*...*A2*A1) * p
or apply every single transformation matrix consecutively to the point, as in ..
(An*(...*(A2*(A1 * p)))..)

With this the above formulation "in the order provided" is misleading or even wrong.
It should read "from right to left".

stefan goessner

Received on Thursday, 17 May 2001 04:55:20 UTC