vtkRenderWindow的ipywidget

ipyvtk-simple的Python项目详细描述


ipyvtk_简单

BinderPyPI

vtkRenderWindow

这是创建到VTK的Jupyter接口的早期原型。这个工具箱 是一个概念的证明和一个更抛光的工具将作为 ^{}将来。在

这里的代码是根据Andras Lasso完成的工作实现的 在麻省理工学院的许可证下(见the source)。在

目标是使这个小部件能够与任何服务器端一起工作 ^{} 此呈现窗口可以来自VTK PythonParaView,或{a9}。在

请注意,vtk不是此软件包的一个要求 简化它在虚拟环境中的安装,在虚拟环境中可以构建VTK 源或与ParaView捆绑在一起,我们不想从 皮皮。在

运行Docker

在Docker中构建和运行:

docker build -t ipyvtk_simple .
docker run -p 8878:8878 ipyvtk_simple jupyter lab --port=8878 --no-browser --ip=0.0.0.0 --allow-root

打开pyvista.ipynb笔记本。在

此外,这可以与ParaView一起使用。中给出了一个示例 paraview.ipynb可以通过以下方式运行:

^{pr2}$

打开paraview.ipynb笔记本。在

示例

您可能需要构建jupyter实验室扩展才能在实验室中工作 在笔记本电脑上工作出色。在

PyVista

PyVista正在努力在a pull request中实现这一点。 {cd4}概念的证明。在

demo-1

demo-2

Python VTK

这里的小部件可以与VTK一起使用。下面是一个最小的例子,展示了 要将任何vtkRenderWindow传递给ViewInteractiveWidget,请执行以下操作:

importvtkfromipyvtk_simple.viewerimportViewInteractiveWidget# Create some datacylinder=vtk.vtkCylinderSource()cylinder.SetResolution(8)mapper=vtk.vtkPolyDataMapper()mapper.SetInputConnection(cylinder.GetOutputPort())actor=vtk.vtkActor()actor.SetMapper(mapper)# Set up render windowren=vtk.vtkRenderer()ren_win=vtk.vtkRenderWindow()ren_win.SetOffScreenRendering(1)ren_win.SetSize(600,600)ren_win.AddRenderer(ren)iren=vtk.vtkRenderWindowInteractor()iren.SetRenderWindow(ren_win)style=vtk.vtkInteractorStyleTrackballCamera()iren.SetInteractorStyle(style)# Add actor to sceneren.AddActor(actor)ren.ResetCamera()# DisplayViewInteractiveWidget(ren_win)

demo-3

ParaView Python

请参阅上面关于在Docker容器中运行ParaView的说明。在

importparaview.simpleaspvsfromipyvtk_simple.viewerimportViewInteractiveWidget# Create data on the pipelinewavelet=pvs.Wavelet()contour=pvs.Contour(Input=wavelet)contour.ContourBy=['POINTS','RTData']contour.Isosurfaces=[63,143,170,197,276]# Set the data as visiblepvs.Show(contour)# Fetch the view and render the sceneview=pvs.GetActiveView()pvs.Render(view)# Fetch the RenderWindowren_win=view.GetClientSideObject().GetRenderWindow()# Display the RenderWindow with the widgetViewInteractiveWidget(ren_win)

demo-4

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
通过GWT JSNI传递Java对象时发生javascript错误   java Spring启动项目wildfly服务器失败   java如何进行会话来存储Id?   javajpa/hibernate如何通过带注释的外键映射元素集合   Java将字节[]转换为双[],反之亦然   eclipse显示Java双值   java如何正确读取socket数据包   是否存在用于集合处理的Java库?   javacom。太阳jna。无法将指针强制转换为com。太阳jna。站台win32。温迪夫。LPARAM   java Eclipse插件开发。我可以在插件中使用已经存在的jar文件吗?   分析Java错误:找不到符号变量   java如何使按钮摆动以进行大的处理   如何通过传递bucket name和file name从java中的minio服务器下载多个文件   JavaScrollPane JavaFX使其滚动更多?   java无法加载C:\Users\username\AppData\Local\Android\Sdk\buildtools\28.0.3\lib\dx。罐子   JavaSwing中是否有一个“组框”等价物?   java使用slf4j和log4j与单独使用log4j相比,是否存在性能开销?   java模式和匹配:格式化文本文件   JTable行增长的java问题