【问题标题】:Reconstruct surface from 3D triangular meshes从 3D 三角形网格重建表面
【发布时间】:2013-10-22 04:14:48
【问题描述】:

我有一个 3D 模型,它由 3D 三角形网格组成。我想将网格划分为不同的组。每组代表一个表面,例如平面、圆柱表面。这类似于表面识别/重建。

输入是一组 3D 三角形网格。输出是每个表面的网格分割。

有没有符合我要求的库?

【问题讨论】:

    标签: mesh 3d-reconstruction


    【解决方案1】:

    如果你想进行大量的网格处理,那么点云库是个好主意,但我也建议 CGAL:http://www.cgal.org 以获取更多针对网格的算法和结构负载。

    最后,你描述的问题最容易自己解决:

    1. 枚举所有顶点
    2. 枚举所有多边形
    3. 创建一个整数数组,其大小与“大”网格中的顶点数相同,初始化为 0。
    4. 创建一个整数数组,其大小与“大”网格中的多边形数量相同,初始化为 0。
    5. 将计数器初始化为 0
    6. 对于网格中的每个多边形,查看它的顶点以及每个顶点在数组中的值。 如果每个顶点的值为零,则增加计数器并相应地分配给顶点数组和多边形数组中的每个值。 如果不是,则将所有具有较大数字的顶点和多边形重新标记为最小的非零数字。

    使用查找表可以快速完成重新标记。 这可能会为您节省很多将代码连接到您并不真正感兴趣的库的问题。

    【讨论】:

      【解决方案2】:

      您应该看看 PCL 库,它具有所有这些功能以及更多功能:http://pointclouds.org/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-12-15
        • 1970-01-01
        • 1970-01-01
        • 2013-02-25
        • 2015-07-09
        • 1970-01-01
        • 2020-12-15
        • 1970-01-01
        相关资源
        最近更新 更多