使用CGAL的两个多面体的相交体积



我正在寻找一种快速的方法来计算两个多面体相交的近似体积。我的程序运行20k次迭代,其中每次迭代我都需要计算两个多面体的差体积,每个多面体有大约100个顶点(其中一个多面体是静止的,另一个在每次迭代中改变其姿态(。我要求这个程序在一秒钟内终止。

我已经尝试过使用Nef_p多面体_3,但它需要一个精确的内核,因此需要大量的时间。接下来,我尝试使用Polygon_mesh_production::corefine_and_compute_difference,但我找不到将Polyhedron_3转换为Surface_mesh的方法(如果不使用Nef_p多面体(。

如果有人能帮我解决这个问题,我将不胜感激。提前谢谢!

您可以尝试使用多边形网格处理包中的这个更快的函数,然后使用该函数来获得相交的体积。

如果仍然太慢,则可以使用蒙特卡洛来获得体积的估计,使用在静态多面体内采样的点。此类将有助于了解点是在有界体积内部还是外部。

对于转换,您可以使用函数copy_face_graph()

相关内容

  • 没有找到相关文章

最新更新