2014-09-10 33 views
3

我有一些python中的3D(x,y,z,value)數據,並且我可以直觀地看到Mayavi中的等值面。我怎樣才能將這個等值面導出到一個我可以讀入Blender的文件中?在Python中,如何將3D等值面導出到Blender中

下面是一些示例代碼:

import numpy 
from mayavi import mlab 

x, y, z = numpy.ogrid[-5:5:64j, -5:5:64j, -5:5:64j] 
values = x * x * 0.5 + y * y + z * z * 2.0 
mlab.contour3d(values, contours=[.5]) 
mlab.show() 
+0

答案,這很可能與解答http://stackoverflow.com/questions/23122004/how-to-write-stl-file-within-python-mayavi幫助太 – timday 2014-09-10 20:43:33

回答

6

使用@ timday的建議下,我加入了下面的代碼保存在等值面的波前(.OBJ)格式:

mlab.savefig( 'surface.obj')

然後,我可以打開它在攪拌器與文件>>導入>>波前(.obj)

我不得不大幅縮小圖像(〜100x)使其在Blender視口中可見。

enter image description here

原點設置路要走實際物體的一側,這樣的目標是比較容易處理,如果我使用對象>>變換>>產地幾何體

enter image description here

添加一些燈光和飛機後,該物體看起來不錯!

enter image description here

相關問題