问候,大家。
我正在尝试学习一些Silverlight基础知识,并且已经决定为此编写一个简单的Mandelbrot设置绘图应用程序。当然,在Silverlight中。 ;)
应用程序大部分都已完成。我正在使用WriteableBitmap处理像素,并在空表单上放置一个简单的Image来显示此位图(使用Source属性)。我甚至设法变焦并在分散控制下移动分形。
现在我想通过添加一点点动画来增加一些东西;我知道我无法进行分形移动,因为它是一个标量图形对象,但是例如,当我放大时,如果初始缩放是一个平滑的动画会很好,之后应用程序将重新计算新的,“放大而锋利的刀像“形象。同样,如果我拖动图像(用于移动分形)并且鼠标离开图像区域,如果分形平滑地返回到它的初始位置(现在,它只是“快照”回来)会很棒恢复初始设置。)
我的问题是我不知道动画中要控制哪个参数。我正在使用ScaleTransform进行缩放,但这用于在位图本身上渲染WriteableBitmap,而不是使用图像对象的变换属性。我这样做是因为当我开始操作图像属性时,整个图像开始在表单周围移动,而我宁愿它的边界保持不变。
我怀疑我可能会尝试做一些Silverlight本来不打算做的事情(或我已经开始做这整件事了),但如果我可以添加这么小的动画,那将是伟大的。因此,任何提示赞赏。
答案 0 :(得分:0)
听起来您希望使用Silverlight动画引擎来动画您自己的自定义属性,这些属性控制图像显示,而不是图像元素或容器。
如果用于控制图像外观的属性显示为双Dependancy Properties,则动画系统可以使用基本 DoubleAnimation 对象随时间平滑地更改设置。您甚至可以在Expression Blend中创作动画。
动画引擎肯定会为你提供缓动功能等,以平滑运动。如果我有更详细的关于你的对象的结构,我可能会更具体,但我希望这会有所帮助。