Тип анимирования поворота RotationAnimation
Анимирует изменения значений поворота. Подробнее...
| Оператор импорта: | import QtQuick 2.15 |
| Наследует: |
Свойства
Подробное описание
RotationAnimation — это специализированный PropertyAnimation, который предоставляет управление направлением поворота во время анимации.
По умолчанию, он поворачивается в направлении числового изменения; поворот от 0 до 240 градусов будет поворачивать на 240 градусов по часовой стрелке, а поворот от 240 до 0 — на 240 градусов против часовой стрелки. Свойство direction может быть установлено для указания направления поворота.
В следующем примере мы используем RotationAnimation для анимации поворота между состояниями по кратчайшему пути:
import QtQuick 2.0
Item {
width: 300; height: 300
Rectangle {
id: rect
width: 150; height: 100; anchors.centerIn: parent
color: "red"
antialiasing: true
states: State {
name: "rotated"
PropertyChanges { target: rect; rotation: 180 }
}
transitions: Transition {
RotationAnimation { duration: 1000; direction: RotationAnimation.Counterclockwise }
}
}
MouseArea { anchors.fill: parent; onClicked: rect.state = "rotated" }
} Обратите внимание, что RotationAnimation не нужно устанавливать значение target. Для удобства, при использовании в переходе RotationAnimation повернёт все свойства с именем «rotation» или «angle». Вы можете переопределить это, указав свои собственные свойства через properties или property.
Также обратите внимание, что Rectangle будет поворачиваться вокруг своего значения по умолчанию transformOrigin (которое является Item.Center). Чтобы использовать другое значение transform origin, установите его в объекте PropertyChanges и примените изменение в начале анимации с помощью PropertyAction. Дополнительную информацию см. в документации к PropertyAction.
Как и любой другой тип анимации, RotationAnimation может быть применён несколькими способами, включая переходы, поведения и источники значений свойств. Документация Animation and Transitions in Qt Quick демонстрирует различные методы создания анимаций.
См. также Animation and Transitions in Qt Quick и Qt Quick Examples - Animation.
Документация по свойствам
direction : перечисление
Это свойство содержит направление поворота.
Возможные значения:
- RotationAnimation.Numerical (по умолчанию) - Поворот путём линейной интерполяции между двумя числами. Поворот от 10 до 350 градусов совершит поворот на 340 градусов по часовой стрелке.
- RotationAnimation.Clockwise - Поворот по часовой стрелке между двумя значениями
- RotationAnimation.Counterclockwise - Поворот против часовой стрелки между двумя значениями
- RotationAnimation.Shortest - Поворот в направлении, которое обеспечивает кратчайший путь анимации. Поворот от 10 до 350 градусов совершит поворот на 20 градусов против часовой стрелки.
from : вещественное число
Это свойство содержит начальное значение для анимации.
Например, следующая анимация не применяется до тех пор, пока значение angle не достигнет 100:
Item {
states: [
// ...
]
transition: Transition {
RotationAnimation { properties: "angle"; from: 100; duration: 2000 }
}
} Если RotationAnimation определён внутри перехода Transition или поведения Behavior, это значение по умолчанию соответствует значению, определённому в начальном состоянии перехода Transition, или текущему значению свойства в момент запуска поведения Behavior.
См. также Animation and Transitions in Qt Quick.
to : вещественное число
Это свойство содержит конечное значение для анимации.
Если RotationAnimation определён внутри перехода Transition или поведения Behavior, это значение по умолчанию соответствует значению, определённому в конечном состоянии перехода Transition, или значению изменения свойства, которое вызвало поведение Behavior.
См. также Animation and Transitions in Qt Quick.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtquick-rotationanimation.html