W3C home > Mailing lists > Public > www-smil@w3.org > January to March 2007

[SMIL30 FWD] calcMode, keyTimes and examples

From: Dr. Olaf Hoffmann <Dr.O.Hoffmann@gmx.de>
Date: Sun, 25 Feb 2007 15:06:26 +0100
To: www-smil@w3.org
Message-Id: <200702251506.26298.Dr.O.Hoffmann@gmx.de>


I would like to (re)report a problem in the working draft
of SMIL 3 (already reported for previous versions or
working drafts of SMIL, but not corrected or discussed

In 3.9.1 SMIL 3.0 SplineAnimation Module Attributes
(Calculation mode attributes)
it is noted about keyTimes:

  For linear and spline animation, the first time value in the list must be 0, 
  and the last time value in the list must be 1.

 Later in the section "Interpolation with keySplines" we find the example:
  <animate attributeName="foo" from="10" to="20" 
     dur="10s" keyTimes="0.0; 0.7"
     calcMode="spline" keySplines=".5 0 .5 1" />

   The value will change from 10 to 20, using an "ease-in/ease-out" curve 
   by the keySplines values. The keyTimes values cause the value of 20 to be 
   at 7 seconds, and to hold there for the remainder of the 10 second simple 

Well the behaviour described for the examples sounds useful, but because
the first cited section specified the last value has to be 1, this does not 
fit together. 
Is it possible to change the 'the last time value in the list must be 1' or
the example?

Another problem occurs with this example in the section "Examples of advanced 
uses of calcMode"

  <animateColor attributeName="color" dur="10s" calcMode="discrete"
     values="green; yellow; red" keyTimes="0.0; 0.8;" />

One time value is missing or invalid, because it is specified for keyTimes:
Each time value in the keyTimes list is specified as a floating point 
value between 0 and 1 (inclusive), representing a proportional offset 
into the simple duration of the animation element.
If a list of keyTimes is specified, there must be exactly as many values in 
the keyTimes list as in the values list.
Each successive time value must be greater than or equal to the preceding 
time value.

Well the last time value '' is no floating point value between 0 and 1 and '' 
is not greater or equal to the preceding value '0.8'.
Therefore this example does not fit to the description of the keyTimes 
attribute, too.

Best wishes...
Received on Sunday, 25 February 2007 14:07:26 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:34:26 UTC