我正在尝试动画图像移动到某个点,然后转向并回到起点,我在这个网站上搜索了答案,但我似乎无法理解RenderTransform是如何工作的。
对于有兴趣帮助我的人来说,这是我目前的代码:
public static void MoveTo(this Image target, double newX, double newY,int s)
{
Vector offset = VisualTreeHelper.GetOffset(target);
DoubleAnimation animay = new DoubleAnimation(0, newY - offset.Y, TimeSpan.FromSeconds(s));
DoubleAnimation animax = new DoubleAnimation(0, newX - offset.X, TimeSpan.FromSeconds(s));
TransformGroup transformGroup = new TransformGroup();
TranslateTransform translatetransform = new TranslateTransform();
ScaleTransform scaletransform = new ScaleTransform();
transformGroup.Children.Add(translatetransform);
transformGroup.Children.Add(scaletransform);
target.RenderTransform = transformGroup;
target.RenderTransform.BeginAnimation(TranslateTransform.YProperty, animay);
target.RenderTransform.BeginAnimation(TranslateTransform.XProperty, animax);
}
编辑: 为了清楚起见,我应该补充一点,我知道如何动画对象来单独移动和翻转,但不能使它们与变换组连续工作。