Re: SVG2 path data animation improvements, differences to SVGT1.2

On Mon, Jan 7, 2013 at 8:57 AM, Dr. Olaf Hoffmann <Dr.O.Hoffmann@gmx.de> wrote:
> Concerning path data animation, SVG tiny 1.2 allows always discrete
> animation of path data, no matter how the path data are changed in
> the different values.

The CSSWG, in their last F2F meeting, agreed that
transitions/animations should work over all values, with the default
action being to make a discrete jump halfway through the transition's
progress function.  So, SVG Tiny's behavior is in line with this, and
I'd prefer SVG2 adopting it.

> Additionally it mainly matters the segment type, not really the used command
> due to path normalisation, therefore one can switch from C to S or
> from Q to T or from L to V, H etc
> http://www.w3.org/TR/SVGMobile12/paths.html#PathDataAnimation
> http://www.w3.org/TR/SVGMobile12/svgudom.html#PathNormalization

Agreed that it's better to "normalize" the path data into
inter-transitionable forms when possible.  For example, CSS's
*-gradient() functions can be interpolated regardless of how you
specify the size/position/angle of them:
<http://dev.w3.org/csswg/css4-images/#interpolating-gradients>.

> What really remains as a more difficult issue is, that elliptical arcs
> are different from Bezier curves, Z has a slightly different meaning than
> an affine segment and of course that M starts a new subpath.
> If such things are changed between animation values, discrete animation
> seems a reasonable choice

Yes, I think those are the only non-convertible types of values.  The
rest can all be normalized into a cubic bezier.

~TJ

Received on Monday, 7 January 2013 18:30:23 UTC