使用MeshPy进行Delaunay三角剖分

时间:2019-05-17 19:59:36

标签: python mesh delaunay

到目前为止,我一直在使用scipy.spatial.Delaunay()来执行点集的Delaunay三角剖分。但是,这经常导致创建瘦三角形,而我试图避免这种情况。有人告诉我hereMeshPy为Shewchuk的Triangle提供了一个包装器,从而可以构建高质量的可调整网格。

但是,在仅给定节点的情况下,我无法找到使用Meshpy创建Delaunay三角剖分的任何示例代码。 MeshPy网站提供了3d的基本示例:

from meshpy.tet import MeshInfo, build

mesh_info = MeshInfo()
mesh_info.set_points([
    (0,0,0), (2,0,0), (2,2,0), (0,2,0),
    (0,0,12), (2,0,12), (2,2,12), (0,2,12),
    ])
mesh_info.set_facets([
    [0,1,2,3],
    [4,5,6,7],
    [0,4,5,1],
    [1,5,6,2],
    [2,6,7,3],
    [3,7,4,0],
    ])
mesh = build(mesh_info)

但是,我不想手工提供刻面(或三角形)。

注意:Trianglehttp://www.cs.cmu.edu/~quake/triangle.delaunay.html)的网站显示了一些Delaunay三角剖分的快速代码。但是我将如何在MeshPy中做到这一点?

1 个答案:

答案 0 :(得分:0)

如果您对三角形网格的质量不满意,也许optimesh(属于我的项目)值得一看。使用

安装
pip install optimesh --user

并在命令行上使用它,如

optimesh in.vtk out.e

您也可以在Python中使用它。

enter image description here