【问题标题】:Periodic 3d triangulation - cell indexing周期性 3d 三角测量 - 单元索引
【发布时间】:2015-09-09 09:38:38
【问题描述】:

我正在使用 CGAL 对大型点集执行 3d delaunay 三角剖分。

我的目标是生成格式如下的输出文件:

ICell  Vertex1 Vertex2 Vertex3 Vertex4 NeigborCell1 NeighborCell2 ....

其中所有值都是对应于特定 Cell 和顶点的索引。

为了实现这一点,我包含了“地图”库,并在顶点句柄和单元句柄上使用它来将它们与索引绑定。
这种方法似乎非常适用于顶点,但对于单元格,它会输出三角剖分中生成的所有单元格(包括同一单元格的所有周期性图像)。
此外,由于 Cell 的图像获得不同的单元句柄,它们被分配了不同的索引(很多邻居也是图像)

有没有办法在每个 Cell 之间迭代一次?我怎样才能以一种方式对它们进行索引,使它们中的每一个都获得一个唯一的索引号?

提前感谢您的帮助。

【问题讨论】:

    标签: indexing cell cgal triangulation delaunay


    【解决方案1】:

    恐怕你无法以你想要的方式迭代,至少在当前版本的包中。 您只能使用具有适当 Iterator_type 的 Periodic_tetrahedron_iterator 在四面体(单元的几何嵌入)上执行此操作。 你可能可以破解 Periodic_tetrahedron_iterator 的代码来做你需要的......

    【讨论】:

    • 非常感谢您提供的信息。你能告诉我所有四面体的循环吗?我如何构造每个独特的单元格?有没有办法从四面体类中得到相邻的四面体?
    • 不,你不能从四面体中得到细胞,所以你也不能得到它的邻居。这就是为什么必须破解代码的原因。四面体上的“循环”在文件 include/CGAL/Periodic_3_triangulation_iterators_3.h 中的类 Periodic_3_triangulation_tetrahedron_iterator_3 中实现。破解它来迭代单元而不是四面体应该是可行的。
    猜你喜欢
    • 2011-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-31
    • 1970-01-01
    • 2014-03-18
    • 2019-11-14
    • 1970-01-01
    相关资源
    最近更新 更多