我在 3D 空间中有数千个多边形,其中包含超过 3 个顶点。我想将每个多边形划分为一组三角形。我一直在整个互联网上寻找,但我找不到任何 3D 算法可以做到这一点。我发现许多算法都适用于 2D,例如 ear clipping
和 Delaunay triangulation
。但是我找不到任何 3D 算法。
我在这个网站上看到许多相同的问题,它们的回答是“使用 Delaunay 三角剖分算法”。但我看到这个算法是针对二维的: http://www.geom.uiuc.edu/~samuelp/del_project.html
Implement an algorithm for finding the constrained Delaunay triangulation of a given point set in two dimensions.
我可以使用哪种 3D 三角测量算法? 我在 C++ 中使用 OpenGL。
最佳答案
您可以使用 GLUTesselator:
http://www.glprogramming.com/red/chapter11.html
另请注意,3D 多边形将有许多面,这些面可以转换到轴对齐的 2D 平面上,进行三角剖分,然后将结果转换回由面定义的平面。
关于c++ - 三角剖分 3D 算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25036738/