WPF动画路径速度和暂停

本文关键字:暂停 速度 路径 动画 WPF | 更新日期: 2023-09-27 18:03:31

我是WPF动画的新手,我正在尝试将我以前使用GDI+和c++编写的程序重新编码为WPF和c#。该程序使用动画路径沿着这些路径移动特定的图像。我需要在路径上的某些点上停止附加图像,比如5秒钟,而所有其他路径仍在动画中,或者改变附加图像的速度,以便图像在某些点上减速/加速。作为WPF的新手,我有几个选择,但不确定是否都有可能:

  1. 在单独的故事板中执行每个路径,然后使用SB的暂停/恢复功能并使用速比?(问题是我不知道我是否可以在同一画布上显示多个故事板?)

  2. 以某种方式使用关键帧来设置动画将停止或改变速度的确切点(不知道您是否可以使用关键帧或有另一个合适的动画类)

我欢迎大家就如何最好地实现这一目标发表意见,或者使用上述方法,或者使用你自己建议的完全不同的方法。

的问候斯图尔特

WPF动画路径速度和暂停

(这里没有足够的声誉来评论,所以我必须"回答")

  1. 同时使用多个故事板应该没有问题,因为WPF还支持针对相同属性值的多个动画,多个动画只是在相同的画布上运行作为容器应该工作得很好。

  2. 要"暂停"一个关键帧动画,在不同类型的相同位置/值设置两个关键帧。例如,一个属性从0到5到5到10,中间有几秒钟的间隔。动画中还有"easing",可以根据不同的功能进行加速/减速。

你能提供一个物体应该如何移动的基本例子吗?比如:它们是否每次都在相同的时间点停止,或者它们是否依赖于外部影响,比如鼠标点击?