Compartir a través de


PointAnimation Clase

Definición

Anima el valor de una propiedad Point entre dos valores de destino mediante la interpolación lineal en una duración especificada.

public ref class PointAnimation sealed : Timeline
/// [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 PointAnimation final : Timeline
[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 PointAnimation : Timeline
Public NotInheritable Class PointAnimation
Inherits Timeline
<PointAnimation .../>
Herencia
Object Platform::Object IInspectable DependencyObject Timeline PointAnimation
Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo usar PointAnimation para animar la propiedad Center de un EllipseGeometry.

// Start the animation when the object loads
void SampleApp::Page::Start_Animation(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
    myStoryboard->Begin();
}
<Canvas Width="450" Height="350">
    <Canvas.Resources>
        <Storyboard x:Name="myStoryboard">

            <!-- Animate the center point of the ellipse from 100 X, 300 Y
             to 400 X, 100 Y over 5 seconds. -->
            <PointAnimation
             Storyboard.TargetProperty="Center"
             Storyboard.TargetName="MyAnimatedEllipseGeometry"
             Duration="0:0:5" 
             From="100,300"
             To="400,100"
             RepeatBehavior="Forever" EnableDependentAnimation="True"/>

        </Storyboard>
    </Canvas.Resources>
    <Path Fill="Blue" Loaded="Start_Animation">
        <Path.Data>

            <!-- Describes an ellipse. -->
            <EllipseGeometry x:Name="MyAnimatedEllipseGeometry"
             Center="200,100" RadiusX="15" RadiusY="15" />
        </Path.Data>
    </Path>
</Canvas>
// Start the animation when the object loads
private void Start_Animation(object sender, RoutedEventArgs e)
{
    myStoryboard.Begin();
}

Comentarios

Use PointAnimation para animar el valor de propiedad de cualquier propiedad de dependencia que sea de tipo Point.

La interpolación lineal de un punto significa que los valores X e Y se tratan como un número y la interpolación es simplemente una operación matemática.

A veces, tendrás que usar la propiedad indirecta dirigida a para establecer como destino una subpropulación de otro objeto que sea el valor de una propiedad en el destino. Por ejemplo, para animar partes de pathGeometry, debe hacer referencia a algunos de los valores intermedios de propiedad de objeto, hasta que el último paso de la ruta de acceso de propiedad indirecta sea realmente un valor point . Para obtener más información sobre el destino indirecto de propiedades y otros conceptos de animación con guion gráfico, consulta Animaciones con guion gráfico o sintaxis de ruta de acceso de propiedades.

Una PointAnimation normalmente tiene al menos una de las propiedades From, By o To establecidas, pero nunca las tres.

  • Solo desde: La animación progresa del valor especificado por la propiedad From al valor base de la propiedad que se está animando.
  • De y a: La animación progresa del valor especificado por la propiedad From al valor especificado por la propiedad To .
  • De y por: La animación avanza del valor especificado por la propiedad From al valor especificado por la suma de las propiedades From y By .
  • Para solo: La animación avanza desde el valor base de la propiedad animada o el valor de salida de una animación anterior al valor especificado por la propiedad To .
  • Solo por: La animación avanza desde el valor base de la propiedad que se está animando o el valor de salida de una animación anterior hasta la suma de ese valor y el valor especificado por la propiedad By .

Las propiedades From, By o To de un PointAnimation no son un valor Point . En su lugar, son nullables para Point. El valor predeterminado para estos valores es NULL, no una estructura sin inicializar. Ese valor NULL es la forma en que el sistema de animación distingue que no se ha establecido específicamente un valor. Las extensiones del componente Visual C++ (C++/CX) no tienen un tipo NULL, por lo que usan IReference en su lugar.

Constructores

PointAnimation()

Inicializa una nueva instancia de la clase PointAnimation .

Propiedades

AutoReverse

Obtiene o establece un valor que indica si la escala de tiempo se reproduce en orden inverso después de completar una iteración de avance.

(Heredado de Timeline)
BeginTime

Obtiene o establece la hora en la que debe comenzar esta escala de tiempo .

(Heredado de Timeline)
By

Obtiene o establece la cantidad total por la que la animación cambia su valor inicial.

ByProperty

Identifica la propiedad de dependencia By .

Dispatcher

Siempre devuelve null en una aplicación de SDK de Aplicaciones para Windows. En su lugar, use DispatcherQueue .

(Heredado de DependencyObject)
DispatcherQueue

Obtiene el objeto DispatcherQueue al que está asociado este objeto. DispatcherQueue representa una instalación que puede tener acceso a DependencyObject en el subproceso de interfaz de usuario incluso si un subproceso que no es de interfaz de usuario inicia el código.

(Heredado de DependencyObject)
Duration

Obtiene o establece la duración para la que se reproduce esta escala de tiempo, sin contar las repeticiones.

(Heredado de Timeline)
EasingFunction

Obtiene o establece la función de aceleración que se aplica a la animación.

EasingFunctionProperty

Identifica la propiedad de dependencia EasingFunction .

EnableDependentAnimation

Obtiene o establece un valor que declara si se deben permitir las propiedades animadas que se consideran animaciones dependientes para usar esta declaración de animación.

EnableDependentAnimationProperty

Identifica la propiedad de dependencia EnableDependentAnimation .

FillBehavior

Obtiene o establece un valor que especifica cómo se comporta la animación después de que llegue al final de su período activo.

(Heredado de Timeline)
From

Obtiene o establece el valor inicial de la animación.

FromProperty

Identifica la propiedad de dependencia From .

RepeatBehavior

Obtiene o establece el comportamiento de repetición de esta escala de tiempo.

(Heredado de Timeline)
SpeedRatio

Obtiene o establece la velocidad, en relación con su elemento primario, en el que avanza el tiempo para esta escala de tiempo.

(Heredado de Timeline)
To

Obtiene o establece el valor final de la animación.

ToProperty

Identifica la propiedad de dependencia To .

Métodos

ClearValue(DependencyProperty)

Borra el valor local de una propiedad de dependencia.

(Heredado de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Devuelve cualquier valor base establecido para una propiedad de dependencia, que se aplicaría en los casos en los que una animación no está activa.

(Heredado de DependencyObject)
GetValue(DependencyProperty)

Devuelve el valor efectivo actual de una propiedad de dependencia de dependencyObject.

(Heredado de DependencyObject)
ReadLocalValue(DependencyProperty)

Devuelve el valor local de una propiedad de dependencia, si se establece un valor local.

(Heredado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una función de notificación para escuchar los cambios en una dependencyProperty específica en esta instancia de DependencyObject .

(Heredado de DependencyObject)
SetValue(DependencyProperty, Object)

Establece el valor local de una propiedad de dependencia en dependencyObject.

(Heredado de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela una notificación de cambio registrada anteriormente mediante una llamada a RegisterPropertyChangedCallback.

(Heredado de DependencyObject)

Eventos

Completed

Se produce cuando se ha completado la reproducción del objeto Storyboard .

(Heredado de Timeline)

Se aplica a

Consulte también