Langage

ElasticEase Classe

Définition

Représente une fonction d’accélération qui crée une animation qui ressemble à un printemps oscillant de retour et d’avant jusqu’au repos.

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 .../>
Héritage
Object Platform::Object IInspectable DependencyObject EasingFunctionBase ElasticEase
Attributs

Exemples

Cet exemple XAML applique une fonction d’accélération ElasticEase à une DoubleAnimation pour créer une animation qui ressemble à un ressort oscillant de retour et d’avant jusqu’au repos.

<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();
}

Remarques

ElasticEase est l’une des deux fonctions d’accélération qui peuvent produire une valeur en dehors de la plage De/À normale. (L’autre est BackEase.) À mesure que la fonction d’accélération commence, la valeur oscille positive et négative autour de la valeur From jusqu’à atteindre une amplitude positive éventuelle qui est la valeur To . La propriété Springiness modifie le caractère sinusoïde de cette oscillation. Avec Springiness de 0, l’oscillation est essentiellement sinusoïde et ressemble à un diagramme typique du mouvement d’un printemps. Avec des valeurs Springiness plus grandes, c’est comme amortir le mouvement du printemps.

La propriété Oscillations déclare combien de fois la fonction oscille et passe en valeurs qui sont réellement en dessous de la valeur De départ.

Vous pouvez obtenir de meilleurs résultats en effectuant simplement des expériences avec les propriétés Springiness, Oscillations et EasingMode jusqu’à ce que l’animation fasse visuellement ce que vous souhaitez pour votre scénario de valeur de propriété animée.

BounceEase est une fonction d’accélération similaire qui fonctionne bien pour l’émulation physique dans les animations. La différence avec ElasticEase est qu’une BounceEase ne sortira jamais de la plage From/To . Une autre façon de conceptualiser les deux fonctions d’accélération est que ElasticEase est ce que vous pouvez utiliser pour animer le plucking d’une chaîne, tandis que BounceEase est ce que vous pouvez utiliser pour montrer le rebond d’une balle sur une ligne ou un plan.

Une fonction d’accélération peut être appliquée aux propriétés EasingFunction des animations From/To/By ou aux propriétés EasingFunction des types d’images clés utilisées pour les variantes d’accélération des animations d’images clés. Pour plus d’informations, consultez animations d’images clés et animations de fonction d’accélération.

Constructeurs

Nom Description
ElasticEase()

Initialise une nouvelle instance de la classe ElasticEase .

Propriétés

Nom Description
Dispatcher

Retourne null toujours dans une application du Kit de développement logiciel (SDK) d’application Windows. Utilisez DispatcherQueue à la place.

(Hérité de DependencyObject)
DispatcherQueue

Obtient le DispatcherQueue résultat auquel cet objet est associé. Représente DispatcherQueue une installation qui peut accéder au DependencyObject thread d’interface utilisateur même si le code est initié par un thread non-interface utilisateur.

(Hérité de DependencyObject)
EasingMode

Obtient ou définit une valeur qui spécifie comment l’animation interpole.

(Hérité de EasingFunctionBase)
Oscillations

Obtient ou définit le nombre de fois où les diapositives cibles se déplacent vers l’arrière et vers l’arrière sur la destination d’animation.

OscillationsProperty

Identifie la propriété de dépendance d’Oscillations .

Springiness

Obtient ou définit la raideur du printemps. Plus la valeur Springiness est plus petite, plus le printemps est raide et plus l’élasticité diminue de l’intensité sur chaque oscillation.

SpringinessProperty

Identifie la propriété de dépendance Springiness .

Méthodes

Nom Description
ClearValue(DependencyProperty)

Efface la valeur locale d’une propriété de dépendance.

(Hérité de DependencyObject)
Ease(Double)

Transforme le temps normalisé pour contrôler le rythme d’une animation.

(Hérité de EasingFunctionBase)
GetAnimationBaseValue(DependencyProperty)

Retourne toute valeur de base établie pour une propriété de dépendance, qui s’applique dans les cas où une animation n’est pas active.

(Hérité de DependencyObject)
GetValue(DependencyProperty)

Retourne la valeur effective actuelle d’une propriété de dépendance à partir d’un DependencyObject.

(Hérité de DependencyObject)
ReadLocalValue(DependencyProperty)

Retourne la valeur locale d’une propriété de dépendance, si une valeur locale est définie.

(Hérité de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Inscrit une fonction de notification pour écouter les modifications apportées à une dependencyProperty spécifique sur cette instance DependencyObject .

(Hérité de DependencyObject)
SetValue(DependencyProperty, Object)

Définit la valeur locale d’une propriété de dépendance sur un DependencyObject.

(Hérité de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annule une notification de modification qui a été précédemment inscrite en appelant RegisterPropertyChangedCallback.

(Hérité de DependencyObject)

S’applique à

Voir aussi