RotationAnimation QML Type
Animiert Änderungen der Rotationswerte. Mehr...
| Import Statement: | import QtQuick |
| Inherits: |
Eigenschaften
Ausführliche Beschreibung
RotationAnimation ist ein spezielles „ PropertyAnimation “, mit dem sich die Drehrichtung während einer Animation steuern lässt.
Standardmäßig erfolgt die Drehung in Richtung der numerischen Änderung; eine Drehung von 0 auf 240 bewirkt eine Drehung um 240 Grad im Uhrzeigersinn, während eine Drehung von 240 auf 0 eine Drehung um 240 Grad gegen den Uhrzeigersinn bewirkt. Mit der Eigenschaft „ direction “ kann die Richtung festgelegt werden, in die die Drehung erfolgen soll.
Im folgenden Beispiel verwenden wir „RotationAnimation“, um die Drehung zwischen Zuständen über den kürzesten Weg zu animieren:
import QtQuick
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" }
}Beachten Sie, dass für „RotationAnimation“ kein Wert für „ target “ festgelegt werden musste. Der Einfachheit halber dreht „RotationAnimation“ bei Verwendung in einem Übergang alle Eigenschaften mit den Namen „rotation“ oder „angle“. Sie können dies überschreiben, indem Sie über „ properties “ oder „ property “ eigene Eigenschaften angeben.
Beachten Sie außerdem, dass „ Rectangle “ um seinen Standard-Transformationsursprung „ transformOrigin “ (der „ Item.Center “ lautet) gedreht wird. Um einen anderen Transformationsursprung zu verwenden, legen Sie den Ursprung im „ PropertyChanges “-Objekt fest und wenden Sie die Änderung zu Beginn der Animation mithilfe von „ PropertyAction “ an. Weitere Details finden Sie in der Dokumentation unter PropertyAction.
Wie jeder andere Animationstyp kann auch eine „RotationAnimation“ auf verschiedene Weise angewendet werden, unter anderem über Übergänge, Verhaltensweisen und Eigenschaftswertquellen. Die Dokumentation „Animation und Übergänge“ unter Qt Quick zeigt eine Vielzahl von Methoden zum Erstellen von Animationen.
Siehe auch „Animation und Übergänge in Qt Quick “ sowie „Qt Quick -Beispiele – Animation“.
Eigenschaftsdokumentation
direction : enumeration
Diese Eigenschaft enthält die Drehrichtung.
Mögliche Werte sind:
| Konstant | Beschreibung |
|---|---|
RotationAnimation.Numerical | (Standard) Die Drehung erfolgt durch lineare Interpolation zwischen den beiden Zahlen. Eine Drehung von 10 nach 350 entspricht einer Drehung um 340 Grad im Uhrzeigersinn. |
RotationAnimation.Clockwise | Drehen im Uhrzeigersinn zwischen den beiden Werten |
RotationAnimation.Counterclockwise | Drehen gegen den Uhrzeigersinn zwischen den beiden Werten |
RotationAnimation.Shortest | Drehen in die Richtung, die den kürzesten Animationspfad ergibt. Eine Drehung von 10 zu 350 führt zu einer Drehung um 20 Grad gegen den Uhrzeigersinn. |
from : real
Diese Eigenschaft enthält den Startwert für die Animation.
Beispielsweise wird die folgende Animation erst angewendet, wenn der Wert von „ angle “ 100 erreicht hat:
Item {
states: [
// ...
]
transitions: Transition {
RotationAnimation { properties: "angle"; from: 100; duration: 2000 }
}
}Wenn „ RotationAnimation “ innerhalb von „ Transition “ oder „ Behavior “ definiert ist, entspricht dieser Wert standardmäßig dem im Startzustand von „ Transition “ definierten Wert oder dem aktuellen Wert der Eigenschaft zum Zeitpunkt der Auslösung von „ Behavior “.
Siehe auch „Animationen und Übergänge“ unter Qt Quick.
to : real
Diese Eigenschaft enthält den Endwert für die Animation.
Wenn der „ RotationAnimation “ innerhalb eines „ Transition “ oder „ Behavior “ definiert ist, entspricht dieser Wert standardmäßig dem im Endzustand des „ Transition “ definierten Wert oder dem Wert der Eigenschaftsänderung, die den „ Behavior “ ausgelöst hat.
Siehe auch „Animationen und Übergänge“ unter Qt Quick.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.