【ti example 投稿】可与鼠标交互2D欧拉流体模拟

这是一个使用太极语言编程的2D欧拉流体求解器,该项目:

  • 水面能够与鼠标进行交互
  • 添加旋度运算,更好的流体表现 :)
  • 支持切换流体的背景图片(图片位于img目录下方)
  • 代码简短清晰(200 lines),方便阅读

项目仓库
Cover

部分实现参考Taichi_HW1_EulerianFluid by @JerryYan97,借用了双buffer的写法和双线性插值函数。

6 个赞

很棒的投稿~~ :grinning:

Taichi examples 里面有一个 taichi_logo.py,你可以试试用那个生成太极图不?这样就不用那个资源图像了。

感谢告知,我稍后尝试一下 :grin:

试过了,确实可以用代码进行生成 :grinning:,已经更新仓库了

我看了下你的代码,质量还是很不错的,不过目录 scr 应该是个 typo?

代码中,util.py 里面定义的 vec2, vec3 这些,建议使用 taichi 自带的 ti.math.vec2, ti.math.vec3,不需要重新自定义。

改好以后,你可以直接去 taichi 仓库中开一个 PR 提交你的作品~

如果提 pr 的话仓库在这里~ taichi/python/taichi/examples/simulation at master · taichi-dev/taichi · GitHub

1 个赞

收到,感谢指导 :grinning:

已提交PR, 把两个文件整合到一起了,然后把支持图片做背景的那个功能给删除了(估计用不上了 :joy:
[example] Add 2D euler fluid simulation example

你其实可以直接 import 那个 taichi_logo 函数,而不必把它照抄一遍?taichi repo 里面不少例子都是这么做的:

另外你也可以在文件头部写上一些注释,比如作者信息,算法的解释,参考链接等等。

1 个赞

好的好的,请问一下重新提交的话是要重新开一个PR吗?

不需要,你直接在你的 repo 里改就行,pr 会跟着更新

1 个赞

已经修改好并通过自动测试了

1 个赞

好耶~ 月报素材+1! :grinning: