animate-elem-82-t query


I would like to clarify the behaviour for the animate-elem-82-t test in the
SVGT1.2 test suite.

In this test there is a box labelled "paced scale". The behaviour of this
box appears to follow the behaviour of SVG 1.1 rather than SVGT1.2 for paced
animation of complex types. The particular code in question is the

    <rect x="-15" y="-15" width="30" height="30" stroke="none"
      <animateTransform attributeName="transform" attributeType="XML"
        type="scale" values="1,2;3,2;1,1" dur="3s" calcMode="paced"
        fill="freeze" />

Half way through this animation (t=1.5s) the animated rect is supposed to
match the following yellow outline

    <rect x="-45" y="-22.5" width="90" height="45" stroke="rgb(255,180,0)"
      stroke-width="1" fill="none"/>

This works in SVG 1.1 where paced animation for animateTransform is defined
to apply to each component of a scale operation independently. In SVG 1.1
section 19.2.14 we have:

    If calcMode has the value paced, then a total "distance" for each
component of the transformation is calculated (e.g., for a translate
operation, a total distance is calculated for both tx and ty) consisting of
the sum of the absolute values of the differences between each pair of
values, and the animation runs to produce a constant distance movement for
each individual component.[1]

However, this behaviour was updated in SVGT1.2 which provides a distance
function that combines the components of complex types.[2]

Using the behaviour from SVGT1.2 I do not think the rectangle in this test
will ever match the yellow outline that is supposed to represent its state
at t=1.5s. It will first stretch out horizontally and then shrink on both
axes so it will never arrive at a state where it has the maximum x-scale and
a partial y-scale as suggested by the yellow rectangle.

Best regards,

Brian Birtles


Received on Friday, 16 January 2009 03:59:58 UTC