最近开始学习用python进行科学计算三维可视化,这个算是一个起步的小东西,贴出代码来mark一下这两天的学习成果!
重难点在于安装各种库,呼呼,配置环境真的是一项大工程Orz。
安装流程:
1、示例系统环境:
Windows10 64位 + Python3.6,在库文件所在目录里依次安装:
VTK-7.1.1-cp36-cp36m-win_amd64.whl
numpy-1.12.1+mkl-cp36-cp36m-win_amd64.whl
traits-4.6.0-cp36-cp36m-win_amd64.whl
mayavi-4.5.0+vtk71-cp36-cp36m-win_amd64.whl
PyQt4-4.11.4-cp36-cp36m-win_amd64.whl
相关库下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/
2、示例系统环境:
MacOS 10.12.4 + Anaconda2(Spyder),在终端依次运行:
conda install vtk
conda install numpy
conda install traits
conda install mayavi
conda install PyQt
程序代码如下:
Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 17:54:52) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.>>> from tvtk.tools import tvtk_doc
>>> tvtk_doc.main()
>>> from tvtk.api import tvtk
>>> s = tvtk.CubeSource(x_length=1.0, y_length=2.0, z_length=3.0)
>>> print(s)
vtkCubeSource (047A7BF0)
Debug: Off
Modified Time: 1903614
Reference Count: 2
Registered Events:
Registered Observers:
vtkObserver (077A1C80)
Event: 33
EventName: ModifiedEvent
Command: 0602BD38
Priority: 0
Tag: 1
Executive: 0479D990
ErrorCode: No error
Information: 0779AA38
AbortExecute: Off
Progress: 0
Progress Text: (None)
X Length: 1
Y Length: 2
Z Length: 3
Center: (0, 0, 0)
Output Points Precision: 0
>>> m = tvtk.PolyDataMapper(input_connection=s.output_port)
>>> a = tvtk.Actor(mapper=m)
>>> r = tvtk.Renderer(background=(0,0,0))
>>> r.add_actor(a)
>>> w = tvtk.RenderWindow(size=(300,300))
>>> w.add_renderer(r)
>>> i = tvtk.RenderWindowInteractor(render_window=w)
>>> i.initialize()
>>> i.start()