almutama / cakejs

Automatically exported from code.google.com/p/cakejs
0 stars 0 forks source link

SMIL animation model #11

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
The current SVG animation parser is incorrect in its SMIL handling.

SMIL uses an "animation sandwich" model, in which the animators are
non-destructive modifiers on top of the object state.

Implementing the animation sandwich on top of CAKE is difficult, since
CAKE's animators are destructive modifiers on the object state.

A SMIL animator would require encasing the animated object inside an
animator shell. An alternative would be to have non-destructive state
modifiers in Transformable, and have Transformable call the modifiers
before passing the state to canvas context. I.e. now it's
context.setState(object.state), with the modifiers it would be
context.setState(object.stateModifiers(object.state)), where
object.stateModifiers has no side-effects.

Original issue reported on code.google.com by Ilmari.H...@gmail.com on 19 Mar 2008 at 5:37