我有一个3D网格,包括点,单元格和面。我希望使用一个完善的库CGAL,而不是扩展我的代码的功能。我仍然会有自己的代码,而CGAL只管理几何部分。
最接近我案例的包似乎是线性细胞复合物。在以下代码中(完整示例为here),我不喜欢定义LCC_3
以创建两个四面体的必要性。在我的例子中,我想将四面体与每个网格单元相关联。所以每次我都不想创建LCC_3
。是否有比LCC更简单的包来处理这种情况?我可以使四面体独立于包装吗?
LCC_3 lcc;
// Create two tetrahedra.
Dart_handle d1 = lcc.make_tetrahedron(Point(-1, 0, 0), Point(0, 2, 0),
Point(1, 0, 0), Point(1, 1, 2));
Dart_handle d2 = lcc.make_tetrahedron(Point(0, 2, -1), Point(-1, 0, 1),
Point(1, 0, -1), Point(1, 1, -3));
答案 0 :(得分:1)
我不确定我完全理解你的问题。如果您只需要一个几何对象(没有连接),您只需使用CGAL :: Tetrahedron_3,请参阅http://doc.cgal.org/latest/Kernel_23/classCGAL_1_1Tetrahedron__3.html