【发布时间】:2020-11-23 19:00:20
【问题描述】:
我正在尝试将 pygalmesh 用于我的一个项目。基本上,我需要创建一个立方体,然后以管状形式减去它的一部分。我有几件事不能上班。首先,我需要创建一个立方体,pygalmesh 中使用的函数是 Cuboid,如下所示:
pygalmesh.Cuboid([0, 0, 0], [1, 1, 1])
我尝试了这行代码,因为我在 pygalmesh 的创建者在这篇文章中的回答中找到了它:Volume of 3d shape using numerical integration with scipy
但即使使用那条线,我也会收到错误消息: RuntimeError:CGAL 错误:断言违规! 解释:错误:尺寸字段在角处为空(0 0 0)
我进入 github repo 试图找出这些函数是如何工作的,但我只能找到这样的文件:
from _pygalmesh import Cuboid
仅此而已。那么我如何使用 pygalmesh 创建一个立方体?如果可能的话,我想知道如何使用所有类型的 pygalmesh,目前我只能在 github 上复制示例中的那些。
此外,在上面的同一篇文章 (Volume of 3d shape using numerical integration with scipy) 中,在使用 pygalmesh 的答案中,代码在第 10 行附近使用了关于单元大小的行 (cell_size=3.0e-2)。但每次我尝试添加这个参数到我的功能网格,我得到错误: TypeError: generate_mesh() got an unexpected keyword argument 'cell_size'
但我用的是和他一样的功能?
是否有更新删除了我缺少的一些功能,我目前使用的是最新版本的 pygalmesh。这是一个显示单元大小错误的简单代码。如果我将 Ball 更改为 Cuboid,则会收到 Cuboid 错误。
import numpy
import pygalmesh
mesh = pygalmesh.generate_mesh(
pygalmesh.Ball([0.0, 0.0, 0.0], 25.0), cell_size=3.0e-2
)
print(mesh)
mesh.write("out2.vtk")
【问题讨论】: