[svgwg] Issue: The interpolation of large_arc_flag/sweep_flag of Elliptical Arc in SVG Path marked as Paths chapter

AmeliaBR has just labeled an issue for https://github.com/w3c/svgwg as "Paths chapter":

== The interpolation of large_arc_flag/sweep_flag of Elliptical Arc in SVG Path ==
There is an existed problem about the interpolation on the flags of elliptical arc curves, i.e. large_arc_flag and sweep_flag. These two flags could determine the arc among 4 different combinations. The current spec [1] mentions that 
> Flags and booleans must be interpolated as fractions between zero and one, with any non-zero value considered to be a value of one/true. 

If two flags are matched, everything is fine. If not, it seems we have to interpolate the flags as real number, and then set the flag as true if its interpolated value is **not equal to zero**.  However, the current wpt of offset-path [2] conflicts this. That is, it flips the flags by comparing it with 0.5. I believe this is the behavior in Blink. In Firefox, if the boolean values don't match, treat the whole path as not interpolable and fall back to discrete animation. The reason is in [Bug 653928](https://bugzilla.mozilla.org/show_bug.cgi?id=653928#c15), i.e. Firefox guys thought the behavior (i.e. interpolation between different flag values) in the spec is useless if the flags don't match.

Just want to know which way is better and does the spec make sense? (Probably this is about mathematics.) It'd be better to have a useful and consistent behavior on different browsers.

* [1] https://svgwg.org/svg2-draft/paths.html#TheDProperty
* [2] https://github.com/web-platform-tests/wpt/blob/a806d658df3bcc3f05675ad8d08a6e109177c6b0/css/motion/animation/offset-path-interpolation-002.html#L67-L90

cc: @birtles @ericwilligers

See https://github.com/w3c/svgwg/issues/543

Received on Monday, 17 September 2018 18:56:39 UTC