Partilhar via


PointAnimation Classe

Definição

Anima o valor de uma propriedade Point entre dois valores de destino usando interpolação linear em uma Duração 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 .../>
Herança
Object Platform::Object IInspectable DependencyObject Timeline PointAnimation
Atributos

Exemplos

O exemplo a seguir mostra como usar o PointAnimation para animar a propriedade Center de um 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();
}

Comentários

Use PointAnimation para animar o valor da propriedade de qualquer propriedade de dependência do tipo Point.

A interpolação linear de um Ponto significa que os valores X e Y são tratados como um número e a interpolação é simplesmente uma operação matemática.

Às vezes, você precisará usar o direcionamento de propriedade indireto para direcionar uma subpropósima de outro objeto que seja o valor de uma propriedade no destino. Por exemplo, para animar partes de um PathGeometry, você precisa referenciar alguns dos valores intermediários de propriedade de objeto, até que a última etapa no caminho da propriedade indireta seja realmente um valor Point . Para obter mais informações sobre direcionamento de propriedade indireto e outros conceitos de animação com storyboard, consulte Animações storyboarded ou Sintaxe property-path.

Um PointAnimation normalmente tem pelo menos uma das propriedades From, By ou To definidas, mas nunca todas as três.

  • Somente de: A animação progride do valor especificado pela propriedade From para o valor base da propriedade que está sendo animada.
  • De e para: A animação progride do valor especificado pela propriedade From para o valor especificado pela propriedade To .
  • De e por: A animação progride do valor especificado pela propriedade From para o valor especificado pela soma das propriedades From e By .
  • Somente para: A animação progride do valor base da propriedade animada ou do valor de saída de uma animação anterior para o valor especificado pela propriedade To .
  • Por apenas: A animação progride do valor base da propriedade que está sendo animada ou do valor de saída de uma animação anterior para a soma desse valor e o valor especificado pela propriedade By .

As propriedades From, By ou To de um PointAnimation não são um valor Point . Em vez disso, elas são anuláveis para Point. O valor padrão para eles é nulo, não uma estrutura não inicializada. Esse valor nulo é como o sistema de animação distingue que você não definiu especificamente um valor. As extensões de componente do Visual C++ (C++/CX) não têm um tipo Nullable e, em vez dele, usam IReference.

Construtores

PointAnimation()

Inicializa uma nova instância da classe PointAnimation .

Propriedades

AutoReverse

Obtém ou define um valor que indica se a linha do tempo é executada em ordem inversa após concluir uma iteração na ordem comum.

(Herdado de Timeline)
BeginTime

Obtém ou define a hora em que esta Linha do Tempo deve começar.

(Herdado de Timeline)
By

Obtém ou define a quantidade total pela qual a animação altera seu valor inicial.

ByProperty

Identifica a propriedade Por dependência.

Dispatcher

Sempre retorna null em um aplicativo SDK do Aplicativo Windows. Em vez disso, use DispatcherQueue .

(Herdado de DependencyObject)
DispatcherQueue

Obtém o ao DispatcherQueue qual esse objeto está associado. O DispatcherQueue representa uma instalação que pode acessar o DependencyObject no thread da interface do usuário mesmo que o código seja iniciado por um thread que não seja da interface do usuário.

(Herdado de DependencyObject)
Duration

Obtém ou define o período para o qual essa linha do tempo é reproduzida, sem contar repetições.

(Herdado de Timeline)
EasingFunction

Obtém ou define a função de easing que você está aplicando à animação.

EasingFunctionProperty

Identifica a propriedade de dependência EasingFunction .

EnableDependentAnimation

Obtém ou define um valor que declara se as propriedades animadas consideradas animações dependentes devem ter permissão para usar essa declaração de animação.

EnableDependentAnimationProperty

Identifica a propriedade de dependência EnableDependentAnimation .

FillBehavior

Obtém ou define um valor que especifica como a animação se comporta depois de atingir o final de seu período ativo.

(Herdado de Timeline)
From

Obtém ou define o valor inicial da animação.

FromProperty

Identifica a propriedade De dependência.

RepeatBehavior

Obtém ou define o comportamento de repetição desta linha do tempo.

(Herdado de Timeline)
SpeedRatio

Obtém ou define a taxa, em relação ao pai, em que o tempo progride para esta Linha do Tempo.

(Herdado de Timeline)
To

Obtém ou define o valor final da animação.

ToProperty

Identifica a propriedade De dependência.

Métodos

ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade de dependência.

(Herdado de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria nos casos em que uma animação não está ativa.

(Herdado de DependencyObject)
GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência de um DependencyObject.

(Herdado de DependencyObject)
ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, se um valor local for definido.

(Herdado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra uma função de notificação para escutar alterações em uma DependencyProperty específica nesta instância dependencyObject .

(Herdado de DependencyObject)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência em um DependencyObject.

(Herdado de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela uma notificação de alteração que foi registrada anteriormente chamando RegisterPropertyChangedCallback.

(Herdado de DependencyObject)

Eventos

Completed

Ocorre quando o objeto Storyboard é concluído.

(Herdado de Timeline)

Aplica-se a

Confira também