问题标签 [pyvista]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
305 浏览

python - 如何测试 PyVista 是否成功绘制了图形?

我在 PyVista 中生成 3D 网格,我想更新我的集成测试套件以确保它成功显示我的绘图。

我希望调整这里描述的方法,以使用 PyVista。不幸的是,我在 PyVista 中找不到任何与 plt.gcf() 等效的函数的任何结果。

有谁知道解决方法?

0 投票
1 回答
598 浏览

python - 用 pyvista 绘制几个网格

我有几个网格,我使用 pyvista 读取每个网格

我想将它们绘制在具有不同颜色的同一个图上:

我可以为每个网格添加标签吗?或添加图例?

0 投票
1 回答
396 浏览

python - Pyvista 访问 VTK 文件值

我有一个 VTK 文件,我可以使用pyvista. 当我在任何 3D 查看器应用程序(例如 Paraview)中打开此文件时,我可以看到点及其值(在 X、Y、Z 中分布有许多点,每个点都有自己的值)。

pyvista我只能看到点坐标并且不知道如何访问每个坐标处的值(或标签)。

0 投票
1 回答
443 浏览

python-3.x - 在 PyVista 中向 PolyData 添加新点/将 XYZ 处理为 TIN 的最佳方式

是否可以在不创建新 PolyData 的情况下将新点 (X, Y, Z) 添加到 PolyData 点数组?我想让新的三角曲面(TIN)非常快,但是从 NumPy 数组创建一个新的 PolyData 大约需要 1 秒。同时,例如函数 extrude(创建新节点)大约需要 0.002 秒(从技术上讲,我想添加 1 个具有已知坐标的新节点)。

更新 PolyData 后,我使用“delaunay_2d”函数(也需要大约 0.002 秒)并绘制结果(TIN 表面)。

或者也许有人知道其他方式来更新和处理 XYZ 数据到 TIN 并在 Python 3 中以每秒 10 次左右的速度对其进行可视化?PyVista 似乎非常非常酷,但我无法做出如此微不足道的事情:(

0 投票
1 回答
374 浏览

python - stl 文件的 numpy-stl 拓扑信息读取

使用 Python numpy-stl 包:读取 .stl 文件我们可以从三角形网格、顶点数据、法线、区域等中获取几何信息,但是我们可以访问拓扑信息、连接信息吗?我是 Python 和一切的新手……但是曾经有人问过这个问题,但没有得到任何回应。

我需要阅读三角形 stl 网格并使用 Pyvista 绘制一些元素,例如示例中的元素!

-> 这个我可以

-> 这我不能。

是否需要定义数据结构来生成连接信息?

感谢您的阅读!

0 投票
1 回答
350 浏览

python - 如何在 Python 上使网格(obj 文件)成为实体?

我一直在使用 Python 上的 pyvista 来过滤我手臂的扫描,最后获得一个 obj 对象。但是每次我尝试在 SolidWorks 上打开最终结果时,它只是一个网格,但尽管 Python 显示它是一个实体(我什至在 pyvista 上拉伸扫描)。

在这里你可以看到它。

在此处输入图像描述

有谁知道我怎样才能使这个网格成为实体以便我可以打印它?

这是供下载的obj文件

编辑:无挤压扫描

0 投票
1 回答
359 浏览

python - PyVista,如何保存整个渲染结果

使用 PyVista 时,我们可以使用mesh.save()pyvista.save_meshio()来保存网格,但不能保存整个渲染结果。以下面的代码为例,如何保存渲染结果,而不是只保存一个网格?

0 投票
1 回答
319 浏览

python - 在 3d numpy 数组中查找 k 个最近的邻居

所以我试图从示例网格中找到 pyvista numpy 数组中的 k 个最近邻居。收到邻居后,我想在我的 3d 模型中实现一些区域的增长。

但不幸的是,我收到了一些奇怪的输出,您可以在下图中看到。好像我在KDTree实现上遗漏了一些东西。我正在关注类似问题的答案:https ://stackoverflow.com/a/2486341/9812286

具有两个不同颜色的细长斑块的表面的 3d 图

0 投票
1 回答
129 浏览

python - 检查体积 (.ply) 是否包含 3D 点

我正在寻找一种解决方案来定义给定的 3D 点是否包含在体积中(由多边形 .ply 文件定义)。

我使用PyVista从点云定义我的体积。

但我不明白如何操纵 PLY 体积,有顶点和面。

我想得到这样的东西:

volume.contains(point)这将返回 true 或 false

我的第一个想法是为该点创建一个球体以将其与体积相减/相交,但我不确定。

你有什么想法 ?

提前致谢 !

0 投票
0 回答
524 浏览

python - 使用 pyvista 和 spyder 进行交互式绘图

我已经在 Spyder 的 ipython 控制台中安装了 pyvista 及其依赖conda install -c conda-forge pyvista项,经过一番折腾后它似乎可以工作(我发现必须从控制台手动安装 JsonCpp 才能访问 VTK)。

我已经开始学习一些教程(见下文),但交互式绘图存在问题。当我尝试使用 渲染点云对象point_cloud.plot(eye_dome_lighting=True)时,它会在控制台中创建场景的位图(使用教程判断的默认相机视图)而不是新窗口中的交互式绘图(控制台绘图)。这是我在使用 Matplotlib / PIL 进行绘图时在 Spyder 中的默认行为。有人有解决方法吗?我热衷于使用 Spyder 作为我的 IDE,因为它具有类似 Matlab 的功能(我的主要语言)。如果 Spyder-pyvista 是一个死胡同,也许有人可以建议一个与 Spyder 具有相似功能的更兼容的 IDE。

https://docs.pyvista.org/examples/00-load/create-point-cloud.html#sphx-glr-examples-00-load-create-point-cloud-py

谢谢!