TranslationAnimation Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece métodos que permitem recuperar os parâmetros para uma animação de tradução (mover para um novo local).
public ref class TranslationAnimation sealed : IPropertyAnimation
/// [Windows.Foundation.Metadata.ContractVersion(Windows.UI.Core.AnimationMetrics.AnimationMetricsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class TranslationAnimation final : IPropertyAnimation
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.UI.Core.AnimationMetrics.AnimationMetricsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class TranslationAnimation : IPropertyAnimation
Public NotInheritable Class TranslationAnimation
Implements IPropertyAnimation
- Herança
- Atributos
- Implementações
Requisitos do Windows
Família de dispositivos |
Windows Desktop Extension SDK (introduzida na 10.0.10240.0)
|
API contract |
Windows.UI.Core.AnimationMetrics.AnimationMetricsContract (introduzida na v1.0)
|
Exemplos
Para obter uma instância da classe TranslationAnimation, primeiro você obtém a coleção de animações na descrição da animação e, em seguida, orienta essa matriz de animações para encontrar qualquer que seja de conversão de tipo. Os exemplos a seguir mostram esse processo. Presume-se que o efeito e os parâmetros de destino foram atribuídos anteriormente.
using Windows.UI.Core.AnimationMetrics;
AnimationDescription animationDescription = new AnimationDescription(effect, target);
foreach (var animation in animationDescription.Animations)
{
switch (animation.Type)
{
case PropertyAnimationType.Scale:
{
ScaleAnimation scale = animation as ScaleAnimation;
// Retrieve scale animation metrics.
}
break;
case PropertyAnimationType.Translation:
{
TranslationAnimation scale = animation as TranslationAnimation;
// Retrieve translation animation metrics.
}
break;
case PropertyAnimationType.Opacity:
{
OpacityAnimation opacity = animation as OpacityAnimation;
// Retrieve opacity animation metrics.
}
break;
}
}
Comentários
Para executar uma animação de tradução, alterne a posição do item de seu local atual para seu local final (o local do objeto após a alteração no layout) de acordo com as informações de tempo fornecidas por meio dos métodos dessa interface.
Os controles de tempo Control1 e Control2 especificam o local do primeiro e do segundo pontos de controle de uma curva Bézier cúbica. Esses dois pontos têm o mesmo significado que na propriedade CSS transition-timing-function . O ponto de controle zero é sempre (0,0) e o ponto de controle três é sempre (1,1). As coordenadas de Control1 e Control2 estão sempre no intervalo de 0 a 1, inclusive.
Na curva Bézier resultante, a coordenada x representa o tempo e a coordenada y representa o progresso. A curva bruta de (0,0) para (1,1) é dimensionada para corresponder à duração real e ao intervalo da transição animada, de modo que x=0 é a hora inicial da transformação, x=1 é a hora final, y=0 é o valor inicial da propriedade animada e y=1 é o valor final. Os valores de x e y entre 0 e 1 representam valores intermediários correspondentes de tempo e a animação.
Propriedades
Control1 |
Obtém o local do primeiro ponto de controle para a curva Bézier cúbica que descreve como a tradução deve animar ao longo do tempo. |
Control2 |
Obtém o local do segundo ponto de controle para a curva de Bézier cúbica que descreve como a tradução deve animar ao longo do tempo. |
Delay |
Obtém a quantidade de tempo entre quando a animação de tradução é instruída a começar e quando essa animação realmente começa a desenhar. |
Duration |
Obtém a quantidade de tempo sobre a qual a animação de tradução deve ser executada. Isso não inclui o atraso. |
Type |
Obtém o tipo de animação representado por esse objeto. |