问题标签 [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 回答
381 浏览

python - 如何在 python pyvista 中读取 dem 文件

我在这里有 .dem 文件:http: //ddfe.curtin.edu.au/models/ERTM2160/data/dem/

在 python pyvista 我有例如:

输出说:

除了减号之外,它是 mesh.n_points 的平方根

尝试使用 mesh.points 绘制或提取点时,我收到一条消息,即不允许使用负尺寸。尝试以下方法:

导致错误消息:

溢出错误:SetDimensions 参数 1:值超出 int 范围

有人可以告诉我我做错了什么,我不知道吗?或者可能知道如何读取这些文件以制作曲面图?

非常感谢 :)

0 投票
1 回答
125 浏览

vtk - 尝试将阴影投射到网格平面上的 PyVista 错误

PyVista 很棒,让我非常方便地做很多很酷的事情。我想将 3D 对象的阴影投射到带有网格线的平面上。这就是我想要的,减去阴影shadows=False,,gridlines=True

在此处输入图像描述

我可以在没有网格线的情况下启用阴影:gridlines=Falseshadows=True

在此处输入图像描述

但是当我尝试两者都做时gridlines=Trueshadows=True我得到了一个巨大的错误跟踪,如下所示,结果就像上面一样,有阴影但没有网格线。

问题:我想要做的是什么?我是否误解了网格和阴影,是否编码错误,或者这是一个错误。我更大的程序,有更多的图形实体会出现段错误。我在 MacOS 10.15.7 上运行 PyVista 0.29.0、Python 3.8.5。如果我尝试将阴影投射到StructuredGrid.

下面是我的最小代码示例

错误跟踪:

0 投票
1 回答
309 浏览

python - 如何挤出不规则的多边形?

我在平面中有一组 2D 顶点坐标(假设 xy 平面),我想在 z 方向上挤压它以形成一个PolyData可以变换和渲染的对象。

理想的函数将采用 nx2 ndarray 顶点和高度并返回 a PolyData

一个备用解决方案是在 VTK 中执行此操作并将结果包装为 PyVista 对象。

0 投票
0 回答
84 浏览

3d - 我应该如何使用 pyvista/或其他模块制作随机 3d 对象?

我正在尝试使用 pyvista 制作随机的 3d blob 对象。首先,我编写了如下代码,

这段代码向我展示了重叠随机椭球的绘制结果。但由于生成的 p 是 pv.Plotter,而不是 pv.Polydata,所以我无法保存/平滑/编辑结果。而且我还找不到在 pv.Polydata 中生成自定义可编辑 3d 对象的方法。我应该使用哪个功能,或者还有其他方法可以实现我的目标,例如使用 trimesh?

0 投票
1 回答
107 浏览

python - 使用 pyvista 和 pyproj 重新投影 vtu 文件的网格点

有没有机会我可以用 ndarray 替换pyvista_ndarray坐标

我的目标是重新投影 vtu 文件(非结构化网格)的点坐标。网格对象的当前坐标位于坐标参考系统 EPSG 27672 中,我希望它们位于 EPSG 4326 (WGS84) 中。为此,我使用pyvista模块打开 vtu 文件:

结果,mesh.points给出了 3 个空间坐标。然后,我使用pyproj模块将 3 个坐标重新投影到 EPSG 4326 中。通过组合生成的 3 个 x,y,z numpy.ndarray,我现在得到一个形状和大小类似于mesh.points的 NumPy 数组。


现在,是时候替换 vtu 对象的坐标了:

最后,我检查了修改后的网格X 边界Y 边界已被修改并且范围是正确的。但是,该图显示的是一行点,而不是一个漂亮的 3d 对象。:(。

你知道有什么问题吗?您是否看到另一种管理重投影的方法?

0 投票
1 回答
269 浏览

python - 在 pyvista 中保存屏幕截图,包括交互/旋转

我正在寻找一种在交互过程中有效捕获帧缓冲区的方法,pyvista以便之后我可以制作模型在屏幕上移动的视频。

我遇到的问题是,当我单击屏幕与查看器/绘图仪交互时,在按下鼠标按钮并且模型移动到下一个位置时没有写入任何帧。这会导致视频中出现“生涩”的动作。

有没有办法绕过这种行为来有效地执行诸如绘图仪窗口的屏幕截图之类的操作,即使在被操纵时也是如此?也许通过直接访问帧缓冲区或类似的东西?

在此处输入图像描述

0 投票
1 回答
92 浏览

plot - 使用 pyvista 小部件在 spyder 中进行交互式绘图

我需要有关使用 pyvista(小部件??)在 spyder 中进行交互式绘图的帮助。我检查了 pyvista 站点中的示例文件。当我运行示例代码时,我得到的只是静态图。我在 Thomas 博士那里找到了一个类似的帖子,但我需要一个完整的代码来生成一个有效的交互式绘图。

0 投票
1 回答
275 浏览

python - PyVista:AttributeError:“绘图仪”对象没有属性“ren_win”

我正在使用 PyVista 文档的示例代码:

不幸的是,我收到以下错误:

我不知道为什么会发生错误,也找不到有关此问题的任何信息。

pv.Report 的输出是:

0 投票
1 回答
196 浏览

python - 将 getfem++ 导入 conda 环境?- 树莓派 4 - Ubuntu 21.04

在我的项目中,我使用的是安装了 Ubuntu 21.04 的 Raspberry PI 4 (aarch64)。

我正在使用 :

- Pycharm作为我的 Python IDE

- Miniforge3拥有conda 环境

我想安装库getfem++pyvista来运行这个例子: https ://getfem-examples.readthedocs.io/en/latest/demo_unit_disk.html

1) GETFEM++

我已经使用命令安装了 getfem++ sudo aptitude install python3-getfem++--> 它可以工作

2)Pyvista

-With pip install pyvista: 错误,似乎与我未能安装的 vtk 有依赖关系。

- 使用conda环境(来自 miniforge3):pyvista 可以毫无困难地安装。

在这一点上,我问自己是否可以使用 conda 环境并将路径添加到 Pycharm 中的 getfem++ 库?

我在其中创建了一个.pth文件/home/alban/miniforge3/envs/Conda_PY39/lib/python3.9/site-packages

有了这个,我似乎检测到“getfem”和“pyvista”,但我收到了这个错误:

我真的不知道还有什么可以尝试的建议?

0 投票
1 回答
183 浏览

python - 如何在pyvista中填充两个网格作为填充单元格/网格之间的距离?

所以我查看了这个示例,我想创建一个填充该距离的网格/表面网格。如何在 PyVista 中做这样的事情?

我尝试但似乎无法与 Andras Deak 美丽的答案桥接:

遗憾的是,这与 grid_2d 失败了

ValueError:无法将大小为 1942464 的数组重塑为形状 (30150,26750,3)