C#WPF图像点对点动画
我需要以预设的比例水平平移图像(无缩放)。当从左向右平移时,我需要图像的左侧随着右前缘的出现而消失。这将使图像在摄影机平移场景时具有视频的外观。到目前为止我所做的:C#WPF图像点对点动画,c#,wpf,C#,Wpf,我需要以预设的比例水平平移图像(无缩放)。当从左向右平移时,我需要图像的左侧随着右前缘的出现而消失。这将使图像在摄影机平移场景时具有视频的外观。到目前为止我所做的: double origX = 0.0; double origY = 0.5; double newx; double newy; image1.RenderTransformOrgin = new Point(origX, origY); image1.RenderTransform = new ScaleTransform(
double origX = 0.0;
double origY = 0.5;
double newx;
double newy;
image1.RenderTransformOrgin = new Point(origX, origY);
image1.RenderTransform = new ScaleTransform(2.0, 2.0);
if (newX == 0.0)
{
image1.RenderTransformOrgin = new Point(origX, origY);
}
else
{
image1.RenderTransformOrgin = new Point(newX, newY);
}
使用此代码,我可以启动左侧的虚拟“摄影机镜头”,然后将其移动到图像的任何其他点。通过手动递增地增加newX的值,我能够创建所需的效果。我的问题是如何最好地增加newX值以生成平滑的动画外观?谢谢。您的意思是如何增加?在wpf中,我们有动画,您只需正确设置它。尝试
translateranform
的XProperty
(使用DoubleAnimation
和ElasticEasy
)。我曾尝试使用DoubleAnimation让translateransform和PointAnimation工作,但收效甚微。我的最佳尝试只产生了一小部分图像的平移。这很可能是由于我的技能水平和知识,而不是建议的方法。通过增加,我的意思是不断地将newX的值从0.00增加到0.01到0.02,直到达到0.99。阅读更多信息。您试图做的是手动动画(最糟糕的,很少不可避免)。应该有帮助(将ScaleTransform
替换为translateransform
)。