1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
---
title: keyTimes
slug: Web/SVG/Attribute/keyTimes
translation_of: Web/SVG/Attribute/keyTimes
---
<p>« <a href="/en-US/docs/Web/SVG/Attribute" title="en-US/docs/Web/SVG/Attribute">SVG Attribute reference home</a></p>
<p>Атрибут <code>keyTimes</code> представляет собой разделённый точками с запятой список значений времени, используемых для управления темпами анимации. Каждое значение в списке соответствует значению в списке атрибутов {{ SVGAttr("values") }} и определяет, когда оно используется в анимации. Каждое значение времени в списке <code>keyTimes</code> задаётся как значение с плавающей запятой от 0 до 1 (включительно), представляющее пропорциональную величину смещения в течение элемента анимации.</p>
<p>Если указан список <code>keyTimes</code>, то в списке <code>keyTimes</code> должно быть ровно столько же значений, сколько в списке {{ SVGAttr("values") }} .</p>
<p>Каждое последовательное значение времени должно быть больше или равно предыдущему значению времени.</p>
<p>Семантика списка keyTimes зависит от режима интерполяции:</p>
<ul>
<li>Для линейной и сплайновой анимации первое значение времени в списке должно быть равно 0, а Последнее значение времени в списке должно быть 1. Ключевое время, связанное с каждым значением, определяет, когда значение задаётся; значения являются интерполяцией между ключевыми моментами.</li>
<li>Для дискретной анимации первое значение времени в списке должно быть равно 0. Время, связанное с каждым значением, определяет, когда значение задаётся; Функция анимации использует это значение до следующего времени, определённого в <code>keyTimes</code>.</li>
</ul>
<p>Если в качестве режима интерполяции используется <em>paced</em>, атрибут <code>keyTimes </code>игнорируется.</p>
<p>Если в качестве параметра длительности выбрано <em>indefinite</em>, атрибут <code>keyTimes</code> игнорируется.</p>
<h2 id="Usage_context">Usage context</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="row">Categories</th>
<td>Animation value attribute</td>
</tr>
<tr>
<th scope="row">Value</th>
<td><list></td>
</tr>
<tr>
<th scope="row">Animatable</th>
<td>No</td>
</tr>
<tr>
<th scope="row">Normative document</th>
<td><a class="external" href="http://www.w3.org/TR/SVG/animate.html#KeyTimesAttribute">SVG 1.1 (2nd Edition)</a></td>
</tr>
</tbody>
</table>
<h2 id="Пример">Пример</h2>
<pre class="brush: html"><?xml version="1.0"?>
<svg width="120" height="120"
viewPort="0 0 120 120" version="1.1"
xmlns="http://www.w3.org/2000/svg">
<circle cx="60" cy="10" r="10">
<animate attributeName="cx"
attributeType="XML"
dur="4s"
values="60 ; 110 ; 60 ; 10 ; 60"
keyTimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"
repeatCount="indefinite"/>
<animate attributeName="cy"
attributeType="XML"
dur="4s"
values="10 ; 60 ; 110 ; 60 ; 10 "
keyTimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"
repeatCount="indefinite"/>
</circle>
</svg></pre>
<p><strong>Демонстрация</strong></p>
<p>{{ EmbedLiveSample('Example','120','120') }}</p>
<h2 id="Элементы">Элементы</h2>
<p>Следующие элементы могут использовать атрибут <code>keyTimes</code></p>
<ul>
<li>{{ SVGElement("animate") }}</li>
<li>{{ SVGElement("animateColor") }}</li>
<li>{{ SVGElement("animateMotion") }}</li>
<li>{{ SVGElement("animateTransform") }}</li>
</ul>
|