W3C home > Mailing lists > Public > www-svg@w3.org > October 2005

Re: SVG12: animation of <color> and <paint>

From: Chris Lilley <chris@w3.org>
Date: Mon, 24 Oct 2005 23:31:20 +0200
Message-ID: <1316929362.20051024233120@w3.org>
To: Bjoern Hoehrmann <derhoermi@gmx.net>
Cc: www-svg@w3.org

On Monday, July 4, 2005, 4:26:52 AM, Bjoern wrote:

BH> Dear Scalable Vector Graphics Working Group,

BH>   http://www.w3.org/TR/2005/WD-SVGMobile12-20050413/animate.html section
BH> 16.2.16 is unclear about various aspects of animation color and paint
BH> properties. The draft notes

BH>   If a given attribute or property can take values of keywords
BH>   (which are not additive) or numeric values (which are additive),

BH> It is not clear to me whether this is meant to say that keywords are not
BH> additive but numeric values are or whether it is meant to refer to non-
BH> additive keywords only.

The specification has been clarified to say that it is the computed
value of a property that is animated.

Consider the following example

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 340 120"
baseProfile="Tiny" version="1.2">
  <title>test animateColor with keywords</title>
  <rect color="green" fill="#000000" height="100" width="100">
    <animateColor attributeName="fill"
                  from="#f00" to="currentColor"
                  begin="1s" dur="5s" fill="freeze" />
  <rect color="green" fill="#000000" x="120" height="100" width="100">
    <animateColor attributeName="fill"
                  from="#f00" to="green"
                  begin="1s" dur="5s" fill="freeze" />
  <g fill="#070">
    <rect color="green" fill="#000000" x="240" height="100" width="100">
      <animateColor attributeName="fill"
                  from="#f00" to="inherit"
                  begin="1s" dur="5s" fill="freeze" />
  <g text-anchor="middle" font-size="14">
    <text x="50" y="130">currentColor</text>
    <text x="170" y="130">green</text>
    <text x="290" y="130">inherit</text>

The first animateColor will smoothly animate, because the computed value
of currentColor is a color value. Similarly in the second example,
'green' evaluates to a color as does 'inherit' in the third animation.

However, if the third animation was changed to have to="none" then
smooth animation would not be possible, as the computed value is not a
scalar or list of scalars but is still a keyword.

BH>  Clearly, "red" is a color keyword, and RGB color
BH> values are additive, so in case of the former, the note is not correct.
BH> Please change the note such that it is clear what it means.

The mention of computed values now clarified that passage.

BH> Further, the tables notes that "Only RGB color values are additive." It
BH> is however not clear what "RGB color values" are; it seems that <color>
BH> and <paint> always refer to a "RGB color value" except for references to
BH> gradient paint servers. Or, considering the use of "RGB value" in 4.1,
BH> it might mean that "red" is not a "RGB color value". Please change the
BH> draft such that it is clear which <paint> and <color> values are meant
BH> to be additive.

You are correct that if a property has a value which is a paint server,
this is not smoothly animatable with a color and will not be additive.
Again, this is clarified in the specification by reference to computed

Please let us know if this clarification does not address your comment.

 Chris Lilley                    mailto:chris@w3.org
 Chair, W3C SVG Working Group
 W3C Graphics Activity Lead
 Co-Chair, W3C Hypertext CG
Received on Monday, 24 October 2005 21:32:30 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 March 2017 09:47:04 UTC