Mayavi tvtk

日期2017-02-26 (最后修改), 2006-02-20 (创建)

||\<#80FF80> 此页面不是主要文档来源。您可以参考 Mayavi2 主页 获取有关 TVTK 的最新文档。特别是,请记住,如果您正在寻找高级 Python 3D 绘图库,Mayavi 也提供了正确的 API,并且可以嵌入(请参阅 用户指南)。 ||

什么是 tvtk?

tvtk 是一个 traits <http://www.enthought.com/traits> 启用的 VTK <http://www.vtk.org> 版本,用于 3D 图形和可视化。

它提供了与 VTK 对象的完全匹配,但具有 Python 风格,不像 Mayavi <http://code.enthought.com/projects/mayavi>_ 旨在提供新的 API

最重要的功能是

  • 包装了所有 VTK 类。
  • 支持 traits。
  • 基本 pickle 支持。
  • Python 风格。
  • 透明地处理 numpy/Numeric/numarray 数组/Python 列表。
  • 支持管道浏览器 ivtk
  • 高级 mlab 模块。
  • 设想为 tvtk 场景和管道浏览器创建插件。
  • MayaVi2 基于 tvtk 构建。

有关更多详细信息,请参阅 enthought TVTK 页面 <http://www.enthought.com/enthought/wiki/TVTK>,特别是 tvtk 简介 <http://www.enthought.com/enthought/wiki/TVTKIntroduction>

tvtk 示例

圆锥


The following example displays a cone which can be rotated/scaled/... with the mouse.
[Simple_tvtk_cone.py](../_static/items/attachments/MayaVi_tvtk/Simple_tvtk_cone.py)

quadrics
````

一个更有趣的例子是生成隐式函数的一些等值面。

Vis_quad.py

这将在屏幕上显示以下场景,并将其保存到文件中。

ivtk

模块 tools.ivtk 使 VTK/TVTK 更易于从 Python 解释器中使用。例如,使用以下命令启动 IPython:

ipython -wthread

(如果您同时安装了 wxPython 2.4 和 wxPython 2.6,则需要使用最新的 IPython 并执行 ipython -wthread -wxversion 2.6)。

然后,您可以粘贴以下几行

In [ ]
from enthought.tvtk.tools import ivtk
  from enthought.tvtk.api import tvtk
  # Create a cone:
  cs = tvtk.ConeSource(resolution=100)
  mapper = tvtk.PolyDataMapper(input=cs.output)
  actor = tvtk.Actor(mapper=mapper)

  # Now create the viewer:
  v = ivtk.IVTKWithCrustAndBrowser(size=(600,600))
  v.open()
  v.scene.add_actors(actor)  # or v.scene.add_actor(a)

然后,您可以探索可视化管道并修改任何设置。

)

创建查看器有不同的选项

  • v = ivtk.viewer() - 此选项不需要 v.open()size=(600,600)
  • v = ivtk.IVTK()
  • v = ivtk.IVTKWithCrust()
  • v = ivtk.IVTKWithBrowser()
  • v = ivtk.IVTKWithCrustAndBrowser)

对于带有 Crust 的查看器,您可以使用 Python 命令行窗口修改管道。

章节作者:ArndBaecker、Unknown[128]、GaelVaroquaux、Unknown[6]、Pauli Virtanen

附件