2010-04-19 89 views

回答

10

使用代码here为出发点。

+0

我想在iphone中实现不为java。 – 2010-04-19 07:28:18

+10

...然后开始翻译算法。这不是让其他人编写代码的网站,而是一个可以获得帮助和指导的网站。您应该将其标记为正确的答案。 – coneybeare 2010-04-19 12:47:13

5

当然,很容易做到。通过求解波动方程在两个方面入手:

http://en.wikipedia.org/wiki/Wave_equation

然后编写使用模拟波扭曲图像的程序。

更新:kvb指出,这可能是比必要更多的工作,现在我想多了一点,它可能是。与其解析波动方程,不如写一个简单的物理引擎,以其他方式模拟表面。例如,您可以将曲面表示为平面网格点,其中每个点都通过弹簧连接到其邻居。弹簧的物理特性很容易模拟;您只需制作一个与弹簧偏转成比例的恢复力即可。确保添加阻尼效果,以便系统最终稳定下来。移动飞机上方的一个点并伸展其弹簧应该通过网格发出涟漪。

+1

有些东西告诉我,“你所要做的只是...”或许是轻描淡写。例如,它并不完全解决整个显示动画部分......然而,这个答案是通过一个实际链接到相关代码的答案来投票的! – kvb 2010-04-19 16:42:02

+1

@kvb:那里,那是更好吗?海报提出了想法,我给了他们想法。 – 2010-04-19 18:52:09

+1

不要误解我的意思 - 我喜欢你的glib答案。不过,在这种情况下,我认为海报可能需要更多的工作,而不仅仅是一个带有偏微分方程的页面的链接,而“轻松完成”可能意味着实现的努力。 – kvb 2010-04-19 19:41:13