Создание 3D сетки в VTK

Я пытаюсь создать 3D-сетку с помощью VTK. VTK предоставляет несколько способов создания сетки, представляющей поверхность 3D-объекта. Заполнение объекта представляется более сложным. Причина, по которой я хочу это сделать, состоит в том, чтобы передать результат инструменту FEM в виде твердого тела, а не шара.

На данный момент я играю со сферами, и, кажется, есть несколько способов создать сетку для поверхности 3D-объекта. Чего я не могу сделать, так это создать сферу с точками внутри объема. Класс vtkUnstructuredGrid позволяет мне представлять такой объект, но я не могу связать его так же, как vtkPolyData.

Это принципиальное ограничение VTK или я просто не вижу нужного инструмента?


person Bowler    schedule 17.10.2012    source источник
comment
vtkPolyData поддерживает до 2D-объектов (полигонов), так что это то, что используется для представления поверхностной сетки. Вы правы, что vtkUnstructuredGrid поддерживает до 3D-объектов, вы действительно можете создать этот твердый объект (например, заполненный тетраэдрами), который вы ищете. Теперь, что вы имеете в виду, когда я не могу понять это?   -  person David Doria    schedule 14.11.2012
comment
@ Дэвид Дориа, с наилучшими пожеланиями. С уважением к вашей работе на ВТК. Сетка FEM имеет много ограничений, чтобы быть хорошей. Может ли VTK создавать сетки FEM? Я не верю, поэтому и дал свой ответ. Но хотелось бы ошибиться :)   -  person El Marce    schedule 13.11.2013
comment
@ElMarce Я не слишком хорошо знаком с FEM, но я считаю, что это просто означает, что сетка заполняет объем, а не просто поверхность. Это можно сделать в VTK, используя vtkUnstructuredGrid, а не vtkPolyData (см. vtk.org/Wiki/VTK /Tutorials/3DDataTypes). Вы можете заполнить vtkUnstructuredGrid vtkTetra (vtk.org/doc/nightly/html/ classvtkTetra.html) или другие объемные ячейки.   -  person David Doria    schedule 14.11.2013


Ответы (1)


Как вы сказали: Я хочу передать результат в инструмент FEM в виде твердого тела, а не шара

Я предполагаю, что у вас есть сетка FEM в вашем собственном формате, и вы хотите ее визуализировать. Для этого вы можете превратить свою сетку FEM в vtkUnstructuredGrid, модифицируя код, описанный здесь:

Как преобразовать сетку в формат VTK?

person El Marce    schedule 13.11.2013
comment
У меня есть itk::Image, как я могу преобразовать его тетраэдрическую сетку и создать vtkUnStructuredGrid? - person S.EB; 30.10.2019