- From: David Vest <davve@opera.com>
- Date: Thu, 08 Feb 2007 17:40:43 +0100
- To: www-svg <www-svg@w3.org>
Hello WG and all!
My issue is related to animateTransform and the directive in SVG 1.2 Tiny
1.2 that says:
"If 'from' or 'to' attributes are not specified, the underlying value (see
SMIL discussion of animation function values) is the corresponding
identity transformation value." [1]
this, in combination with "To animations" [2] in SMIL that says:
"To animation defines its own kind of additive semantics, so the additive
attribute is ignored."
These two statements makes it impossible for animateTransforms without a
'from'-value to be additive.
I wonder if this is the intended behaviour. This is an example that should
show no red, if both these statements are fulfilled:
<?xml version="1.0" encoding="iso-8859-1" ?>
<svg width="500px" height="500px" viewBox="-250 -250 500 500"
xmlns="http://www.w3.org/2000/svg" version="1.1" baseProfile="tiny"
xmlns:xlink="http://www.w3.org/1999/xlink">
<title>animateTransform, 'to'-animations and additiveness</title>
<circle id="c5" cx="0" cy="0" r="40" fill="grey"/>
<circle id="c5" cx="-100" cy="0" r="40" fill="grey"/>
<circle id="c5" cx="100" cy="0" r="40" fill="grey"/>
<circle id="c2" cx="0" cy="0" r="30" fill="red"
transform="translate(-100,0)">
<animateTransform attributeName="transform" attributeType="XML"
type="translate"
to="100,0" dur="3s" begin="0s" fill="freeze" additive="sum"/>
</circle>
<circle id="c2" cx="0" cy="0" r="30" fill="green"
transform="translate(-100,0)">
<animateTransform attributeName="transform" attributeType="XML"
type="translate"
to="100,0" dur="3s" begin="0s" fill="freeze" />
</circle>
</svg>
I see three different options here:
1. Accept the current situation. It makes 'to'-animations with
animateTransform silly, since they can't be additive and therefore not
very useful.
2. Add an override statement to SVG that respects additive="sum" for
animateTransforms without 'from', since the underlying value (implicit
'from'-value) is the identity matrix.
3. Change the wording how the underlying value is extracted. This is a bit
complex since the 'real' underlying value is a list of transforms, but
perhaps one could allow lists of length one as a underlying value (use the
one transform in the list).
(4. I have gotten this all wrong and someone will correct me and send me
along my merry way...)
By searching the list (www-svg) I find that Dr. Hoffman has brought up
this before [3] (I think, his mail touches upon other points too). Also,
Cameron McCormack has raised questions about how to-animations should work
in animateTransform[4].
[1] http://www.w3.org/TR/SVGMobile12/animate.html#AnimateTransformElement
[2]
http://www.w3.org/TR/2005/REC-SMIL2-20051213/animation.html#animationNS-ToAnimation
[3] http://lists.w3.org/Archives/Public/www-svg/2006May/0132
[4] http://lists.w3.org/Archives/Public/www-svg/2006Jul/0020
--
David Vest <davve@opera.com>
Received on Thursday, 8 February 2007 16:40:59 UTC