2010-07-05 100 views
2

好吧,所以我使用Expression Blend 4并学习了SL,并且我完全不知所措。我正在制作一个简单的项目,让飞机持有模式动画。我想在屏幕上显示的东西在一个特定的顺序:如何在Silverlight中绘制动画线?

  1. 绘制保持点(站)
  2. 绘制飞机的位置
  3. 动画箭头开始在飞机的位置和去车站。
  4. 绘制一个弧形箭头(以动画方式)。

样机:

alt text

我知道够不够用故事板做我的动画,但我不能找到一种方法来简单地画我的线/箭头的步骤3和4。我可以像故事板中的动画一样移动形状(因为这是所有学习资源都会告诉你如何去做的),但我无法弄清楚如何绘制线条/箭头。一旦我经过了这个基本步骤,我需要弄清楚如何以编程方式进行编程,以便根据输入参数将飞机的位置放置在相对于车站的位置。

任何资源或想法来帮助我开始使用它?

+0

“动画时尚”是真的没有足够的信息。淡入可以被认为是“动画”,但我相信那不是你的意思。例如,你是否正在寻找箭头从一个开始位置移动到一个结束位置,沿着它的矢量旋转,并在它后面逐渐绘制一个弧线?详细说明所需的动画。 – AnthonyWJones 2010-07-05 08:13:30

+0

安东尼 - 是的,对不起,我不确定如何表达。我正在寻找箭头以逐步从起始位置移动到直线和弧线。 (我真的很喜欢他们成为一个单独的线路,然后到达电台,然后在这一点上我很灵活。) – theog 2010-07-05 17:17:28

回答

2

有一个PointAnimation类可以用来设置箭头的端点,但它只能线性动画,而不是像半圆的路径。为此你需要PointAnimationUsingPath。

不幸的是Silverlight有没有PointAnimationUsingPath,我才发现这个项目,它模拟它:Animation Along a Path for Silverlight

+0

感谢Ozan;我将检查PointAnimation类。对你有好处。 – theog 2010-07-07 16:38:41

1

@AnthonyWJones,你很清楚什么他通过“动画方式”想。然后,再次,我是一个设计师的心,所以也许这对我来说很自然。

快速简单的方法是以编程方式进行。只需取一行的终点并更新x,y坐标。现在,您可以直接更新坐标(在这种情况下,您需要一个可以确保您拥有的游戏循环),或者您可以在终点的最终目标坐标处设置坐标一次,然后启动内插的故事板动画这一切都是为了你。请注意,这仅适用于一条直线。对于曲线,您需要使用一堆线段(或路径),并在您在游戏循环中进行时添加坐标。半圆形路径很简单(使用公式为一个圆圈!)。

现在,困难的方式是从设计师那里做到这一切。到目前为止,我还没有找到任何有用的对象(如PointAnimationUsingPath)。如果发现/知道我会真正想知道如何。

+0

感谢您的意见,Alvin。给你一个赞... – theog 2010-07-07 16:38:12