QuaternionKeyFrameAnimation Klasse

Definition

Eine zeitbasierte Animation, die auf die Orientation-Eigenschaft mit einem oder mehreren Keyframes ausgerichtet ist.

Die QuaternionKeyFrameAnimation-Klasse ist einer der unterstützten Typen von KeyFrameAnimations, die verwendet wird, um die Orientation-Eigenschaft in einem Visual zu animieren. Quaternionen sind eine nützliche und manchmal einfachere Möglichkeit, über Drehungen nachzudenken – Quaternionen nehmen den kürzesten Weg zwischen Winkeln und vermeiden Probleme wie gimbal Lock, auf die Drehwinkel/-Achse und Drehmatrizen stoßen. Ein Quaternion besteht aus zwei Komponenten: einem skalaren und einem Vektorteil.

public ref class QuaternionKeyFrameAnimation sealed : KeyFrameAnimation
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 131072)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class QuaternionKeyFrameAnimation final : KeyFrameAnimation
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 131072)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class QuaternionKeyFrameAnimation : KeyFrameAnimation
Public NotInheritable Class QuaternionKeyFrameAnimation
Inherits KeyFrameAnimation
Vererbung
Object Platform::Object IInspectable CompositionObject CompositionAnimation KeyFrameAnimation QuaternionKeyFrameAnimation
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10586.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v2.0)

Beispiele

void QuaternionAnimation(SpriteVisual visual)
{
  // Create the QuaternionKeyFrameAnimation
  var quaternionKFA = _compositor.CreateQuaternionKeyFrameAnimation();

  // Create a Quaternion that represents a 45 degree rotation around X Axis
  Quaternion quaternion = new Quaternion(0.380f, 0f, 0.0f, 0.92f);

  // Insert the Quaternion into the KeyFrame
  quaternionKFA.InsertKeyFrame(1.0f, quaternion);
  quaternionKFA.Duration = TimeSpan.FromSeconds(1);

  // Attach to the Orientation property of Visual
  visual.StartAnimation("Orientation", quaternionKFA);
}

Hinweise

Eine Animation wird der Eigenschaft eines Objekts zugeordnet, indem CompositionObject.StartAnimation aufgerufen und der Eigenschaftenname und die Animation angegeben werden. Eine Liste der animatable-Eigenschaften finden Sie im Abschnitt "Hinweise" von CompositionObject.StartAnimation .

Ein Quaternion besteht aus zwei unterscheidbaren Teilen: einer Vektor- und einer skalaren Komponente. Bei Verwendung mit KeyFrame-Animationen kann die Quaternion durch die Notation von System.Numerics von 4 Floats oder einem Vector3 und einem Skalar definiert werden. System.Numerics stellt Konstruktoren für eine dieser Notationen bereit.

Wenn Sie eine Drehung in eine Quaternion übersetzen, können Sie System.Numerics Quaternion-Hilfsfunktionen verwenden, mit denen Sie Quaternionen aus einer Achsen/Winkel-Kombination, Drehmatrix oder Yaw/Pitch/Roll erstellen können. Im obigen Beispiel könnte das gleiche Quaternion aus dem folgenden Hilfsprogramm erstellt werden:

Quaternion quaternion = Quaternion.CreateFromAxisAngle(new Vector3(1.0f, 0.0f, 0.0f), 0.78f);

Eigenschaften

Comment

Eine Zeichenfolge, die dem CompositionObject zugeordnet werden soll.

(Geerbt von CompositionObject)
Compositor

Der Compositor , der zum Erstellen dieses CompositionObject verwendet wird.

(Geerbt von CompositionObject)
DelayBehavior

Das Verzögerungsverhalten der Keyframeanimation.

(Geerbt von KeyFrameAnimation)
DelayTime

Verzögerung, bevor die Animation gestartet wird, nachdem CompositionObject.StartAnimation aufgerufen wurde.

(Geerbt von KeyFrameAnimation)
Direction

Die Richtung, in die die Animation wiedergegeben wird.

Mit der Direction-Eigenschaft können Sie Ihre Animation von Anfang zu Ende oder von Ende zu Start oder zwischen Start und Ende oder zwischen Start und Ende oder Ende zum Start fahren, wenn die Animation einen IterationCount größer als 1 aufweist. Dies bietet eine einfache Möglichkeit zum Anpassen von Animationsdefinitionen.

(Geerbt von KeyFrameAnimation)
Dispatcher

Der Dispatcher für das CompositionObject.

(Geerbt von CompositionObject)
DispatcherQueue

Ruft den DispatcherQueue für das CompostionObject ab.

(Geerbt von CompositionObject)
Duration

Die Dauer der Animation.

(Geerbt von KeyFrameAnimation)
ImplicitAnimations

