Compartir a través de


BackEase Clase

Definición

Representa una función de aceleración que retira el movimiento de una animación ligeramente antes de empezar a animarse en la ruta indicada.

public ref class BackEase : System::Windows::Media::Animation::EasingFunctionBase
public class BackEase : System.Windows.Media.Animation.EasingFunctionBase
type BackEase = class
    inherit EasingFunctionBase
Public Class BackEase
Inherits EasingFunctionBase
Herencia

Ejemplos

En el ejemplo siguiente se aplica una función de aceleración de BackEase a un DoubleAnimation para crear una animación que se retrae ligeramente al principio y al final de la animación.

<Rectangle Name="MyRectangle" Margin="60" Width="50" Height="50" Fill="Blue">
      <Rectangle.Triggers>
          <EventTrigger RoutedEvent="Rectangle.MouseDown">
              <BeginStoryboard>
                  <Storyboard>
                      <DoubleAnimation From="1" To="2" Duration="00:00:1" 
                     Storyboard.TargetName="myScaleTransform" 
                     Storyboard.TargetProperty="ScaleX">
                          <DoubleAnimation.EasingFunction>
                              <BackEase Amplitude="0.3" EasingMode="EaseInOut" />
                          </DoubleAnimation.EasingFunction>
                      </DoubleAnimation>
                      <DoubleAnimation From="1" To="2" Duration="00:00:1" 
                     Storyboard.TargetName="myScaleTransform" 
                     Storyboard.TargetProperty="ScaleY">
                          <DoubleAnimation.EasingFunction>
                              <BackEase Amplitude="0.3" EasingMode="EaseInOut" />
                          </DoubleAnimation.EasingFunction>
                      </DoubleAnimation>

                  </Storyboard>
              </BeginStoryboard>
          </EventTrigger>
      </Rectangle.Triggers>
      <Rectangle.RenderTransform>
          <ScaleTransform x:Name="myScaleTransform" />
      </Rectangle.RenderTransform>

  </Rectangle>

Comentarios

Puede controlar cuándo se produce el comportamiento de "copia de seguridad" en una animación especificando el valor de la propiedad EasingMode en una animación. En el gráfico siguiente se muestran los distintos valores de EasingMode, donde f(t) representa el progreso de la animación y t representa el tiempo.

gráficos BackEase EasingMode.

La fórmula que se usa para esta función es la siguiente.

fórmula BackEase.

Nota

Dado que esta animación hace que los valores se retiren antes de avanzar, la animación puede interpolarse en números negativos inesperadamente. Esto puede provocar errores al animar propiedades que no permiten números negativos. Por ejemplo, si aplica esta animación al Height de un objeto (por ejemplo, de 0 a 200 con una EasingMode de EaseIn), la animación intentará interpolar a través de números negativos para Height que producirá un error.

Hay otras funciones de aceleración además de BackEase. Además de usar las funciones de aceleración incluidas en tiempo de ejecución, puede crear sus propias funciones de aceleración personalizadas heredando de EasingFunctionBase.

Uso de elementos de objeto XAML

<BackEase .../>  

Constructores

BackEase()

Inicializa una nueva instancia de la clase BackEase.

Campos

AmplitudeProperty

Identifica la propiedad de dependencia Amplitude.

Propiedades

Amplitude

Obtiene o establece la amplitud de la retracción asociada a una animación de BackEase.

CanFreeze

Obtiene un valor que indica si el objeto se puede hacer no modificable.

(Heredado de Freezable)
DependencyObjectType

Obtiene el DependencyObjectType que encapsula el tipo CLR de esta instancia.

(Heredado de DependencyObject)
Dispatcher

Obtiene el Dispatcher al que está asociado este DispatcherObject.

(Heredado de DispatcherObject)
EasingMode

Obtiene o establece un valor que especifica cómo interpola la animación.

(Heredado de EasingFunctionBase)
IsFrozen

Obtiene un valor que indica si el objeto se puede modificar actualmente.

(Heredado de Freezable)
IsSealed

Obtiene un valor que indica si esta instancia está actualmente sellada (solo lectura).

(Heredado de DependencyObject)

Métodos

CheckAccess()

Determina si el subproceso que llama tiene acceso a este DispatcherObject.

(Heredado de DispatcherObject)
ClearValue(DependencyProperty)

Borra el valor local de una propiedad. El identificador de DependencyProperty especifica la propiedad que se va a borrar.

(Heredado de DependencyObject)
ClearValue(DependencyPropertyKey)

Borra el valor local de una propiedad de solo lectura. Un DependencyPropertyKeyespecifica la propiedad que se va a borrar.

(Heredado de DependencyObject)
Clone()

Crea un clon modificable de la Freezable, realizando copias profundas de los valores del objeto. Al copiar las propiedades de dependencia del objeto, este método copia expresiones (que podrían dejar de resolverse), pero no animaciones ni sus valores actuales.

(Heredado de Freezable)
CloneCore(Freezable)

Convierte la instancia en un clon (copia profunda) del Freezable especificado mediante valores de propiedad base (no animados).

(Heredado de Freezable)
CloneCurrentValue()

Crea un clon modificable (copia profunda) del Freezable mediante sus valores actuales.

(Heredado de Freezable)
CloneCurrentValueCore(Freezable)

Convierte la instancia en un clon modificable (copia profunda) del Freezable especificado mediante los valores de propiedad actuales.

