W3C home > Mailing lists > Public > www-svg@w3.org > October 2004

RE: Animating clips (tracks in SVG?)

From: Doug Schepers <doug@schepers.cc>
Date: Wed, 6 Oct 2004 14:40:08 -0400
To: "'Mark McKay'" <mark@kitfox.com>, <www-svg@w3.org>
Message-Id: <20041006184006.8A9841496A3@pillage.dreamhost.com>

Hi, Mark-

Part of your track example is easily accomplished in SVG:

<circle cx='25' cy='25' r='20' fill='red'>
   <animateColor id='a1' attributeName='fill' begin='2s; a3.end+2s' dur='5s'
      from='red' to='yellow' fill='freeze' />
   <animateColor id='a2' attributeName='fill' begin='a1.end+2s' dur='5s'
      from='yellow' to='green' fill='freeze' />
   <animateColor id='a3' attributeName='fill' begin='a2.end+2s' dur='5s'
      from='green' to='red' fill='freeze' />

As for reusing SMIL, I have a similar proposal here:

I don't specifically address instance-specific alterations to the timing or
colors, but those are things I have thought about, and I suspect they could
be incorporated into my general idea.

I'd be grateful for any feedback you have for this proposal. I hope you find
it interesting. A use case such as yours is pretty much exactly what I had
in mind.


Mark McKay wrote:
| I'm developing a new SVG viewer and player in Java. 
| (http://svgsalamander.dev.java.net).  The viewer portion is 
| working, and I'm currently working on animation.  Since my 
| original intention was to produce an SVG viewer/player that 
| was particularly useful for video games,  I'm paying 
| attention to the animation features.
| Looking over the SVG specification, it seems to me there is 
| no ability to create clips of animation.  The only way I can 
| think of to create things such as walk cycles, bouncing ball 
| cycles, buttons with shimmers that slide across them or other 
| complex repetative animation with SVG are kludges involving 
| creating events to keep reseting the begining 
| tim   esofanimateelements.
| For example, is there an easy way in SVG to create a circle 
| that is initially red for 2s, then changes to yellow over 5s, 
| then pauses for 2s, then fades to green over 5s, then pauses 
| 2s, then fades back to red? 
| (Let's call this complete animation a track).  Can I then 
| repeat the track as a unit?  Can I stop and start this track 
| as a unit?  Can I define this in the <defs> block and have a 
| <use> tag create several instances of it in different parts 
| of the screen?  With different time offsets?  Perhaps 
| speeding up or slowing down?
| If SVG doesn't support this notion of tracks, would it make 
| sense for me to create a special tag for my viewer to support this?
| Mark McKay
| --
| http://www.kitfox.com
Received on Wednesday, 6 October 2004 18:40:13 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:54:03 UTC