用VTK实现3D对象科学可视化的Python类

2020-06-14 15:42:19

一个轻量级的纯Python模块,用于基于VTK和Numpy的3D对象和点云的科学分析和可视化。

受vpython“普通人3D编程宣言”的启发,Vedo使得使用三维对象、创建显示和动画只需几行代码,即使对于那些编程经验较少的人也是如此。在Vpython宣言的启发下,Vedo使处理三维对象、创建显示和动画变得容易,即使对于那些编程经验较少的人也是如此。

Windows-10用户可以将该文件vedo.bat放在桌面上拖放文件进行可视化(需要编辑本地python安装路径)。

📌需要帮助吗?有任何问题,或者想要建议或询问缺少的功能吗?请不要犹豫,打开问题或发送电子邮件。

Vedo模块包括一大组适用于各种功能的工作示例:

-从VTK格式、STL格式、Wavefront OBJ格式、3DS格式、Dolfin-XML格式、中性格式、GMSH格式、OFF格式、PCD(PointCloud)格式导入网格;-将网格作为ASCII或二进制格式导出到VTK、STL、OBJ、PLY.。格式。-分析工具,如移动最小二乘法、网格变形等。-可视化和编辑网格的工具(用另一个网格剪切网格、切片、规格化、移动顶点位置等)。-基于曲面连通性分割网格。提取最大的连通区域。-计算面积、体积、质心、平均大小等。-计算顶点和面法线、曲率、特征边。填充网孔。-细分网格面,增加顶点数量。网格简化。-基于相关的标量或矢量数据对网格进行着色和阈值处理。-点-表面操作:查找最近的点,确定一个点是位于网格内部还是外部。-创建基本形状:球体、箭头、立方体、圆环、椭球体…-生成字形(将网格与源网格的每个顶点相关联)。-只需设置3D场景中显示对象的位置,即可轻松创建动画。支持向移动对象添加拖尾线和阴影。-在同一窗口中直接支持多个同步或独立的渲染器。-使用不同技术注册(对齐)网格。-网格平滑。-2D和3D中的Delaunay三角剖分。-通过连接空间中邻近的线来生成网格。-查找从一点到另一个点的最近路径,沿网格的边缘行进。-查找网格与线的交点,平面或其他网格。-使用径向基函数和薄板样条插值标量和矢量场。-添加滑块和按钮以与场景和单个对象交互。-张量的可视化。-点云分析:-移动最小二乘平滑2D、3D和4D云-拟合空间中的线、平面、球体和椭圆-标识点分布中的异常值-将云减少到均匀分布。

-从VTK格式的体积TIFF堆栈、DICOM、SLC、MHD等导入数据-以PNG、JPEG、BMP格式导入2D图像-体积的等值面处理-复合和最大投影体积渲染-从输入曲面网格生成体积有符号距离数据-使用直线和平面探测体积-从矢量场生成流线和流管-切片和裁剪体积-支持其他体积结构(结构化和网格数据)。

-完全可自定义的轴样式-圆环图和饼图-二维和三维散点图-表面函数绘制-一维可自定义直方图-二维六边形直方图-极坐标图、球形图和柱状图-在渲染窗口中绘制乳胶格式的公式。-抖动图-流线图-类似于matplotlib的点标记

使用K3D将3D渲染嵌入到Jupyter笔记本中(可以在此处导出交互式3D快照页面)。

要可视化多个文件或文件时间序列,请尝试-n或-s选项。使用-h查看完整的选项列表。

应用移动最小二乘算法从空间中的散乱点云获得平滑曲面(脚本)。

用10行代码(脚本)创建一个简单的3D动画。轨迹和阴影可以很容易地添加到移动的对象。

用四阶龙格-库塔方法积分薛定谔方程的量子隧穿效应。动画显示了长方体中的粒子撞上正弦势垒的演化过程。(剧本)。

支持FENICS/Dolfin平台以可视化PDE和有限元解决方案(请参见此处)。

M.Musy,G.Dalmasso,J.Sharpe和N.Sime,&34;Vedo:Plot in FENICS with Python&34;,(Link).发帖于2019年会议,卡内基科学研究所地磁系,华盛顿特区,2019年6月。

G.Dalmasso,";三维体图像在空间和时间上的演变";在基于图像的形态发生建模和仿真会议上的演讲。马克斯·普朗克复杂系统物理研究所,德国德累斯顿,2019年3月。

X.Diego等人:图灵系统的主要功能完全由网络拓扑确定,物理评论X,2018年6月20日。

M.Musy,K.Flaherty等:";一种基于肢体形态测量的小鼠肢体胚胎分期的定量方法";“发育”,2018年4月5日,doi:10.1242/dev.154856。

G.Dalmasso等人,3D体积图像在空间和时间上的演变,正在准备中。

书名/作者The Healthology of the the BrainRender,and the the BrainRender.。一款基于蟒蛇的神经解剖学和形态学数据可视化软件。BioRxiv2020.02.23.961748;doi:https://doi.org/10.1101/2020.02.23.961748。

你觉得这个软件对你的研究有用吗?请引用它作为:M.Musy等人";vedo,一个用于基于Vtk(可视化工具包)的3D对象和点云的科学可视化和分析的Python模块,泽诺多,2019年2月10日,doi:10.5281/zenod.2561402。