(Heredado de Freezable)
CoerceValue(DependencyProperty)

Coerce el valor de la propiedad de dependencia especificada. Esto se logra invocando cualquier función de CoerceValueCallback especificada en metadatos de propiedad para la propiedad de dependencia tal como existe en la llamada a DependencyObject.

(Heredado de DependencyObject)
CreateInstance()

Inicializa una nueva instancia de la clase Freezable.

(Heredado de Freezable)
CreateInstanceCore()

Crea una nueva instancia de la clase derivada Freezable. Al crear una clase derivada, debe invalidar este método.

Ease(Double)

Transforma el tiempo normalizado para controlar el ritmo de una animación.

(Heredado de EasingFunctionBase)
EaseInCore(Double)

Proporciona la parte lógica de la función de aceleración que puede invalidar para generar el modo EaseIn de la función de aceleración personalizada.

Equals(Object)

Determina si un DependencyObject proporcionado es equivalente al DependencyObjectactual.

(Heredado de DependencyObject)
Freeze()

Hace que el objeto actual no se pueda modificar y establezca su propiedad IsFrozen en true.

(Heredado de Freezable)
FreezeCore(Boolean)

Hace que el objeto Freezable no se pueda modificar o compruebe si se puede hacer no modificable.

(Heredado de Freezable)
GetAsFrozen()

Crea una copia inmovilizada de la Freezable, utilizando valores de propiedad base (no animados). Dado que la copia está inmovilizada, los sub-objetos congelados se copian por referencia.

(Heredado de Freezable)
GetAsFrozenCore(Freezable)

Convierte la instancia en un clon inmovilizado del Freezable especificado mediante valores de propiedad base (no animados).

(Heredado de Freezable)
GetCurrentValueAsFrozen()

Crea una copia inmovilizada del Freezable mediante los valores de propiedad actuales. Dado que la copia está inmovilizada, los sub-objetos congelados se copian por referencia.

(Heredado de Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Convierte la instancia actual en un clon inmovilizado del Freezableespecificado. Si el objeto tiene propiedades de dependencia animadas, se copian sus valores animados actuales.

(Heredado de Freezable)
GetHashCode()

Obtiene un código hash para este DependencyObject.

(Heredado de DependencyObject)
GetLocalValueEnumerator()

Crea un enumerador especializado para determinar qué propiedades de dependencia tienen valores establecidos localmente en este DependencyObject.

(Heredado de DependencyObject)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetValue(DependencyProperty)

Devuelve el valor efectivo actual de una propiedad de dependencia en esta instancia de un DependencyObject.

(Heredado de DependencyObject)
InvalidateProperty(DependencyProperty)

Vuelve a evaluar el valor efectivo de la propiedad de dependencia especificada.

(Heredado de DependencyObject)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
OnChanged()

Se llama cuando se modifica el objeto Freezable actual.

(Heredado de Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Este miembro admite la infraestructura de Windows Presentation Foundation (WPF) y no está pensada para usarse directamente desde el código.

(Heredado de Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Garantiza que los punteros de contexto adecuados se establecen para un miembro de datos de DependencyObjectType que se acaba de establecer.

(Heredado de Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Invalida la implementación de DependencyObject de OnPropertyChanged(DependencyPropertyChangedEventArgs) para invocar también los controladores de Changed en respuesta a una propiedad de dependencia cambiante de tipo Freezable.

(Heredado de Freezable)
ReadLocalValue(DependencyProperty)

Devuelve el valor local de una propiedad de dependencia, si existe.

(Heredado de DependencyObject)
ReadPreamble()

Garantiza que se accede a la Freezable desde un subproceso válido. Los heredadores de Freezable deben llamar a este método al principio de cualquier API que lea miembros de datos que no sean propiedades de dependencia.

(Heredado de Freezable)
SetCurrentValue(DependencyProperty, Object)

Establece el valor de una propiedad de dependencia sin cambiar su origen de valor.

(Heredado de DependencyObject)
SetValue(DependencyProperty, Object)

Establece el valor local de una propiedad de dependencia, especificado por su identificador de propiedad de dependencia.

(Heredado de DependencyObject)
SetValue(DependencyPropertyKey, Object)

Establece el valor local de una propiedad de dependencia de solo lectura, especificada por el identificador DependencyPropertyKey de la propiedad de dependencia.

(Heredado de DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Devuelve un valor que indica si los procesos de serialización deben serializar el valor de la propiedad de dependencia proporcionada.

(Heredado de DependencyObject)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
VerifyAccess()

Exige que el subproceso de llamada tenga acceso a este DispatcherObject.

(Heredado de DispatcherObject)
WritePostscript()

Genera el evento Changed para el Freezable e invoca su método OnChanged(). Las clases que derivan de Freezable deben llamar a este método al final de cualquier API que modifique los miembros de clase que no se almacenan como propiedades de dependencia.

(Heredado de Freezable)
WritePreamble()

Comprueba que el Freezable no está inmovilizado y que se accede a él desde un contexto de subproceso válido. Freezable heredar deben llamar a este método al principio de cualquier API que escriba en miembros de datos que no sean propiedades de dependencia.

(Heredado de Freezable)

Eventos

Changed

Se produce cuando se modifica el Freezable o un objeto que contiene.

(Heredado de Freezable)

Se aplica a