所以我知道 Meshlab 是建立在发现的开源 VCG 库之上 here所以我想我能够找到 Close Holes 过滤器中涉及的代码部分,但我遇到了一些麻烦。
如果可能的话,谁能告诉我正在使用什么算法或在 VCG 源(或 Meshlab 源)中搜索的位置以找到过滤器的代码?
我想将它合并到我正在做的事情中,而不必调用 meshlabserver + 过滤器脚本。
最佳答案
打开 meshlab 的“关闭孔”过滤器。单击帮助。请注意一个不寻常的短语“关闭一个洞”。下载源代码分发版,当前为 MeshLabSrc_AllInc_v133.tgz。
cd meshlab/src
find . -type f -print0 |xargs -0 grep "closing a hole"
注意一次命中:./meshlabplugins/filter_meshing/meshfilter.cpp:
... “关闭孔后,已创建的面保持选中状态。
...
编辑 meshfilter.cpp,找到该行的正上方,case FP_CLOSE_HOLES:
。
再次 Grep FP_CLOSE_HOLES
。找到对 EarCuttingFill
的调用。
Grep EarCuttingFill
。找不到它的定义。而是谷歌,找到它的 VCG reference .
再点击几次会生成 source code .
编辑:那些 2014 年的网址已经失效。 2018年试试http://docs.ros.org/diamondback/api/vcglib/html/classvcg_1_1tri_1_1Hole.html和 http://docs.ros.org/diamondback/api/vcglib/html/hole_8h_source.html#l00584
关于algorithm - 我无法确定 Meshlab 的 Close Holes 过滤器的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18019090/