- From: Cyril Concolato <cyril.concolato@enst.fr>
- Date: Tue, 14 Feb 2006 14:48:59 +0100
- To: www-svg@w3.org
Hi Cameron, > <animate attributeName="opacity" dur="6s" calcMode="linear" > values="inherit; 0; 1"/> > > 'opacity' is an attribute that does support linear interpolation, so > according to the quoted paragraph above calcMode is not ignored, but > obviously interpolation cannot happen between 'inherit' and '0'. So > what should happen? Three possibilities I can think of: > > * Do treat it as if calcMode="discrete" were specified, because at > least one non-numeric value was given: > > 'inherit' from 0s to 2s > '0' from 2s to 4s > '1' from 4s to 6s > > * Treat it the same as calcMode="linear", but don't actually do any > interpolation between 'inherit' and '0': > > 'inherit' from 0s to 3s > '0'..'1' from 3s to 6s > > * Treat it like a separate calcMode="discrete" between 'inherit' and > '0' and calcMode="linear" between '0' and '1', distributing the > segments equally: > > 'inherit' from 0s to 2s > '0' from 2s to 4s > '0'..'1' from 4s to 6s I think you missed one choice: * Treat it as calcMode="linear" but apply inheritance before computing the interpolation between the inherited value and 0. I think this is the correct behavior but unfortunately it is poorly specified in SMIL. Best regards, Cyril > > I like the second choice, but if there is some text that defines what > happens in a case like this then a pointer would be appreciated. > > Thanks, > > Cameron > > [1] > http://www.w3.org/TR/2001/REC-smil-animation-20010904/#AnimFuncCalcMode > [2] > http://www.w3.org/TR/SVG11/animate.html#AnimationAttributesAndProperties >
Received on Tuesday, 14 February 2006 13:49:08 UTC