Condividi tramite


CircleEase Classe

Definizione

Rappresenta una funzione di interpolazione che crea un'animazione che accelera e/o decelera utilizzando una funzione circolare.

public ref class CircleEase 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 CircleEase 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 CircleEase : EasingFunctionBase
Public NotInheritable Class CircleEase
Inherits EasingFunctionBase
<CircleEase .../>
Ereditarietà
Object Platform::Object IInspectable DependencyObject EasingFunctionBase CircleEase
Attributi

Esempio

Questo esempio XAML applica una funzione di interpolazione CircleEase a un DoubleAnimation per creare un'animazione decelerante.

<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" EnableDependentAnimation="True">
                <DoubleAnimation.EasingFunction>
                    <CircleEase EasingMode="EaseOut"/>
                </DoubleAnimation.EasingFunction>
            </DoubleAnimation>
        </Storyboard>
    </StackPanel.Resources>

        <Rectangle x:Name="myRectangle" 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();
}

Commenti

CircleEase è una funzione di interpolazione che ha una formula di funzione nel tempo simile a una curva cosina quando rappresentata come grafico in fase di funzione. Quando EasingMode è EaseIn (impostazione predefinita), questa funzione di interpolazione inizia lentamente e accelera gradualmente man mano che raggiunge la fine. Raggiunge circa il 15% del valore a metà della durata.

Una funzione di interpolazione può essere applicata alle proprietà EasingFunction di animazioni From/To/By o alle proprietà EasingFunction dei tipi di fotogrammi chiave usati per le varianti di interpolazione delle animazioni key-frame. Per altre informazioni, vedere Animazioni con fotogrammi chiave e animazioni delle funzioni di interpolazione.

La formula usata per questa funzione è:

La formula di f(t) è uguale a 1 radice quadrata meno 1 meno t quadratita

Una funzione di interpolazione può essere applicata alle proprietà EasingFunction di animazioni From/To/By o alle proprietà EasingFunction dei tipi di fotogrammi chiave usati per le varianti di interpolazione delle animazioni key-frame. Per altre informazioni, vedere Animazioni con fotogrammi chiave e animazioni delle funzioni di interpolazione.

Costruttori

CircleEase()

Inizializza una nuova istanza della classe CircleEase .

Proprietà

Dispatcher

Restituisce null sempre in un'app SDK per app di Windows. Usare invece DispatcherQueue .

(Ereditato da DependencyObject)
DispatcherQueue

Ottiene l'oggetto DispatcherQueue associato. Rappresenta DispatcherQueue una struttura che può accedere al thread dell'interfaccia utente anche se il codice viene avviato da un thread non dell'interfaccia DependencyObject utente.

(Ereditato da DependencyObject)
EasingMode

Ottiene o imposta un valore che specifica il modo in cui viene eseguita l'interpolazione dell'animazione.

(Ereditato da EasingFunctionBase)

Metodi

ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà di dipendenza.

(Ereditato da DependencyObject)
Ease(Double)

Trasforma il tempo normalizzato per controllare la velocità di un'animazione.

(Ereditato da EasingFunctionBase)
GetAnimationBaseValue(DependencyProperty)

Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva.

(Ereditato da DependencyObject)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza da un oggetto DependencyObject.

(Ereditato da DependencyObject)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se viene impostato un valore locale.

(Ereditato da DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una funzione di notifica per l'ascolto delle modifiche a un'istanza di DependencyObject specifica.

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza in un oggetto DependencyObject.

(Ereditato da DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback.

(Ereditato da DependencyObject)

Si applica a

Vedi anche