如何在XAML中为WinRT中的bezier路径设置动画

时间:2013-09-23 12:40:31

标签: c# animation windows-runtime winrt-xaml

我是WinRT和XAML的新手,对动画的经验更少。在研究了这个主题之后,我注意到,当遍历动画时,我可以在故事板目标对象上更改一些单独的属性。我真正需要改变每一帧的整个贝塞尔路径点集,以产生具有随机振幅和控制点的全新正弦波。每个幅度的高度将是随机的,以接近给定时间点的声波,并且动画是随时间变化的声音模式。我见过的所有例子都是动画,它们沿着bezier路径改变一个属性,并遍历每个帧的路径。我需要动画更改每帧的所有贝塞尔点。我可以在这里使用故事板,还是只需要在某种计时器上绘制画布?

1 个答案:

答案 0 :(得分:0)

在XAML中没有简单的方法可以做到这一点,对于你的问题,像Direct2D这样的立即模式渲染技术似乎是更好的选择。我认为XAML中的Path控件没有实时波形渲染所需的性能特性。

因为您似乎想要使用Storyboard来设置它的动画 - 看起来您可能正在考虑预定的动画,在这种情况下,您可以简单地使用此类动画的视频录制。

否则 - 您可以使用CompositionTarget.Rendering事件使用代码隐藏更新每个帧中的路径。