У меня проблемы с определением, где находится фильтр Close Holes из Meshlab

Так что я знаю, что Meshlab построен поверх библиотеки VCG с открытым исходным кодом, найденной здесь, поэтому я решил, что смогу найти, какая часть кода задействована в фильтре Close Holes, но у меня возникли некоторые проблемы.

Если это возможно, может кто-нибудь указать мне, какой алгоритм используется или где искать в источнике VCG (или источнике Meshlab), чтобы найти код для фильтра?

Я хотел включить это во что-то, что я делаю, не вызывая сценарий meshlabserver + filter.

1 ответ

Откройте фильтр "закрывать дыры" в 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:,

Grep снова для FP_CLOSE_HOLES, Найти звонок EarCuttingFill,

Grep EarCuttingFill, Не найти определений для этого. Google вместо этого, и найти его ссылку VCG.

Еще несколько кликов дают исходный код.

Изменить: эти URL с 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

Другие вопросы по тегам