Die Auflistung impliziter Animationen, die diesem Objekt angefügt sind.

(Geerbt von CompositionObject)
InitialValueExpressions

Ruft die Anfangswerte für die Animation ab.

(Geerbt von CompositionAnimation)
IterationBehavior

Das Iterationsverhalten für die Keyframeanimation.

(Geerbt von KeyFrameAnimation)
IterationCount

Die Anzahl der Wiederholungen der Keyframeanimation.

(Geerbt von KeyFrameAnimation)
KeyFrameCount

Die Anzahl der Keyframes in KeyFrameAnimation.

(Geerbt von KeyFrameAnimation)
Properties

Die Auflistung von Eigenschaften, die dem CompositionObject zugeordnet sind.

(Geerbt von CompositionObject)
StopBehavior

Gibt an, wie der Eigenschaftswert festgelegt wird, wenn StopAnimation aufgerufen wird.

(Geerbt von KeyFrameAnimation)
Target

Das Ziel der Animation.

(Geerbt von CompositionAnimation)

Methoden

ClearAllParameters()

Löscht alle Parameter der Animation.

(Geerbt von CompositionAnimation)
ClearParameter(String)

Löscht einen Parameter aus der Animation.

(Geerbt von CompositionAnimation)
Close()

Schließt das CompositionObject und gibt Systemressourcen frei.

(Geerbt von CompositionObject)
ConnectAnimation(String, CompositionAnimation)

Verbindet und Animation.

(Geerbt von CompositionObject)
DisconnectAnimation(String)

Trennt eine Animation.

(Geerbt von CompositionObject)
Dispose()

Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen.

(Geerbt von CompositionObject)
InsertExpressionKeyFrame(Single, String)

Fügt einen Ausdrucksschlüsselrahmen ein.

(Geerbt von KeyFrameAnimation)
InsertExpressionKeyFrame(Single, String, CompositionEasingFunction)

Fügt einen Ausdrucksschlüsselrahmen ein.

(Geerbt von KeyFrameAnimation)
InsertKeyFrame(Single, Quaternion)

Fügt einen Keyframe ein.

InsertKeyFrame(Single, Quaternion, CompositionEasingFunction)

Fügt einen Keyframe mit der angegebenen Beschleunigungsfunktion ein.

PopulatePropertyInfo(String, AnimationPropertyInfo)

Definiert eine Eigenschaft, die animiert werden kann.

(Geerbt von CompositionObject)
SetBooleanParameter(String, Boolean)

Legt einen booleschen Wertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetColorParameter(String, Color)

Legt einen Color-Wertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetExpressionReferenceParameter(String, IAnimationObject)

Legt ein -Objekt fest, das IAnimationObject als Verweisparameter in einer ExpressionAnimation implementiert.

(Geerbt von CompositionAnimation)
SetMatrix3x2Parameter(String, Matrix3x2)

Legt einen Matrix3x2-Wertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetMatrix4x4Parameter(String, Matrix4x4)

Legt einen Matrix4x4-Wertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetQuaternionParameter(String, Quaternion)

Legt einen Quaternion-Wert für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetReferenceParameter(String, CompositionObject)

Legt einen Verweis auf ein Composition-Objekt zur Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetScalarParameter(String, Single)

Legt einen Skalarwertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetVector2Parameter(String, Vector2)

Legt einen Vector2-Wertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetVector3Parameter(String, Vector3)

Legt einen Vector3-Wertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
SetVector4Parameter(String, Vector4)

Legt einen Vector4-Wertparameter für die Verwendung mit einer ExpressionAnimation oder einem Ausdrucksschlüsselbild fest.

(Geerbt von CompositionAnimation)
StartAnimation(String, CompositionAnimation)

Verbindet eine Animation mit der angegebenen Eigenschaft des Objekts und startet die Animation.

(Geerbt von CompositionObject)
StartAnimation(String, CompositionAnimation, AnimationController)

Verbindet eine Animation mit der angegebenen Eigenschaft des Objekts und startet die Animation.

(Geerbt von CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Startet eine Animationsgruppe.

Mit der StartAnimationGroup-Methode für CompositionObject können Sie CompositionAnimationGroup starten. Alle Animationen in der Gruppe werden gleichzeitig für das Objekt gestartet.

(Geerbt von CompositionObject)
StopAnimation(String)

Trennt eine Animation von der angegebenen Eigenschaft und beendet die Animation.

(Geerbt von CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Beendet eine Animationsgruppe.

(Geerbt von CompositionObject)
TryGetAnimationController(String)

Gibt einen AnimationController für die Animation zurück, die für die angegebene Eigenschaft ausgeführt wird.

(Geerbt von CompositionObject)

Gilt für:

Weitere Informationen