ElasticEase Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Beschleunigungsfunktion dar, die eine Animation erstellt, die einer Feder gleicht, die hin und her schwingt, bis sie zum Ruhezustand kommt.
public ref class ElasticEase sealed : EasingFunctionBase
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ElasticEase final : EasingFunctionBase
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ElasticEase : EasingFunctionBase
Public NotInheritable Class ElasticEase
Inherits EasingFunctionBase
<ElasticEase .../>
- Vererbung
- Attribute
Beispiele
In diesem XAML-Beispiel wird eine ElasticEase-Beschleunigungsfunktion auf eine DoubleAnimation angewendet, um eine Animation zu erstellen, die einer Feder ähnelt, die hin und her schwingt, bis sie zur Ruhe kommt.
<StackPanel x:Name="LayoutRoot" >
<StackPanel.Resources>
<Storyboard x:Name="myStoryboard">
<DoubleAnimation From="1" To="6" Duration="00:00:3"
Storyboard.TargetName="rectScaleTransform"
Storyboard.TargetProperty="ScaleY">
<DoubleAnimation.EasingFunction>
<!-- Elastic easing function assigned to From/To animation -->
<ElasticEase x:Name="myElasticEase" Oscillations="3"
Springiness="1" EasingMode="EaseOut"/>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
</Storyboard>
</StackPanel.Resources>
<Rectangle PointerPressed="Pointer_Clicked"
Fill="Blue" Width="200" Height="30">
<Rectangle.RenderTransform>
<ScaleTransform x:Name="rectScaleTransform" />
</Rectangle.RenderTransform>
</Rectangle>
</StackPanel>
// When the user clicks the rectangle, the animation
// begins.
private void Pointer_Clicked(object sender, PointerRoutedEventArgs e)
{
myStoryboard.Begin();
}
Hinweise
ElasticEase ist eine der beiden Beschleunigungsfunktionen, die einen Wert außerhalb des normalen From/To-Bereichs erzeugen können. (Die andere ist BackEase.) Wenn die Beschleunigungsfunktion beginnt, oszilliert der Wert positiv und negativ um den From-Wert , bis es eine spätere positive Amplitude erreicht, die der To-Wert ist. Die Springiness-Eigenschaft ändert den sinusförmigen Charakter dieser Schwingung. Mit 0 Springigkeit ist die Schwingung im Grunde sinusoidal und ähnelt einem typischen Diagramm einer Federbewegung. Bei größeren Springigkeitswerten ist es wie das Dämpfen der Federbewegung.
Die Oszillationseigenschaft deklariert, wie oft die Funktion schwingt und in Werte überschreitet, die tatsächlich unter dem Ausgangswert Von liegen.
Sie können optimale Ergebnisse erzielen, indem Sie einfach nur mit den Eigenschaften Springiness, Oszillation und EasingMode experimentieren, bis die Animation visuell das gewünschte Szenario für animierte Eigenschaftswert ausführt.
BounceEase ist eine ähnliche Beschleunigungsfunktion, die gut für die Physikemulation in Animationen geeignet ist. Der Unterschied zu ElasticEase besteht darin, dass eine BounceEase nicht jemals außerhalb des Bereichs von "Von/" . Eine weitere Möglichkeit, die beiden Beschleunigungsfunktionen zu konzipieren, ist, dass ElasticEase das Animieren des Zupfens einer Zeichenfolge ist, während BounceEase das ist, was Sie verwenden können, um den Absprung eines Balls gegen eine Linie oder ein Flugzeug anzuzeigen.
Eine Beschleunigungsfunktion kann auf die EasingFunction-Eigenschaften von From/To/By-Animationen oder auf die EasingFunction-Eigenschaften von Keyframetypen angewendet werden, die für die Beschleunigungsvarianten von Keyframeanimationen verwendet werden. Weitere Informationen finden Sie unter Keyframeanimationen und Beschleunigungsfunktionsanimationen.
Konstruktoren
| Name | Beschreibung |
|---|---|
| ElasticEase() |
Initialisiert eine neue Instanz der ElasticEase-Klasse . |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Dispatcher |
Gibt immer in einer Windows App SDK-App zurück |
| DispatcherQueue |
Ruft ab |
| EasingMode |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, wie die Animation interpoliert. (Geerbt von EasingFunctionBase) |
| Oscillations |
Ruft ab oder legt fest, wie oft die Zielfolien über dem Animationsziel hin und her geschoben werden. |
| OscillationsProperty |
Identifies the Oscillations dependency property. |
| Springiness |
Ruft die Stiffness der Feder ab oder legt sie fest. Je kleiner der Springigkeitswert ist, desto härter wird die Feder und desto schneller verringert sich die Intensität über jede Schwingung. |
| SpringinessProperty |
Identifies the Springiness dependency property. |
Methoden
| Name | Beschreibung |
|---|---|
| ClearValue(DependencyProperty) |
Löscht den lokalen Wert einer Abhängigkeitseigenschaft. (Geerbt von DependencyObject) |
| Ease(Double) |
Transformiert die normalisierte Zeit, um das Tempo einer Animation zu steuern. (Geerbt von EasingFunctionBase) |
| GetAnimationBaseValue(DependencyProperty) |
Gibt einen Basiswert zurück, der für eine Abhängigkeitseigenschaft eingerichtet wurde, was in Fällen angewendet wird, in denen eine Animation nicht aktiv ist. (Geerbt von DependencyObject) |
| GetValue(DependencyProperty) |
Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft aus einem DependencyObject zurück. (Geerbt von DependencyObject) |
| ReadLocalValue(DependencyProperty) |
Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn ein lokaler Wert festgelegt wird. (Geerbt von DependencyObject) |
| RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registriert eine Benachrichtigungsfunktion, um Änderungen an einer bestimmten DependencyProperty für diese DependencyObject-Instanz zu überwachen. (Geerbt von DependencyObject) |
| SetValue(DependencyProperty, Object) |
Legt den lokalen Wert einer Abhängigkeitseigenschaft für ein DependencyObject fest. (Geerbt von DependencyObject) |
| UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Bricht eine Änderungsbenachrichtigung ab, die zuvor durch Aufrufen von RegisterPropertyChangedCallback registriert wurde. (Geerbt von DependencyObject) |