所以我知道Meshlab建立在一个开源的VCG库here之上,所以我想我能够找到关闭孔过滤器中涉及哪部分代码但是我有一些麻烦。
如果可能,任何人都可以指出我正在使用什么算法或在VCG源(或Meshlab源)中搜索的位置来查找过滤器的代码?
我希望将其合并到我正在做的事情中而不必调用meshlabserver + filter脚本。
答案 0 :(得分:2)
打开meshlab"关闭洞"过滤。单击帮助。注意一个不寻常的短语"关闭一个洞。"下载源代码分发,目前是MeshLabSrc_AllInc_v133.tgz。
cd meshlab/src
find . -type f -print0 |xargs -0 grep "closing a hole"
注意一击:./meshlabplugins/filter_meshing/meshfilter.cpp:
... "After closing a hole the faces that have been created are left selected.
...
编辑meshfilter.cpp,然后在该行case FP_CLOSE_HOLES:
上方找到。
再次为FP_CLOSE_HOLES
Grep。找到对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