DualSPHysics模擬流體及物體漂浮

DualSPHysics是一款開源的SPH代碼,算是國際上發(fā)展比較早的開源SPH代碼。功能也比較強大,計算得到的散點模型可以通過界面捕捉算法獲得真實的效果圖。下圖是將計算結(jié)果的每一幀輸出,并采用Blender進行了簡單的渲染的效果,通過Python將每一幀合稱為gif圖片。

float.gif

圖片合稱為gif的代碼如下:

# 將一個文件夾下的所有滿足條件的圖片文件制作成為gif格式文件
# lizhiyong4216@163.com
import imageio
import osimport numpy as np
def CreateGIF(filefolder, gifname):
	frames = []
	# 將每一張圖片文件后綴為.png的文件路徑加入到frames中
	for root, dirs, files in os.walk(filefolder):
		for file in files:
		    if os.path.splitext(file)[1] == '.png':
		    	frames.append(imageio.imread(os.path.join(root, file)))
        # frames轉(zhuǎn)換為imageio使用的numpy中的矩陣格式
        frames2 = np.asarray(frames)
        # 制作并保存為gif格式
        imageio.mimsave(gifname, frames2, 'GIF', duration = 0.1)	return
def main():
        filefolder = "C:\\tmp"
        gifname = filefolder + '\\float.gif'
        CreateGIF(filefolder, gifname)
if __name__ == "__main__":
	main()
登錄后免費查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項目客服
  • 培訓(xùn)客服
  • 平臺客服

TOP

5
2
2