PyMCubes使用步骤——MarchingCubes算法

“PyMCubes”是marching cubes算法的一个实现,源码地址:https://github.com/pmneila/PyMCubes
在使用前需安装以下库

一、COLLADA

在README中可以找到COLLADA的地址:https://github.com/pycollada/pycollada
下载后在对应文件夹下执行
python setup.py install
就可以了

二、numpy和cython

numpy1.11.3和cython0.25.0,可以直接用pip安装
pip install numpy
pip install Cython
(如果安装numpy失败,可以在接下来mayavi下载的地址用同样的方法安装numpy)

三、mayavi

之后就是mayavi的安装,来实现3d可视化。进入网址:https://www.lfd.uci.edu/~gohlke/pythonlibs/
需要找到四个whl文件:PyQt4、traits、VTK 和mayavi

PyQt4‑4.11.4‑cp35‑cp35m‑win32.whl
traits‑5.2.0‑cp35‑cp35m‑win32.whl
VTK‑8.2.0‑cp35‑cp35m‑win32.whl
mayavi‑4.7.1+vtk82‑cp35‑cp35m‑win32.whl

文件的名字中:
cp35:python的版本,这个就是指3.5
win32:系统位数。如果64位的安装报错可以用32位的
其中mayavi‑4.7.1+vtk82‑cp35‑cp35m‑win32.whl的“vtk82”版本一点要与之前的“VTK‑8.2.0”对应

下载好四个文件后对应文件夹下执行4次:pip install (完整文件名)
例如:pip install PyQt4‑4.11.4‑cp35‑cp35m‑win32.whl
需要按照上面的顺序执行

安装完这些库后就可以在PyMCubes文件夹下执行
pip install --upgrade PyMCubes

python setup.py install

运行程序

example文件夹下有一个spheres.py可以直接使用。
供修改的部分:

X, Y, Z = np.mgrid[:100, :100, :100]
u = (X-50)**2 + (Y-50)**2 + (Z-50)**2 - 25**2

X, Y, Z是用numpy建立了一个100100100的空间;
u是生成了一个球体,将半径25处设为0的等值面。

可以用numpy和os要导入其他数据

import os
filename = os.path.join(os.getcwd(),"(文件名)")
Data = np.fromfile(filename)
u = Data.reshape(length, width, height)
发布了1 篇原创文章 · 获赞 0 · 访问量 59
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 1024 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览