我以前没有问题地运行以下内容。
grid=pv.UniformGrid()
grid.points=np.array([x_surf,y_surf,z_surf]).transpose()
[今天,我运行它并收到以下内容。我已经尝试过重新安装该软件包。
Traceback (most recent call last):
File "C:\Users\camramez\Documents\Meshing\gen_terrain.py", line 28, in <module>
grid.points=np.array([x_surf,y_surf,z_surf]).transpose()
File "C:\ProgramData\Anaconda3\envs\mesh\lib\site-packages\pyvista\core\grid.py", line 470, in points
self._from_specs((nx,ny,nz), (dx,dy,dz), (ox,oy,oz))
File "C:\ProgramData\Anaconda3\envs\mesh\lib\site-packages\pyvista\core\grid.py", line 435, in _from_specs
self.SetSpacing(xs, ys, zs)
TypeError: SetSpacing argument %Id: %V
SetSpacing函数本身可以正常工作。我已完成以下操作作为快速解决方案,该方法可以正常工作,但从技术上讲不能解决该错误。
try:
grid.points=np.array([x_surf,y_surf,z_surf]).transpose()
except:
1
似乎已经在GitHub上提出并回答了这个问题:https://github.com/pyvista/pyvista/issues/713
我将链接发布在此处以供参考,以防万一有人对SO产生疑问,并且来自另一个维护者/作者@banesullivan的最有用的回复:
所以,我对您的建议@lifehappenstoyou(伟大的用户名!)是切换到使用StructuredGrid类,除非您有充分的理由要使用UnifromGrid类(我唯一想到的就是体积渲染支持,其中我们有解决方法的情况)