none
canvas中Ellipse自移动 RRS feed

  • 问题

  • 我想在Canvas中绘制一个圆球,能自己移动并判断边界,然后碰撞反弹的动画,不知道如何获取坐标,或者是用动画Animation实现?
    2012年9月11日 10:11

答案

  • 我觉得没有必要判断边界吧, 你可以对Ellipse的Canvas.Left属性应用DoubleAnimation,从左到右移动的动画就可以, 比如你的Canvas 宽度是100, 你的Ellipse 宽度是10, 那么你就让 Canvas.Left属性从0- 95之间不停的循环动画就可以。

    不过可能做边界的值要考究一下有可能要用2个storyboard


    Sheldon _Xiao[MSFT]
    MSDN Community Support | Feedback to us
    Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 PercyOMG 2012年9月12日 1:51
    2012年9月11日 10:22

全部回复

  • 我觉得没有必要判断边界吧, 你可以对Ellipse的Canvas.Left属性应用DoubleAnimation,从左到右移动的动画就可以, 比如你的Canvas 宽度是100, 你的Ellipse 宽度是10, 那么你就让 Canvas.Left属性从0- 95之间不停的循环动画就可以。

    不过可能做边界的值要考究一下有可能要用2个storyboard


    Sheldon _Xiao[MSFT]
    MSDN Community Support | Feedback to us
    Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 PercyOMG 2012年9月12日 1:51
    2012年9月11日 10:22
  • 我觉得没有必要判断边界吧, 你可以对Ellipse的Canvas.Left属性应用DoubleAnimation,从左到右移动的动画就可以, 比如你的Canvas 宽度是100, 你的Ellipse 宽度是10, 那么你就让 Canvas.Left属性从0- 95之间不停的循环动画就可以。

    不过可能做边界的值要考究一下有可能要用2个storyboard


    Sheldon _Xiao[MSFT]
    MSDN Community Support | Feedback to us
    Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    嗯,明白了,感谢~~
    2012年9月12日 1:52