OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 <meta charset="UTF-8"> |
| 3 <style> |
| 4 .parent { |
| 5 cx: 100px; |
| 6 } |
| 7 .target { |
| 8 font-size: 16px; |
| 9 cx: 50px; |
| 10 } |
| 11 .expected { |
| 12 fill: green; |
| 13 } |
| 14 </style> |
| 15 <body> |
| 16 <template id="target-template"> |
| 17 <svg width="90" height="90"> |
| 18 <path class="target" /> |
| 19 </svg> |
| 20 </template> |
| 21 <script src="resources/interpolation-test.js"></script> |
| 22 <script> |
| 23 'use strict'; |
| 24 |
| 25 // Distinct number of path segments |
| 26 assertNoInterpolation({ |
| 27 property: 'd', |
| 28 from: "path('m 0 0 h 1 h 2')", |
| 29 to: "path('m 0 0 h 3')" |
| 30 }); |
| 31 |
| 32 // Distinct segment types |
| 33 assertNoInterpolation({ |
| 34 property: 'd', |
| 35 from: "path('m 10 0 h 1')", |
| 36 to: "path('m 20 0 v 2')" |
| 37 }); |
| 38 |
| 39 assertNoInterpolation({ |
| 40 property: 'd', |
| 41 from: "path('m 1 2 l 3 4 Z')", |
| 42 to: "path('m 1 2 l 3 4')" |
| 43 }); |
| 44 |
| 45 // Exercise each segment type |
| 46 assertInterpolation({ |
| 47 property: 'd', |
| 48 from: "path('m 0 0 Z')", |
| 49 to: "path('m 0 0 Z')" |
| 50 }, [ |
| 51 {at: -0.4, is: "path('m 0 0 Z')"}, |
| 52 {at: 0, is: "path('m 0 0 Z')"}, |
| 53 {at: 0.2, is: "path('m 0 0 Z')"}, |
| 54 {at: 0.6, is: "path('m 0 0 Z')"}, |
| 55 {at: 1, is: "path('m 0 0 Z')"}, |
| 56 {at: 1.4, is: "path('m 0 0 Z')"} |
| 57 ]); |
| 58 |
| 59 assertInterpolation({ |
| 60 property: 'd', |
| 61 from: "path('M 20 50')", |
| 62 to: "path('M 30 70')" |
| 63 }, [ |
| 64 {at: -0.4, is: "path('M 16 42')"}, |
| 65 {at: 0, is: "path('M 20 50')"}, |
| 66 {at: 0.2, is: "path('M 22 54')"}, |
| 67 {at: 0.6, is: "path('M 26 62')"}, |
| 68 {at: 1, is: "path('M 30 70')"}, |
| 69 {at: 1.4, is: "path('M 34 78')"} |
| 70 ]); |
| 71 |
| 72 assertInterpolation({ |
| 73 property: 'd', |
| 74 from: "path('m 20 50')", |
| 75 to: "path('m 30 70')" |
| 76 }, [ |
| 77 {at: -0.4, is: "path('m 16 42')"}, |
| 78 {at: 0, is: "path('m 20 50')"}, |
| 79 {at: 0.2, is: "path('m 22 54')"}, |
| 80 {at: 0.6, is: "path('m 26 62')"}, |
| 81 {at: 1, is: "path('m 30 70')"}, |
| 82 {at: 1.4, is: "path('m 34 78')"} |
| 83 ]); |
| 84 |
| 85 assertInterpolation({ |
| 86 property: 'd', |
| 87 from: "path('m 0 0 L 20 50')", |
| 88 to: "path('m 0 0 L 30 70')" |
| 89 }, [ |
| 90 {at: -0.4, is: "path('m 0 0 L 16 42')"}, |
| 91 {at: 0, is: "path('m 0 0 L 20 50')"}, |
| 92 {at: 0.2, is: "path('m 0 0 L 22 54')"}, |
| 93 {at: 0.6, is: "path('m 0 0 L 26 62')"}, |
| 94 {at: 1, is: "path('m 0 0 L 30 70')"}, |
| 95 {at: 1.4, is: "path('m 0 0 L 34 78')"} |
| 96 ]); |
| 97 |
| 98 assertInterpolation({ |
| 99 property: 'd', |
| 100 from: "path('m 0 0 l 20 50')", |
| 101 to: "path('m 0 0 l 30 70')" |
| 102 }, [ |
| 103 {at: -0.4, is: "path('m 0 0 l 16 42')"}, |
| 104 {at: 0, is: "path('m 0 0 l 20 50')"}, |
| 105 {at: 0.2, is: "path('m 0 0 l 22 54')"}, |
| 106 {at: 0.6, is: "path('m 0 0 l 26 62')"}, |
| 107 {at: 1, is: "path('m 0 0 l 30 70')"}, |
| 108 {at: 1.4, is: "path('m 0 0 l 34 78')"} |
| 109 ]); |
| 110 |
| 111 assertInterpolation({ |
| 112 property: 'd', |
| 113 from: "path('m 0 0 C 32 42 52 62 12 22')", |
| 114 to: "path('m 0 0 C 37 47 57 67 17 27')", |
| 115 }, [ |
| 116 {at: -0.4, is: "path('m 0 0 C 30 40 50 60 10 20')"}, |
| 117 {at: 0, is: "path('m 0 0 C 32 42 52 62 12 22')"}, |
| 118 {at: 0.2, is: "path('m 0 0 C 33 43 53 63 13 23')"}, |
| 119 {at: 0.6, is: "path('m 0 0 C 35 45 55 65 15 25')"}, |
| 120 {at: 1, is: "path('m 0 0 C 37 47 57 67 17 27')"}, |
| 121 {at: 1.4, is: "path('m 0 0 C 39 49 59 69 19 29')"} |
| 122 ]); |
| 123 |
| 124 assertInterpolation({ |
| 125 property: 'd', |
| 126 from: "path('m 0 0 c 32 42 52 62 12 22')", |
| 127 to: "path('m 0 0 c 37 47 57 67 17 27')" |
| 128 }, [ |
| 129 {at: -0.4, is: "path('m 0 0 c 30 40 50 60 10 20')"}, |
| 130 {at: 0, is: "path('m 0 0 c 32 42 52 62 12 22')"}, |
| 131 {at: 0.2, is: "path('m 0 0 c 33 43 53 63 13 23')"}, |
| 132 {at: 0.6, is: "path('m 0 0 c 35 45 55 65 15 25')"}, |
| 133 {at: 1, is: "path('m 0 0 c 37 47 57 67 17 27')"}, |
| 134 {at: 1.4, is: "path('m 0 0 c 39 49 59 69 19 29')"} |
| 135 ]); |
| 136 |
| 137 assertInterpolation({ |
| 138 property: 'd', |
| 139 from: "path('m 0 0 Q 32 42 52 62')", |
| 140 to: "path('m 0 0 Q 37 47 57 67')" |
| 141 }, [ |
| 142 {at: -0.4, is: "path('m 0 0 Q 30 40 50 60')"}, |
| 143 {at: 0, is: "path('m 0 0 Q 32 42 52 62')"}, |
| 144 {at: 0.2, is: "path('m 0 0 Q 33 43 53 63')"}, |
| 145 {at: 0.6, is: "path('m 0 0 Q 35 45 55 65')"}, |
| 146 {at: 1, is: "path('m 0 0 Q 37 47 57 67')"}, |
| 147 {at: 1.4, is: "path('m 0 0 Q 39 49 59 69')"} |
| 148 ]); |
| 149 |
| 150 assertInterpolation({ |
| 151 property: 'd', |
| 152 from: "path('m 0 0 q 32 42 52 62')", |
| 153 to: "path('m 0 0 q 37 47 57 67')" |
| 154 }, [ |
| 155 {at: -0.4, is: "path('m 0 0 q 30 40 50 60')"}, |
| 156 {at: 0, is: "path('m 0 0 q 32 42 52 62')"}, |
| 157 {at: 0.2, is: "path('m 0 0 q 33 43 53 63')"}, |
| 158 {at: 0.6, is: "path('m 0 0 q 35 45 55 65')"}, |
| 159 {at: 1, is: "path('m 0 0 q 37 47 57 67')"}, |
| 160 {at: 1.4, is: "path('m 0 0 q 39 49 59 69')"} |
| 161 ]); |
| 162 |
| 163 assertInterpolation({ |
| 164 property: 'd', |
| 165 from: "path('m 0 0 A 10 20 30 1 0 40 50')", |
| 166 to: "path('m 0 0 A 60 70 80 0 1 90 100')" |
| 167 }, [ |
| 168 {at: -0.4, is: "path('m 0 0 A -10 0 10 1 0 20 30')"}, |
| 169 {at: 0, is: "path('m 0 0 A 10 20 30 1 0 40 50')"}, |
| 170 {at: 0.2, is: "path('m 0 0 A 20 30 40 1 0 50 60')"}, |
| 171 {at: 0.6, is: "path('m 0 0 A 40 50 60 0 1 70 80')"}, |
| 172 {at: 1, is: "path('m 0 0 A 60 70 80 0 1 90 100')"}, |
| 173 {at: 1.4, is: "path('m 0 0 A 80 90 100 0 1 110 120')"}, |
| 174 ]); |
| 175 |
| 176 assertInterpolation({ |
| 177 property: 'd', |
| 178 from: "path('m 0 0 a 10 20 30 1 0 40 50')", |
| 179 to: "path('m 0 0 a 60 70 80 0 1 90 100')" |
| 180 }, [ |
| 181 {at: -0.4, is: "path('m 0 0 a -10 0 10 1 0 20 30')"}, |
| 182 {at: 0, is: "path('m 0 0 a 10 20 30 1 0 40 50')"}, |
| 183 {at: 0.2, is: "path('m 0 0 a 20 30 40 1 0 50 60')"}, |
| 184 {at: 0.6, is: "path('m 0 0 a 40 50 60 0 1 70 80')"}, |
| 185 {at: 1, is: "path('m 0 0 a 60 70 80 0 1 90 100')"}, |
| 186 {at: 1.4, is: "path('m 0 0 a 80 90 100 0 1 110 120')"} |
| 187 ]); |
| 188 |
| 189 assertInterpolation({ |
| 190 property: 'd', |
| 191 from: "path('m 0 0 H 10')", |
| 192 to: "path('m 0 0 H 60')" |
| 193 }, [ |
| 194 {at: -0.4, is: "path('m 0 0 H -10')"}, |
| 195 {at: 0, is: "path('m 0 0 H 10')"}, |
| 196 {at: 0.2, is: "path('m 0 0 H 20')"}, |
| 197 {at: 0.6, is: "path('m 0 0 H 40')"}, |
| 198 {at: 1, is: "path('m 0 0 H 60')"}, |
| 199 {at: 1.4, is: "path('m 0 0 H 80')"} |
| 200 ]); |
| 201 |
| 202 assertInterpolation({ |
| 203 property: 'd', |
| 204 from: "path('m 0 0 h 10')", |
| 205 to: "path('m 0 0 h 60')" |
| 206 }, [ |
| 207 {at: -0.4, is: "path('m 0 0 h -10')"}, |
| 208 {at: 0, is: "path('m 0 0 h 10')"}, |
| 209 {at: 0.2, is: "path('m 0 0 h 20')"}, |
| 210 {at: 0.6, is: "path('m 0 0 h 40')"}, |
| 211 {at: 1, is: "path('m 0 0 h 60')"}, |
| 212 {at: 1.4, is: "path('m 0 0 h 80')"} |
| 213 ]); |
| 214 |
| 215 assertInterpolation({ |
| 216 property: 'd', |
| 217 from: "path('m 0 0 V 10')", |
| 218 to: "path('m 0 0 V 60')" |
| 219 }, [ |
| 220 {at: -0.4, is: "path('m 0 0 V -10')"}, |
| 221 {at: 0, is: "path('m 0 0 V 10')"}, |
| 222 {at: 0.2, is: "path('m 0 0 V 20')"}, |
| 223 {at: 0.6, is: "path('m 0 0 V 40')"}, |
| 224 {at: 1, is: "path('m 0 0 V 60')"}, |
| 225 {at: 1.4, is: "path('m 0 0 V 80')"} |
| 226 ]); |
| 227 |
| 228 assertInterpolation({ |
| 229 property: 'd', |
| 230 from: "path('m 0 0 v 10')", |
| 231 to: "path('m 0 0 v 60')" |
| 232 }, [ |
| 233 {at: -0.4, is: "path('m 0 0 v -10')"}, |
| 234 {at: 0, is: "path('m 0 0 v 10')"}, |
| 235 {at: 0.2, is: "path('m 0 0 v 20')"}, |
| 236 {at: 0.6, is: "path('m 0 0 v 40')"}, |
| 237 {at: 1, is: "path('m 0 0 v 60')"}, |
| 238 {at: 1.4, is: "path('m 0 0 v 80')"} |
| 239 ]); |
| 240 |
| 241 assertInterpolation({ |
| 242 property: 'd', |
| 243 from: "path('m 0 0 S 32 42 52 62')", |
| 244 to: "path('m 0 0 S 37 47 57 67')" |
| 245 }, [ |
| 246 {at: -0.4, is: "path('m 0 0 S 30 40 50 60')"}, |
| 247 {at: 0, is: "path('m 0 0 S 32 42 52 62')"}, |
| 248 {at: 0.2, is: "path('m 0 0 S 33 43 53 63')"}, |
| 249 {at: 0.6, is: "path('m 0 0 S 35 45 55 65')"}, |
| 250 {at: 1, is: "path('m 0 0 S 37 47 57 67')"}, |
| 251 {at: 1.4, is: "path('m 0 0 S 39 49 59 69')"}, |
| 252 ]); |
| 253 |
| 254 assertInterpolation({ |
| 255 property: 'd', |
| 256 from: "path('m 0 0 s 32 42 52 62')", |
| 257 to: "path('m 0 0 s 37 47 57 67')" |
| 258 }, [ |
| 259 {at: -0.4, is: "path('m 0 0 s 30 40 50 60')"}, |
| 260 {at: 0, is: "path('m 0 0 s 32 42 52 62')"}, |
| 261 {at: 0.2, is: "path('m 0 0 s 33 43 53 63')"}, |
| 262 {at: 0.6, is: "path('m 0 0 s 35 45 55 65')"}, |
| 263 {at: 1, is: "path('m 0 0 s 37 47 57 67')"}, |
| 264 {at: 1.4, is: "path('m 0 0 s 39 49 59 69')"}, |
| 265 ]); |
| 266 |
| 267 assertInterpolation({ |
| 268 property: 'd', |
| 269 from: "path('m 0 0 T 20 50')", |
| 270 to: "path('m 0 0 T 30 70')" |
| 271 }, [ |
| 272 {at: -0.4, is: "path('m 0 0 T 16 42')"}, |
| 273 {at: 0, is: "path('m 0 0 T 20 50')"}, |
| 274 {at: 0.2, is: "path('m 0 0 T 22 54')"}, |
| 275 {at: 0.6, is: "path('m 0 0 T 26 62')"}, |
| 276 {at: 1, is: "path('m 0 0 T 30 70')"}, |
| 277 {at: 1.4, is: "path('m 0 0 T 34 78')"}, |
| 278 ]); |
| 279 |
| 280 assertInterpolation({ |
| 281 property: 'd', |
| 282 from: "path('m 0 0 t 20 50')", |
| 283 to: "path('m 0 0 t 30 70')" |
| 284 }, [ |
| 285 {at: -0.4, is: "path('m 0 0 t 16 42')"}, |
| 286 {at: 0, is: "path('m 0 0 t 20 50')"}, |
| 287 {at: 0.2, is: "path('m 0 0 t 22 54')"}, |
| 288 {at: 0.6, is: "path('m 0 0 t 26 62')"}, |
| 289 {at: 1, is: "path('m 0 0 t 30 70')"}, |
| 290 {at: 1.4, is: "path('m 0 0 t 34 78')"}, |
| 291 ]); |
| 292 |
| 293 // Mix relative and non-relative |
| 294 assertInterpolation({ |
| 295 property: 'd', |
| 296 from: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')", |
| 297 to: "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 200 100 z')" |
| 298 }, [ |
| 299 {at: -0.4, is: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 120 20 Z')"}, |
| 300 {at: 0, is: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')"}, |
| 301 {at: 0.2, is: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 240 140 Z')"}, |
| 302 {at: 0.6, is: "path('M 0 0 L 100 100 m 0 100 l 100 0 Z l 120 20 Z')"}, |
| 303 {at: 1, is: "path('M 0 0 L 100 100 m 0 100 l 100 0 Z l 200 100 Z')"}, |
| 304 {at: 1.4, is: "path('M 0 0 L 100 100 m 0 100 l 100 0 Z l 280 180 Z')"}, |
| 305 ]); |
| 306 |
| 307 assertInterpolation({ |
| 308 property: 'd', |
| 309 from: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')", |
| 310 to: "path('M 0 0 L 100 100 m 0 100 l 100 0 z l 100 -100 z')" |
| 311 }, [ |
| 312 {at: -0.4, is: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 160 100 Z')"}, |
| 313 {at: 0, is: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 200 100 Z')"}, |
| 314 {at: 0.2, is: "path('M 0 0 L 100 100 M 100 200 L 200 200 Z L 220 100 Z')"}, |
| 315 {at: 0.6, is: "path('M 0 0 L 100 100 m 0 100 l 100 0 Z l 60 -100 Z')"}, |
| 316 {at: 1, is: "path('M 0 0 L 100 100 m 0 100 l 100 0 Z l 100 -100 Z')"}, |
| 317 {at: 1.4, is: "path('M 0 0 L 100 100 m 0 100 l 100 0 Z l 140 -100 Z')"}, |
| 318 ]); |
| 319 |
| 320 assertInterpolation({ |
| 321 property: 'd', |
| 322 from: "path('m 10 20 l 20 30 z l 50 60 z m 70 80 l 90 60 z t 70 120')", |
| 323 to: "path('M 110 120 L 130 150 Z L 80 110 Z M 100 140 L 190 200 Z T 210 220')" |
| 324 }, [ |
| 325 {at: -0.4, is: "path('m -30 -20 l 20 30 Z l 90 100 Z m 90 100 l 90 60 Z t 90 1
60')"}, |
| 326 {at: 0, is: "path('m 10 20 l 20 30 Z l 50 60 Z m 70 80 l 90 60 Z t 70 120')"}, |
| 327 {at: 0.2, is: "path('m 30 40 l 20 30 Z l 30 40 Z m 60 70 l 90 60 Z t 60 100')"
}, |
| 328 {at: 0.6, is: "path('M 70 80 L 90 110 Z L 80 110 Z M 120 160 L 210 220 Z T 250
280')"}, |
| 329 {at: 1, is: "path('M 110 120 L 130 150 Z L 80 110 Z M 100 140 L 190 200 Z T 21
0 220')"}, |
| 330 {at: 1.4, is: "path('M 150 160 L 170 190 Z L 80 110 Z M 80 120 L 170 180 Z T 1
70 160')"} |
| 331 ]); |
| 332 |
| 333 assertInterpolation({ |
| 334 property: 'd', |
| 335 from: "path('m 10 20 c 40 50 30 60 80 70 c 90 100 140 110 120 130')", |
| 336 to: "path('M 110 120 C 140 150 130 160 180 170 C 290 300 340 310 320 330')" |
| 337 }, [ |
| 338 {at: -0.4, is: "path('m -30 -20 c 44 58 34 68 84 78 c 82 88 132 98 112 118')"}
, |
| 339 {at: 0, is: "path('m 10 20 c 40 50 30 60 80 70 c 90 100 140 110 120 130')"}, |
| 340 {at: 0.2, is: "path('m 30 40 c 38 46 28 56 78 66 c 94 106 144 116 124 136')"}, |
| 341 {at: 0.6, is: "path('M 70 80 C 104 118 94 128 144 138 C 246 256 296 266 276 28
6')"}, |
| 342 {at: 1, is: "path('M 110 120 C 140 150 130 160 180 170 C 290 300 340 310 320 3
30')"}, |
| 343 {at: 1.4, is: "path('M 150 160 C 176 182 166 192 216 202 C 334 344 384 354 364
374')"} |
| 344 ]); |
| 345 |
| 346 assertInterpolation({ |
| 347 property: 'd', |
| 348 from: "path('m 10 20 q 30 60 40 50 q 100 70 90 80')", |
| 349 to: "path('M 110 120 Q 130 160 140 150 Q 200 170 190 180')" |
| 350 }, [ |
| 351 {at: -0.4, is: "path('m -30 -20 q 34 68 44 58 q 116 90 106 100')"}, |
| 352 {at: 0, is: "path('m 10 20 q 30 60 40 50 q 100 70 90 80')"}, |
| 353 {at: 0.2, is: "path('m 30 40 q 28 56 38 46 q 92 60 82 70')"}, |
| 354 {at: 0.6, is: "path('M 70 80 Q 94 128 104 118 Q 180 158 170 168')"}, |
| 355 {at: 1, is: "path('M 110 120 Q 130 160 140 150 Q 200 170 190 180')"}, |
| 356 {at: 1.4, is: "path('M 150 160 Q 166 192 176 182 Q 220 182 210 192')"} |
| 357 ]); |
| 358 |
| 359 assertInterpolation({ |
| 360 property: 'd', |
| 361 from: "path('m 10 20 s 30 60 40 50 s 100 70 90 80')", |
| 362 to: "path('M 110 120 S 130 160 140 150 S 200 170 190 180')" |
| 363 }, [ |
| 364 {at: -0.4, is: "path('m -30 -20 s 34 68 44 58 s 116 90 106 100')"}, |
| 365 {at: 0, is: "path('m 10 20 s 30 60 40 50 s 100 70 90 80')"}, |
| 366 {at: 0.2, is: "path('m 30 40 s 28 56 38 46 s 92 60 82 70')"}, |
| 367 {at: 0.6, is: "path('M 70 80 S 94 128 104 118 S 180 158 170 168')"}, |
| 368 {at: 1, is: "path('M 110 120 S 130 160 140 150 S 200 170 190 180')"}, |
| 369 {at: 1.4, is: "path('M 150 160 S 166 192 176 182 S 220 182 210 192')"} |
| 370 ]); |
| 371 |
| 372 assertInterpolation({ |
| 373 property: 'd', |
| 374 from: "path('m 10 20 h 30 v 40 h 50 v 60 l 70 80')", |
| 375 to: "path('M 110 120 H 130 V 140 H 250 V 260 L 270 280')" |
| 376 }, [ |
| 377 {at: -0.4, is: "path('m -30 -20 h 34 v 48 h 22 v 36 l 90 104')"}, |
| 378 {at: 0, is: "path('m 10 20 h 30 v 40 h 50 v 60 l 70 80')"}, |
| 379 {at: 0.2, is: "path('m 30 40 h 28 v 36 h 64 v 72 l 60 68')"}, |
| 380 {at: 0.6, is: "path('M 70 80 H 94 V 108 H 186 V 204 L 226 248')"}, |
| 381 {at: 1, is: "path('M 110 120 H 130 V 140 H 250 V 260 L 270 280')"}, |
| 382 {at: 1.4, is: "path('M 150 160 H 166 V 172 H 314 V 316 L 314 312')"} |
| 383 ]); |
| 384 |
| 385 assertInterpolation({ |
| 386 property: 'd', |
| 387 from: "path('m 10 20 a 10 20 30 1 0 40 50 a 110 120 30 1 1 140 50')", |
| 388 to: "path('M 20 30 A 60 70 80 0 1 90 100 A 160 170 80 0 1 90 100')" |
| 389 }, [ |
| 390 {at: -0.4, is: "path('m 6 16 a -10 0 10 1 0 28 42 a 90 100 10 1 1 196 70')"}, |
| 391 {at: 0, is: "path('m 10 20 a 10 20 30 1 0 40 50 a 110 120 30 1 1 140 50')"}, |
| 392 {at: 0.2, is: "path('m 12 22 a 20 30 40 1 0 46 54 a 120 130 40 1 1 112 40')"}, |
| 393 {at: 0.6, is: "path('M 16 26 A 40 50 60 0 1 74 88 A 140 150 60 0 1 130 108')"}
, |
| 394 {at: 1, is: "path('M 20 30 A 60 70 80 0 1 90 100 A 160 170 80 0 1 90 100')"}, |
| 395 {at: 1.4, is: "path('M 24 34 A 80 90 100 0 1 106 112 A 180 190 100 0 1 50 92')
"} |
| 396 ]); |
| 397 |
| 398 </script> |
| 399 </body> |
| 400 </html> |
OLD | NEW |