Move parseFontFaceDescriptor to CSSPropertyParser.cpp
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / svg / W3C-SVG-1.1 / animate-elem-81-t.svg
blob4decb7b771dc1527efdf5986170bdc6cc5b13ed9
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--======================================================================-->
3 <!--= Copyright 2004 World Wide Web Consortium, (Massachusetts =-->
4 <!--= Institute of Technology, Institut National de Recherche en =-->
5 <!--= Informatique et en Automatique, Keio University). All Rights =-->
6 <!--= Reserved. See http://www.w3.org/Consortium/Legal/. =-->
7 <!--======================================================================--><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
9 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" baseProfile="tiny" id="svg-root" width="100%" height="100%" viewBox="0 0 480 360">
10 <SVGTestCase xmlns:testcase="http://www.w3.org/2000/02/svg/testsuite/description/" xmlns="http://www.w3.org/2000/02/svg/testsuite/description/" reviewer="CN" owner="VH" desc="Test on the animateTransform additive behavior" status="accepted" version="$Revision: 1.6 $" testname="$RCSfile: animate-elem-81-t.svg,v $">
11 <OperatorScript>
13 <Paragraph>
14 This test validates the operation of the animateTransform's
15 additive behavior, as described in the SVG 1.1 specification
16 (see
17 http://www.w3.org/TR/SVG11/animate.html#AnimateTransformElement).
18 </Paragraph>
20 <Paragraph>
21 The first two rectangles, on the top row, show the effect of the
22 additive attribute on animateTransform. The left-most
23 animateTransforms have their additive attribute set to replace,
24 so the effect of the two transform animation is as if only the
25 highest priority one applied because it replaces the underlying
26 value. The second animateTransforms (from left to right) have
27 their additive attribute set to sum, which means the transforms
28 they produce are concatenated. </Paragraph>
30 <Paragraph>
31 The last two rectangles, on the top row, show the effect of the
32 accumulate attribute on animateTransform. For the left one
33 (third on the row, from left to right), the accumulate attribute
34 is set to none. There are two repeats for the
35 animateTransform. Therefore, the transform goes twice from a
36 scale(1,1) to a scale(2,2). For the right-most animateTransform,
37 the accumulate attribute is set to sum. There are two repeats
38 and the animation goes from scale(1,1) to scale(2,2) for the
39 first iteration and then from scale(2,2) to scale(4,4) (because
40 the result of the second iteration is concatenated to the
41 scale(2,2) result of the previous, first iteration).
42 </Paragraph>
44 <Paragraph>
45 The rectangles on the bottom row show the combination of
46 additive and cumulative behavior. The left rectangle's
47 animateTransform accumulate behavior is set to none but its
48 additive behavior is set to sum. Therefore, the transform's
49 underlying value (skewX(30)) is always pre-concatenated to the
50 animateTransform's result, which goes from "skewX(30)
51 scale(1,1)" to "skewX(30) scale(2,2)" in each of its two
52 iterations. The right rectangle's animateTransform accumulate
53 behavior is set to sum and the additive behavior is also set to
54 sum. Therefore, the transform's underlying value is always
55 pre-concatenated, so is the result of previous animation
56 iterations. Consequently, the transform goes from "skewX(30)
57 scale(1,1)" to "skewX(30) scale(2,2)" for the first iteration
58 and then from "skewX(30) scale(2,2) scale(1,1)" to "skewX(30)
59 scale(2,2) scale(2,2)" for the second iteration. </Paragraph>
61 </OperatorScript>
62 </SVGTestCase>
63 <title id="test-title">$RCSfile: animate-elem-81-t.svg,v $</title>
65 <!--======================================================================-->
66 <!--Content of Test Case follows... =====================-->
67 <!--======================================================================-->
68 <text id="revision" x="10" y="340" font-size="40" stroke="none" fill="black">$Revision: 1.6 $</text>
69 <rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
71 <text text-anchor="middle" x="240" y="25" font-size="16">&lt;animateTransform&gt;</text>
73 <defs>
74 <g id="ref" stroke="rgb(192,192,192)" fill="none">
75 <circle stroke-width="2" r="40"/>
76 <line x1="-45" x2="45"/>
77 <line y1="-45" y2="45"/>
78 </g>
79 </defs>
81 <g transform="translate(0,0)">
83 <g transform="translate(60,90)">
84 <rect x="-15" y="-15" width="30" height="30" transform="skewX(30)" stroke="gray" stroke-width="4" fill="rgb(230,230,230)">
85 <animateTransform attributeName="transform" attributeType="XML" type="rotate" from="0" to="90" dur="5s" additive="replace" fill="freeze"/>
86 <animateTransform attributeName="transform" attributeType="XML" type="scale" from="1,1" to="2,2" dur="5s" additive="replace" fill="freeze"/>
87 </rect>
88 <rect x="-15" y="-15" width="30" height="30" transform="scale(2,2)" stroke="rgb(255,180,0)" stroke-width="4" fill="none"/>
89 <text y="60" text-anchor="middle">additive=replace</text>
90 </g>
92 <g transform="translate(180,90)">
93 <rect x="-15" y="-15" width="30" height="30" transform="skewX(30)" stroke="gray" stroke-width="4" fill="rgb(230,230,230)">
94 <animateTransform attributeName="transform" attributeType="XML" type="rotate" from="0" to="90" dur="5s" additive="sum" fill="freeze"/>
95 <animateTransform attributeName="transform" attributeType="XML" type="scale" from="1,1" to="2,2" dur="5s" additive="sum" fill="freeze"/>
96 </rect>
97 <rect x="-15" y="-15" width="30" height="30" transform="skewX(30) rotate(90) scale(2,2)" stroke="rgb(255,180,0)" stroke-width="4" fill="none"/>
98 <text y="60" text-anchor="middle">additive=sum</text>
99 </g>
101 <g transform="translate(300,90)">
102 <rect x="-15" y="-15" width="30" height="30" transform="skewX(30)" stroke="gray" stroke-width="4" fill="rgb(230,230,230)">
103 <animateTransform attributeName="transform" attributeType="XML" type="scale" from="1,1" to="2,2" dur="2.5s" repeatCount="2" accumulate="none" fill="freeze" additive="replace"/>
104 </rect>
105 <rect x="-15" y="-15" width="30" height="30" transform="scale(2,2)" stroke="rgb(255,180,0)" stroke-width="4" fill="none"/>
106 <text y="60" text-anchor="middle">accumulate=none</text>
107 <text y="75" text-anchor="middle">additive=replace</text>
108 </g>
110 <g transform="translate(420,90)">
111 <rect x="-7.5" y="-7.5" width="15" height="15" transform="skewX(30)" stroke="gray" stroke-width="2" fill="rgb(230,230,230)">
112 <animateTransform attributeName="transform" attributeType="XML" type="scale" from="1,1" to="2,2" dur="2.5s" repeatCount="2" accumulate="sum" fill="freeze" additive="replace"/>
113 </rect>
114 <rect x="-7.5" y="-7.5" width="15" height="15" transform="scale(4,4)" stroke="rgb(255,180,0)" stroke-width="2" fill="none"/>
115 <text y="60" text-anchor="middle">accumulate=sum</text>
116 <text y="75" text-anchor="middle">additive=replace</text>
117 </g>
119 <g transform="translate(300,220)">
120 <rect x="-15" y="-15" width="30" height="30" transform="skewX(30)" stroke="gray" stroke-width="4" fill="rgb(230,230,230)">
121 <animateTransform attributeName="transform" attributeType="XML" type="scale" from="1,1" to="2,2" dur="2.5s" repeatCount="2" accumulate="none" fill="freeze" additive="sum"/>
122 </rect>
123 <rect x="-15" y="-15" width="30" height="30" transform="skewX(30) scale(2,2)" stroke="rgb(255,180,0)" stroke-width="4" fill="none"/>
124 <text y="60" text-anchor="middle">accumulate=none</text>
125 <text y="75" text-anchor="middle">additive=sum</text>
126 </g>
128 <g transform="translate(420,220)">
129 <rect x="-7.5" y="-7.5" width="15" height="15" transform="skewX(30)" stroke="gray" stroke-width="2" fill="rgb(230,230,230)">
130 <animateTransform attributeName="transform" attributeType="XML" type="scale" from="1,1" to="2,2" dur="2.5s" repeatCount="2" accumulate="sum" fill="freeze" additive="sum"/>
131 </rect>
132 <rect x="-7.5" y="-7.5" width="15" height="15" transform="skewX(30) scale(4,4)" stroke="rgb(255,180,0)" stroke-width="2" fill="none"/>
133 <text y="60" text-anchor="middle">accumulate=sum</text>
134 <text y="75" text-anchor="middle">additive=sum</text>
135 </g>
137 </g>
138 </svg>