Импорт сетки из файлов .txt без использования графического интерфейса

Я делаю проект, в котором использую meshlab с meshlabxml. Наш сканер создает файл .txt, который выглядит следующим образом:

27.031334;20.715153;134.196397;
27.031334;20.715153;134.050344;
26.746812;20.426882;134.038013;

Каждая линия представляет собой точку. В meshlab импорт сетки из файла .txt возможен и отлично работает. Я не знаю, как импортировать сетку с помощью meshlabxml. Я знаю, что целью meshlabxml является обработка файлов фильтров, но я не эксперт. Есть ли другая библиотека, которая может делать то же самое?


person Maks Grabowy    schedule 14.08.2019    source источник


Ответы (1)


Я никогда не использовал MeshLabXml, но, прочитав документацию, я думаю, что этот пример может вам помочь. Просто прочитайте текстовый файл, разделите ';' и дайте значения для meshlab, как это.

import meshlabxml as mlx

with open('your_txt_file.txt', 'r') as f:
    lines = f.readlines()

for line in lines:
    points = line.split(';')
    orange_cube = mlx.FilterScript(file_out='orange_cube.ply', ml_version='2016.12')
    mlx.create.cube(orange_cube, size=[3.0, 4.0, 5.0], center=True, color='orange')
    mlx.transform.rotate(orange_cube, axis='x', angle=45)
    mlx.transform.rotate(orange_cube, axis='y', angle=45)
    mlx.transform.translate(orange_cube, value=[points[0], points[1], points[2]])
    orange_cube.run_script()
person Kostas Charitidis    schedule 14.08.2019
comment
Meshlabxml создает скрипт фильтра для всего файла. Можно объявить file_in, но в моем случае это не работает, но спасибо за помощь - person Maks Grabowy; 14.08.2019