Как импортировать.stl в тетген?
Я пытаюсь заставить tetgen обеспечить тетраэдеризацию Делоне моей stl-модели, но всегда получаю некоторые ошибки о пересекающихся гранях.
Модель представляет собой ascii.stl модель человеческого сердца, полученную из данных компьютерной томографии (при необходимости может дать ссылку). Сначала я использую адаптивный рендеринг с 100 локальными значениями и 1,00 значениями допуска для построения его в программном обеспечении CTAn, а затем исправляю его с помощью MeshFix. MeshFix выводит либо.off, либо двоичные файлы.stl. Если я пытаюсь импортировать модель.off в tetgen, я всегда получаю эту ошибку:
Синтаксическая ошибка чтения заголовка в строке 2 в файле off.off.
Я не могу напрямую импортировать файл.stl в tetgen, поскольку он не поддерживает двоичный файл.stl, поэтому я использую MeshLab, чтобы сначала преобразовать в acsii.stl, а затем импортировать результат в tetgen. Но в этом случае у меня есть другая ошибка:
Найдены две почти самопересекающиеся грани
и он рекомендует мне уменьшить допуск двугранного угла. Я делаю это только для того, чтобы получить следующее сообщение:
Найдены две точно самопересекающиеся грани
и он рекомендует использовать префикс -d для обнаружения всех таких аспектов. Я делаю это и получаю следующее сообщение:
Лица не пересекаются
Теперь я в замешательстве, потому что это дает исключительные предложения.
Если у кого-нибудь здесь есть знакомые с тетгеном, подскажите, пожалуйста, как мне импортировать мою модель в тетген? Я попробовал несколько инструментов для ремонта и разные префиксы, но пока ничего не получалось.
Также будет очень здорово, если у кого-то есть связь с сообществом тетгенов, потому что я не нашел ни одного, хотя попробовал.
1 ответ
Я никогда не находил способ принести файл stl в Tetgen. Единственным способом, которым я смог перенести свою модель в TetGen, было преобразование ее в тип файла *.ply. Вы можете сделать это и в Meshlab, выбрав опцию "Export Mesh as". Как только вы примените изменения в Tetgen, вы можете преобразовать их обратно в stl-файл в Meshlab.
Использование фильтров очистки и восстановления в Meshlab также может оказаться полезным, если вы еще не использовали его. Я обнаружил, что фильтр "Удаление повторяющихся граней" помогает преодолеть ошибку пересекающихся граней.
Совет: откройте диалог Layers Dialogue в Meshlab и продублируйте слой сетки перед внесением изменений. В Meshlab нет кнопки "Отменить", поэтому, если вы внесете в нее изменения, о чем вы сожалеете, вы сможете, по крайней мере, быстро начать все заново.