|
Compare from-to, from-by and by animateTransform scale with values animateTransform.
The main indication for a failed test is the appearance of red.
SMIL 2 specifies, how from-to, from-by and by animations have to be converted into values animation. Therefore they have to be the same as the related values animation. The conversion is as follows:
used | converted |
---|---|
from="a" to="b" | values="a;b" |
from="a" by="b" | values="a;a+b" |
by="a" | values="0;a" additive="sum" |
(by and from-by animations have only a meaning, if values can be added somehow. '0' is used as a general symbol for the neutral element of addition for the related attribute, this means 0 + a = a + 0 = a. And '0' is not equal to the symbol '1' as the basic unit of the related attribute, '0' is a predecessor of '1' in the related attribute space. For animateTransform the '0' is the same as the zero matrix, not the unity or identity matrix. For the scale type this is a scaling with 0,0, this means no display if not added to another value. Deviating from SMIL 2 in SVG it is specified, that for animateTranform the animation effect has to be postmultiplied to the underlying value, if the animation is additive.)
The from-to, from-by and by are applied to animateTransform of the scale type of different blue stroked paths and are compared with the related values animations including additive and cumulative hehaviour for underlying red paths. Additionally underlying dark red paths simulate the same behaviour using always the defaults additive replace and accumulate replace with animateMotion. The blue paths cover all red paths. Therefore if something red gets visible, an error is occured. Because fill is always not set and therefore remove, the final value is the value at 2s given with a simple values animateTransform, not very interesting for the test.