- From: Shane Stephens <shans@google.com>
- Date: Tue, 12 Oct 2010 18:22:58 +1100
- To: Nikolas Zimmermann <zimmermann@physik.rwth-aachen.de>
- Cc: www-svg@w3.org
Hi Nikolas, > This example is not correct, how shall the user agent know to which element > the animation should be applied? > It works as expected if you'd assign xlink:href="#MyTriangle" to your > <animateMotion> element. > > You either have to specify a target for your animation element using > xlink:href=#someIRI" or include it as child element of the target element. > I just played a bit around with your test in Opera, and it's confusing: > > If I try: > <path d="M-25,-12.5 L25,-12.5 L 0,-87.5 z" fill="yellow", stroke="red" > stroke-width="7.06" id="MyTriangle"/> > <rect width="30" height="30"/> > <animateMotion dur="6s" repeatCount="indefinite" rotate="auto" ><mpath > xlink:href="#path1"/></animateMotion> > > Then Opera animates both the path & the rect, using the same animateMotion > operation. > Sounds like a bug to me, unless I'm missing some SMIL detail. Erik? if you look at the relevant fragment: <svg> ... <svg id="MySymbol"> <path d="M-25,-12.5 L25,-12.5 L 0,-87.5 z" fill="yellow" stroke="red" stroke-width="7.06" id="MyTriangle" > </path> <animateMotion dur="6s" repeatCount="indefinite" rotate="auto" > <mpath xlink:href="#path1"/> </animateMotion> </svg> ... </svg> then the animateMotion lives inside a container (the 'svg' element). http://www.w3.org/TR/SVG/animate.html#AnimationAttributesAndProperties indicates that svg elements can be animated, and this is why it seems that Opera's behaviour is correct - the container (and hence its children) is animated. This also explains why adding the rect to that container causes both to be animated. Cheers, -Shane
Received on Tuesday, 12 October 2010 07:31:13 UTC