Тип QML RotationAnimation
Анимирует изменения значений вращения. Подробнее...
| Оператор импорта: | import QtQuick 2.1 |
| Наследует: |
Свойства
Подробное описание
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). Чтобы использовать другое начало преобразования, установите начало в объекте PropertyChanges и примените изменение в начале анимации, используя PropertyAction. Для получения дополнительной информации см. документацию PropertyAction.
Как и любой другой тип анимации, RotationAnimation может быть применен несколькими способами, включая переходы, поведения и источники значений свойств. Документация Анимация и переходы в Qt Quick демонстрирует различные методы создания анимаций.
См. также Анимация и переходы в Qt Quick и Qt Quick Примеры - Анимация.
Документация по свойствам
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 определён внутри Перехода или Поведения, это значение по умолчанию устанавливается в значение, определённое в начальном состоянии Перехода, или текущее значение свойства в момент запуска Поведения.
См. также Анимация и переходы в Qt Quick.
to : вещественное число
Это свойство содержит конечное значение для анимации.
Если RotationAnimation определён внутри Перехода или Поведения, это значение по умолчанию устанавливается в значение, определённое в конечном состоянии Перехода, или значение изменения свойства, которое вызвало Поведение.
См. также Анимация и переходы в Qt Quick.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qml-qtquick-rotationanimation.html